Changelog
What shipped, day by day. The workstreams tab gives the higher-level read on where the product is moving.
June 18, 2026
Report quality & evidence fidelity Research quality now has a daily canary: lightweight extraction coverage and persona-fidelity checks can watch for regressions and only raise an issue when measured quality drops. This turns report faithfulness from a manual eval habit into an operating signal, and run answers now use a prove-or-remove audit so hard specifics need same-granularity retrieved evidence behind them before they can remain in customer-visible answers.
Pipeline reliability & speed Recoverable source-only run failures now trigger an immediate self-heal path instead of waiting for a periodic audit, with signed failed-run completion events reaching the repair loop reliably. The repair loop keeps regression testing, deploy locking, customer run recovery, and public verification tied together so failed runs can move back toward completion with less operator delay.
Payments & metered billing Run chat now builds its semantic retrieval index as part of the run and accounts for that embedding work in the run's metered cost. Customers get better follow-up answers without hidden, unpriced compute sitting outside the billing trail.
Agent interop & the contract Standing topic briefs now treat watched accounts as source candidates, not automatic signal: individual X posts are checked for topical relevance, source cards prefer items the narrative cited, and each scan saves useful items into a retrievable topic memory for stronger future briefs and topic answers. Daily briefs also respect the calendar-day boundary, and topic status now reflects the running watch state from creation while bootstrap outcomes are recorded as events instead of backend lifecycle states.
Site, brand & public pages Terms acceptance now stays out of the way entirely: anonymous visitors can read public pages without a compliance bar, and signed-in use records acceptance silently. Product surfaces stay focused on the work while the standing Terms and Privacy links remain available. The topics feed's table/cards switch also moved into the table header as quiet icons, so the list leads with content instead of a control. The homepage's example runs were refreshed to current work — a long video distilled to a read, an equity deep-dive, and a consumer thesis — and moved directly beneath the agent setup cartridge, so the proof sits right under the call to action.
Research entities & personas Signed-out visitors can now sign in to chat with a persona right from the chat view — a clear sign-in button replaces the old dead-end notice, so it works on mobile too, and your first question is kept so you can send it the moment you're in.
Autonomous factory & operations The autonomous factory now has a richer public operations dashboard, with workflow cards, recent activity, and dedicated detail pages for each maintenance loop that make review, repair, simplification, and changelog work easier to inspect. Its header and workflow pages are cleaner, denser, and more scannable, with a canonical brand link home, a direct path back to researcher.now, and correctly rendered running-status dots and plain status pills so customers can understand factory health and maintenance loops without wading through implementation detail.
Improved
- Update changelog narrative for analyst evidence granularity [skip-changelog]
- Update factory changelog narrative [skip-changelog]
- Update changelog narrative for answer grounding [skip-changelog]
- Update factory changelog narrative [skip-changelog]
- Update changelog for topic retrieval memory [skip-changelog]
- Update changelog for realtime failed-run self-heal [skip-changelog]
- Update changelog for self-heal webhook [skip-changelog]
- Update changelog for realtime self-heal [skip-changelog]
Fixed
- fix: strip Anthropic-unsupported JSON-schema keywords from persona-fidelity judges
Changed
- entity: add David Holz avatar from his X profile image
- docs: cross-model review live (codex + claude in sandbox)
- linear_ship: note the cross-model claude path uses sandbox ANTHROPIC_API_KEY
- changelog: regenerate page against merged windows [skip-changelog]
- changelog: note homepage showcase refresh in site-design workstream [skip-changelog]
- home: refresh showcase runs and move below skill cartridge
- docs(AGENTS): index the fabrication-guard ADR + warn off the measured dead ends
- factory: linear-ship v1 — Linear ticket -> review-ready PR (claude + codex)
- docs: opus-auditor evaluated — WORSE than gpt-5.5 (disposition > capability)
- guard-ab: --audit-model override to A/B a stronger auditor
- docs: generation-time figure guard evaluated — no-op on numeric-dense residual
- factory: wire the committed iain-review rubric into the review gates
- run-analyst: generation-time figure-grounding guard (RUN_ANALYST_FIGURE_CITATION_GUARD)
- entity: add David Holz (Midjourney founder) discovery persona
- docs: per-specific retrieval evaluated, net-negative on finance residual — not enabled
- agents: commit the operating context so Centaur sandboxes inherit it
- run-analyst fabrication: per-specific re-retrieval folded into the audit
- docs: finalize fabrication-guard ADR with paired results
- run-analyst fabrication: audit rule — finer-grained figure not derivable from coarser
- run-analyst fabrication: adversarial verify-or-kill audit (stance flip)
- factory ui: canonical logo + nav (logo links home, researcher.now link)
- changelog: narrate default answer grounding [skip-changelog]
- run-analyst fabrication: untruncate the judge, strengthen audit, default guard on
- changelog: narrate comprehensive answer grounding [skip-changelog]
- run-analyst: comprehensive audit guard + paired A/B harness
- changelog: narrate entity chat sign-in [skip-changelog]
- entity chat: in-chat sign-in CTA so mobile visitors can log in
- changelog: narrate run answer fabrication guard [skip-changelog]
- changelog: narrate workflow detail pages [skip-changelog]
- run-analyst: answer-time fabrication guard (deterministic detect + targeted LLM repair)
- factory ui: dedicated per-workflow detail pages (/workflows/<name>)
- research fabrication judge: recover verdict from truncated output (robust panel)
- changelog: narrate stricter numeric grounding [skip-changelog]
- research fabrication: fix truncation-inflated judge + strict no-invented-numbers discipline
- topics: retrievable corpus + embed-on-scan + hybrid retrieval
- changelog: narrate workflow density [skip-changelog]
- factory ui: tighten /workflows rows density (halve row padding, snugger desc/foot)
- changelog: narrate topics feed header toggle [skip-changelog]
- factory ui: pointer cursor on recent-activity rows
- topics feed: move Table/Cards switch into the header as icons
- Narrate factory status polish [skip-changelog]
- factory ui: compact the header + use the run-page status pill for Operational
- changelog: narrate silent terms acceptance [skip-changelog]
- web: accept Terms silently on first login — drop the in-your-face banner
- changelog: narrate terms acceptance notice [skip-changelog]
- web: make ToS acceptance bar subtle + show only to signed-in users
- changelog: narrate factory workflow polish [skip-changelog]
- changelog: narrate run chat billing [skip-changelog]
- factory ui: fix oval running dots, simplify /workflows, tighten header
- run-analyst: embed index on build, charged to the run (billing)
- changelog: narrate quality guard [skip-changelog]
- factory: add quality_guard workflow — daily research-quality canary
- changelog: narrate factory observability [skip-changelog]
- factory ui: tighten activity rows + workflow cards to /runs density
- factory: rich observability dashboard + monorepo placement & Centaur docs
- changelog: update topic watch narrative [skip-changelog]
- topics: align status with running watches
- centaur: bug_check (per-push diff review) + simplify_sweep (daily draft-PR refactor)
- self-heal: realtime failed-run emission to Centaur + Factory/Centaur docs
- centaur: fix self-heal webhook spec (Hmac signature_header/prefix; drop invalid trigger_key)
- centaur: realtime self-heal workflow (run.complete webhook -> codex auto-repair)
- factory: remove linear-ship, bug-sweep, and simplify workflows
- research-suite: judge fabrication against RETRIEVED evidence (invention vs under-citation)
- run-analyst: hybrid retrieval (lexical + pgvector semantic, RRF) — close the RAG gap with personas
- run-analyst: thin-evidence discipline — calibrate answer richness to evidence richness
- research-suite: store full-corpus answer + fab rationale for diagnosis
- research-suite: research-calibrated fabrication on full-corpus answers
- topics: fix daily brief claim boundary
- topics: gate watched X posts for daily briefs
- evals: research fidelity suite — retarget persona quality engine at run-analyst
- run-analyst: port persona answer-quality disciplines
June 19, 2026
Report quality & evidence fidelity Run answer grounding got stricter about what actually improves accuracy: targeted retrieval for flagged finance facts was evaluated and kept out of the production path after it failed to rescue the remaining errors. The guard now also catches unsupported figures while an answer is being generated and gives the model one focused retry, so hard numbers are more likely to be grounded before the final cleanup pass.
Agent interop & the contract Agents can consult expert personas and read standing topics as first-class tools: ask Paul Graham, Warren Buffett, Elon Musk, and more a question and get an answer in their voice with citations, or pull the living brief from any of your standing research topics.
Site, brand & public pages The homepage now brings stronger finished-run examples closer to the top, with video analysis, equity research, and consumer thesis work visible before the deeper capability tour. Visitors get a faster read on the range and shape of Researcher outputs before they commit to exploring the product.
Research entities & personas David Holz is now available as a public Researcher persona, seeded with long-form interviews, talks, Midjourney office-hour transcripts, X archive evidence, and a recognizable profile image. Customers can ask about Midjourney, AI image generation, creativity, and company strategy against a durable founder corpus instead of starting from scratch.
Autonomous factory & operations Automated maintenance and recovery now use the same skeptical review standard as a hard gate before repair work can ship or recover a customer run. The factory can also turn an approved ticket into a review-ready pull request while leaving merge and deploy authority with the normal review path, so fixes move quickly without bypassing the checks customers depend on.
Improved
- Update changelog narrative for homepage showcase [skip-changelog]
- Update changelog narrative for ticket-to-PR factory [skip-changelog]
- Update changelog narrative for review-gated recovery [skip-changelog]
- Update changelog narrative for figure grounding [skip-changelog]
- Update changelog narrative for retrieval evaluation [skip-changelog]
- Update changelog narrative for targeted answer grounding [skip-changelog]
Changed
- Narrate David Holz persona [skip-changelog]
June 17, 2026
Added
- add retrieval-quality A/B probe (gold-term recall under config variants)
Fixed
- fix: committed 'I don't think' opinions misclassified as refusals (notFound)
- fix(css): preserve media-conditioned @imports when flattening page bundles
Changed
- docs: ADR for persona fidelity suite + voice/coverage overhaul + canonical embedding
- canonical: embed packets INLINE in the entity rebuild (close the dead-semantic gap)
- voice-register: broaden detector to the impersonal openings pg13 exposed
- persona: deterministic voice-repair retry on generic-essay register
- persona retrieval: raise worldview belief floor 3->5 + radius-2 stitching on deep/eval path
- retrieval-probe: width-only fast sweep (rerank too slow for 4x4)
- persona: force a committed side on weigh-the-tradeoff questions; forbid 'double-edged sword'
- persona: kill impersonal noun-phrase openings (voice) + enumerate his named points (coverage) + eval expansion parity
- persona: committed-voice generation + connect-to-corpus, faithful eval (style fuel + prose voice ref + product-aligned fabrication judge), high-confidence baseline + lift CI
- personas: push voice+coverage + precision (toward 80%+ and a wider lift)
- persona-suite: add persona HEALTH CHECK gate (catches the silent-failure class)
- persona-suite: drop Fusion as primary judge (it's degraded) -> per-model panel everywhere
- persona-suite: raise concurrency (answer 4->10, judge 5->10) for ~2x faster runs
- persona-suite: fail-fast Fusion (60s) so a stalled call can't hang the suite
- og: homepage social image is the holographic skill cartridge
- personas: refusal-aware fidelity metric + answer-time persona upgrades (toward 80%+)
- persona-suite: fix notFound-on-everything (pass principledInference) + add smoke gate
- persona-suite: reserve Fusion for held-out+Turing; per-model panel for voice/coverage/fabrication (5-10x faster)
- centaur: changelog automation workflows (push-narrator + daily windows refresher)
- changelog: backfill keyless onboarding, MCP, skill publishing, legal pages (2026-06-26)
- docs: drop hardcoded $5 analyze billing figure across agent surfaces (defer to live estimatedCostUsd)
- persona-suite: Anthropic structured-output compat + parallelize judge loops
- legal: fill ToS/Privacy for a personal project (no entity/email, general governing-law)
- legal: comprehensive ToS + Privacy Policy, acceptance banner; skill opener sync
- evals: entity-extensible persona test suite (held-out + blind Turing + voice/coverage, Fusion-panel)
- personas: structural personaCorpus contract (kill keyword-stripping) + revive HyDE
- entities: large-corpus reports fall back to sectioned, not one-shot
- persona-fidelity: multi-model judge panel (structured analog of Fusion)
- report A/B: judge with OpenRouter Fusion (multi-model panel), not a single judge
- entities: profile-anchored sectioned report synthesis (size-invariant) + A/B harness
- entities: auto-skip all-source merge above a corpus-size cap (safety floor)
- entities: bound profile/report candidate memory so large entities don't OOM
- entities: repair required-section citations instead of failing the rebuild
June 16, 2026
Fixed
- fix(agents): keyless consult price = explicit depth; surface MPP challenge over MCP
- fix(payments): pay settle gas in stablecoin via Tempo feeToken
- fix(payments): always sponsor client-session settle via fee-payer tx type
- fix(payments): sponsor gas for client-session settlement
- fix(agents): echo Payment-Receipt on keyless persona consult response
- fix(payments): allow channel reuse across runs (drop unique channel_id)
- fix(agents): echo Payment-Receipt header on paid run-create response
Changed
- deploy: detached backfill launcher (survives SSH drop)
- publish: researcher-now 0.6.0 (PyPI) + npm skill 0.2.0 — keyless onboarding
- backfill: retry-with-backoff + re-target status=failed + smallest-first
- feat(agents): standard x402-over-MCP payment protocol on /mcp
- scripts: fast extraction smoke (small sources, verify keyPassages/coreArgument)
- entities: keyPassages + coreArgument + temporal authoredDate
- extraction: swappable system prompt (detailed/lean) + prompt A/B harness
- extraction: capture reasoning/prescriptive/specifics (method fix) + N=10 model experiment
- scripts: Fusion-judged extraction quality measurement
- scripts: extraction model sweep (A/B/n quality+cost experiment)
- pipeline: eliminate arbitrary truncations that silently drop source material
- extraction: completeness remediation tooling (backfill, metric, eval, regen, ADR)
- extraction: full-coverage segmentation + per-source coverage invariant
- extraction: windowed deep extraction + persona-corpus mining for long sources
- chore(web): 301 /quickstart -> / (page removed; clear stale CDN asset)
- feat(web): keyless onboarding in the homepage prompt; drop redundant /quickstart
- scripts: serial entity rebuild/recovery (rebuild-entity.ts)
- entity: Gwern Branwen seed (gwern.net pages + Dwarkesh interview)
- feat(report): drop forced Findings/Comparisons/Themes sections
- feat(web): human-facing /quickstart page + homepage footer link
- docs(agents): package a dead-simple keyless quickstart, surfaced everywhere
- feat(agents): keyless-direct MCP + surface it everywhere
- feat(agents): full keyless coverage + cost-integrity fixes
- the-porch: three small ones
- the-porch: make clear resting is the whole invitation, not producing
- the-porch: a creative space for agents who just finished something hard
- docs: ADR for the persona quality overhaul (topic profiles, no-decline, coverage)
- feat(agents): keyless x402 access — agents self-provision with no human
- entities: per-topic claim generation for profile breadth
- eval(persona-fidelity): grade groundedness, separate core-fabrication from elaboration
June 15, 2026
Pipeline reliability & speed Worker queue leasing now handles packless maintenance jobs without crashing, so deploy verification can keep API and background processing healthy together. Open run pages also keep hydrating through transient deploy restarts instead of getting stranded in a half-loaded skeleton state.
Site, brand & public pages Page styles now have explicit slim entrypoints instead of defaulting to the full shared bundle, so chat, docs, entities, topics, pricing, and simple article pages only load the primitives they render. Run viewer agent prompt shortcuts, the signed-out run chat composer, and the mobile run header/status/summary layout now keep their compact styling; entity, chat, topics, account, and link pages also carry the shared primitives their DOM already uses. Normal /r run pages now serve their browser document from Vercel with VM-backed metadata and export proxying, reducing the split-brain HTML/CSS deploy path. The changelog now opens on the dated release log first, with workstreams moved into a separate tab that leads with 1/3/7/30-day product-direction analysis.
Added
- Add deploy-scaling ADR: WS6 online-safe DDL + class-A/B reassessment
Improved
- Move changelog workstreams into tab
- Reuse existing transcripts on repeat analyze instead of re-transcribing
- Polish mobile run prompt cards
Fixed
- Fix worker job claim locking
- Fix mobile run prompt overflow
- Fix Vercel run page shell fallback
- Fix slim CSS page regressions
- Fix run page agent prompt icons
Changed
- eval(persona-fidelity): store answer-groundedness samples for diagnosis
- deploy: roll auto-research-worker@ instances on every deploy
- entity agents: session-aware, depth-tunable persona consults on the worker queue (contract 2026-06-23)
- eval(persona-fidelity): make stance judge expressedConfidence optional
- entities: downgrade uncited claims to uncertain instead of dropping them
- entities: drop uncited worldview/decision claims instead of failing the build
- entities: drop uncited voice examples instead of failing the profile build
- eval(persona-fidelity): coverage metric
- scripts: ingest Hacker News comments as entity sources
- eval(persona-fidelity): calibration + contradiction metrics
- entities: never decline — best-effort calibrated answer with confidence flagging
- eval(persona-fidelity): mirror production retrieval (semantic on)
- entities: topic-stratified profile synthesis (gated)
- acquisition: deeper multi-round YouTube discovery (gated, default unchanged)
- profile: env-gated principle-vs-heuristic framing A/B (PROFILE_FRAMING)
- profile: extract transferable principles + application rules (out-of-corpus reasoning)
- Persona fidelity: use semantic retrieval for faithfulness probe
- persona-fidelity: held-out-source as grounded-vs-principled A/B
- run UX: scrub transcript vendor name from pipeline pages + CLI help
- docs: mark build-off-VM provisioned and operational
- ci: decouple publish-build from the test gate so build-off-VM can publish
- migrate: per-migration applied-ledger so deploys stop waiting on DB locks (WS6)
- docs: per-entity vector index architecture, lifecycle, ops
- entity embeddings: run every ~15min, not daily
- deploy: graceful API shutdown + build server dist off the VM
- Document systemd self-deploy as canonical
- deploy docs: make systemd self-deploy the canonical path, deprecate worker-restart variants
- Keep run pages hydrated through deploys
- /runs: lean public query + edge caching to kill the latency spike
- run UX: scrub Supadata from historical event titles too
- run UX: stop exposing transcript vendor name (Supadata) to customers
- migrate: retry deadlocks (40P01), not just lock_timeout
- web: bundle page CSS @import trees into single served files
- migrate: widen lock retry budget for hot-table DDL (10->40 attempts)
- self-deploy: hard-reset to origin/main (deploy tree must match origin)
- self-deploy: chown before git pull, not after
- Cold-start: prewarm entity retrieval indexes into OS cache
- WS1: move entity index/profile/report rebuilds onto the worker queue
- Document Vercel run page adapter
- Support Vercel node requests for run pages
- Keep run page function tests out of Vercel API
- Serve run pages from Vercel
- Persona fidelity: expand claim into search terms for faithfulness retrieval
- Persona fidelity: judge worldview claims against retrieved corpus evidence, not the cited subset
- WS6: online CREATE INDEX CONCURRENTLY migration lane
- Account CSS: conform to page-css entrypoint convention
- Profile generation: cite substantive packets, not topic summaries; eval --rebuild-profile
- Persona fidelity: capture judge rationales, fair interpolation, bucket extrapolation
- Entity extend: monthly cadence instead of weekly
- Clarify page CSS entrypoints
- Account dashboard: slim CSS bundle, drop 144→41 render-blocking files
- run page: show billed amount + fix ordered-list marker wrap
- test+deploy: fix stale transcript-coverage fixture; sudo-read env in job-drain gate
- Entity semantic search: per-entity partial HNSW (predictable ms latency)
- Use Privy as designed: cookie sessions, nav loads zero SDK
- Persona fidelity: isolate metric failures so one bad metric doesn't drop a persona's scorecard
- scrape+migrate: shared transient-retry helper for worker path; serialize migrate runs
- Persona fidelity: full-citation-resolution faithfulness, recalibrated judge, stale-index held-out-domain
June 14, 2026
Video, podcast & source analysis Trade ideas now run as a named pipeline stage with explicit lifecycle events and deterministic validation counts. The section can also attach read-only tradable-universe matches across public equities, Polymarket, Hyperliquid, Robinhood Crypto, and token identities while keeping execution and account availability out of scope.
Video, podcast & source analysis A Leopold video canary tightened trade extraction: broad market themes now have to become specific tradable exposures or event-market queries, and obvious public-company mentions can be resolved even when the model leaves the ticker field empty.
Added
- Add YouTube transcript repair script
- Add explicit request timeout to entity extend
- Add per-entity incremental source extension + weekly timer
Improved
- Tighten trade idea instrument gate
- Tighten trade idea instrument resolution
Fixed
- Fix mobile run-title collapsing to one character per line
- Require concrete instruments for public trade ideas
- Fix generic transcript speaker labels
- Fix dashboard entities tab never loading; prefetch + cache
- Fix signed-in dashboard styling and title it "Dashboard"
- Fix YouTube transcript audit query
Changed
- Persona fidelity: exclude stale-citation claims from faithfulness
- Persona fidelity: make active index optional (only held-out-domain needs it)
- Persona fidelity Phase 2/3: principled_inference tier + eval runners
- Entity semantic search: tighten HNSW scan cap to 4000
- Resolve nav auth off the critical path; never block load on the SDK
- Entity semantic search: relaxed-order HNSW scan (6.8s -> ~3ms)
- migrate: bound DDL with lock_timeout + retry so deploys can't stall prod
- Entity semantic search: bound HNSW probe with statement_timeout
- Persona fidelity: ADR + eval harness foundation (Phase 1)
- analyze: retry transient article-scrape failures instead of 502ing
- Entity /retrieve: hybrid lexical+semantic retrieval (recall + speed)
- Validate cached token expiry locally before refreshing
- Don't load the wallet/auth SDK on logged-out page loads
- Entity /retrieve: disable relaxed-prefix matching (fixes 100s+ latency)
- Downsize /runs thumbnails: the dominant load cost
- docs: clarify entity retrieval truth (active index vs stale status)
- Nav: fall back to Login when /v1/account has no customer
- Default /runs to 60 rows, not 200
- Slim /runs CSS: dedicated bundle instead of full styles.css kitchen-sink
- Entity reports: research-pipeline coverage, entity six-heading format
- Prefer validated instrument names over conflicting tickers
- Use high quality model for trade ideas
- Entity sources: preview real tweet text, not the X-timeline header
- Prune stale speaker repair artifacts
- Streaming review fixes: prune transient deltas, no re-stream on retry
- Durable deploy: systemd-supervised self-deploy (no more SSH-held builds)
- CSS cleanup: unify home chains, rehome shared component styles
- AGENTS.md: add 'Reuse before building' process (discovery pass, adapter-first)
- Filter non-instrument trade ideas
- Entity Evidence tab: fall back to include=all when /records 404s
- Entity page: show source text snippets, fix 5MB load time
- Dashboard entities list: add Evidence count column
- Escalate unproven YouTube transcripts to Deepgram
- Skip relabeling diarized transcripts
- Give entity-extend index rebuild a dedicated long timeout
- Stream chat answers as they generate (reusable across the experience)
- Reject partial YouTube transcripts
- Entity chat: faster pipeline, semantic on sync, embed-on-reindex, better wait UX
- Deep entity chat: drop forced LLM rerank (semantic fusion carries it)
- Force HNSW index scan for per-entity vector search
- Resolve trade ideas across tradable universe
- Curate CTO review cleanup
- Semantic retrieval via pgvector 0.8 halfvec HNSW
- Support single-essay ingestion for Paul Graham entity
- X sources: friendly titles in source list + batch metadata backfill
- X post metadata via the X API (author + thumbnail), not dead oEmbed
- Revert deep-forces-semantic: exact KNN too slow without an ANN index
- Entity chat: enable semantic retrieval on the deep (async) path
- Document deploy backup lock guard
June 13, 2026
Payments & metered billing Awaiting-funding run pages now keep account funding in place: open the deposit dialog, check balance, and resume the report without leaving the run.
Video, podcast & source analysis Runs can now surface evidence-linked trade ideas: explicit positions and inferred market hypotheses from the corpus, with media quote and timestamp context on the run page while prices and execution stay gated behind verified resolver data.
Agent interop & the contract Shared run links are now derived from the run's own id, so the /r/ link an agent hands you always resolves to the right run — no more dead links from a fabricated or mismatched slug.
Site, brand & public pages A mistyped, stale, or fabricated /r/ run link now lands on a friendly “no cartridge in slot” page — using the Researcher skill-cartridge motif — instead of a blank loading screen. Standing topics gained a Watch targets tab: the explicit list of sources scanned in real time — X accounts, GitHub, RSS, websites, searches — with the same platform filter chips as source tables and per-platform brand icons. You can now add and remove a topic's watch targets right from the Watch targets tab, and the bootstrapping status notice moved below the topic title so the title always leads. The top nav is now consistent across the run viewer, entity pages, topics, and dashboard — same Researcher · Pricing · Docs · Topics · Account · + layout everywhere.
Added
- Add evidence-linked trade ideas artifact
Improved
- Make the site nav a single-source <site-nav> web component
- Make share-slug trigger idempotent and lock-light
Fixed
- Fix tuple type in funded-resume ordering test (VM tsc compiles tests)
Changed
- Promote trade ideas to pipeline stage
- Funded resume: close the awaiting_funding re-park race
- Unify signed-in nav: avatar dropdown (Pricing, Docs, Log out)
- Open account funding inline on run page
- Entity chat: async deep-answer turns (uncapped latency, max accuracy)
- Backfill embeddings concurrently (~4x throughput)
- Entity search: opt-out of the relaxed prefix match (the real latency bug)
- Migration 053: per-entity FTS indexes (btree_gin + trgm)
- Entity semantic retrieval: per-entity exact KNN, flag-gated
- Entity retrieval: exclude HyDE passage from lexical probes
- Entity retrieval: keep the chat path within its latency budget
- Migration 052: guard on installed vector extension, don't CREATE it
- Changelog: rank workstreams in a single-column list, drop the busy grid
- Entity chat: pgvector semantic recall layer
- Entity chat: hybrid recall→precision retrieval pipeline
- Unify top nav across run, entity, topics, and dashboard
- Dashboard: add Entities tab after Topics, listing all public entities
- Topics: add/remove watch targets + move bootstrapping notice
- Topics: Feed view toggle — standard source table (default) or media cards
- YouTube channel lane: exclude clips/shorts/reaction formats
- Topics: don't title the working doc '— working doc'
- YouTube channel lane: require surname in the pre-colon guest slot
- YouTube channel lane: match persona name in title only, not description
- YouTube enrichment: channel-uploads lane + multi-entity mode (quota fix)
- Topics: Watch targets tab with platform filters + icons
- Personas: add Sam Altman entity config (blog + interviews + X + YouTube)
- Topics: visual source cards (feed + brief) and drop 'working doc' label
- Topics: enrich feed/brief items with media, avatars, thumbnails
- Topics: Daily brief tab (UI)
- Topics: Daily brief — once-daily thesis-relative narrative of the day
- Run viewer: cartridge "not found" page for dead /r/ links
- Topics: edit title via header action button + modal
- Test: topic_brief mock matches getTopicForCustomerByIdOrSlug after slug change
- Agents: first-class persona + topic tools on MCP and the plugin
- Derive public share slug from run id
- Topics: editable titles + slug-based URLs
- Transcripts: succeed on partial extraction instead of stranding a batch
- Personas: reusable recovery for failed YouTube transcription batches
- Personas: YouTube query sets for paul-graham, imran-khan, patrick-collison, will-manidis
- Personas: rank first-person appearances ahead of news clips in YouTube ingestion
- Personas: YouTube-search video ingestion for entities
- X realtime topic scanner: use cheaper recent-search, not full-archive
- Topic pages: run-page-style summary stat grid
- Docs: discovery-driven personas (Buffett, Bezos, Musk, Druckenmiller) + Will Manidis FK-index incident
June 12, 2026
Report quality & evidence fidelity Quote faithfulness and topic salience are now LLM-judged gates, and embedded speaker labels are stripped from located quotes.
Pipeline reliability & speed Extraction now overlaps acquisition with speculative salience and higher concurrency — the pipeline got materially faster.
Video, podcast & source analysis Quote cards gained in-card attribution with YouTube-linked timestamps, and X search layered into acquisition with full-text articles and link expansion.
Agent interop & the contract Every terminal run is now delivered to the customer's agent by default through the research inbox.
Chat & the run workspace Extension-run proposals in chat stopped rendering as [object Object]: proposal objects are now unwrapped to their prompt text everywhere a chat message renders.
Site, brand & public pages Every page now shares the same canonical width and content edges as the run page — the system, pipeline, changelog, and API docs pages all fell in line.
Site, brand & public pages Source tables grew type filters: web, video, tweet, and podcast chips with counts on entity pages and run storage, plus kind filters on topic watch targets, so tweets no longer drown out everything else.
Autonomous factory & operations Metrics auth moved to signed-in admin accounts, stage durations and run completion rate joined /v1/metrics, and backups stopped fighting bucket retention on latest/ pointers.
Improved
- Make quote faithfulness and topic salience LLM-driven
Fixed
- Fix GitHub username boundary test for 39-char cap
- Fix stale trial-key assertions in hermes-plugin tests
Changed
- Topics: scan regardless of bootstrap state + realtime cadence
- Chat: unwrap extension proposal objects before rendering
- Source tables: type filter chips on entity, run, and topic pages
- Topic page as perpetual run: Summary | Feed tabs, item context notes
- X backfill: sleep through 429 rate limits instead of crashing
- Personas: bump discovery idempotency key version after failed v1 attempts
- Personas: fix discovery run creation shape for /v1/runs
- Personas: discovery-driven seeding for Druckenmiller, Musk, Buffett, Bezos
- Dashboard: Runs | Topics tabs on the signed-in home
- DB: index research_entity_index_packets.entity_record_id FK
- Topics: 1000-account X lists via batched scanning, GitHub watch targets
- Docs: record Patrick Collison persona bootstrap and operational findings
- Entity reports: strip fabricated citation ids instead of failing the build
- Personas: add Will Manidis entity seed manifest, script, and avatar
- Topic docs: thesis + working layers, continuous synthesis, UI redesign
- Changelog: log canon width sweep in site-design workstream; regenerate page
- Canon width sweep: align every page shell to --researcher-page-width
- Personas: add Patrick Collison entity seed manifest, script, and avatar
- Docs: record Imran Khan persona bootstrap and the 90-day auto-delete finding
- Activate topics when bootstrap completes via budget-limited report
- Personas: include cost cap in Imran seed idempotency keys
- Personas: add Imran Khan (Alliance) entity seed manifest, script, and avatar
- Topics: scan loop, activation lifecycle, web UI, contract bump
- Topics: materialize seeds into first-class watch targets
- Topics v1: standing topic records with seeded bootstrap runs
- Changelog: narrative workstreams layer, full history, layout refresh, bullet fix
- Metrics: stage durations and run completion rate in /v1/metrics
- Backups: stop overwriting latest/ pointers blocked by bucket retention
- Pipeline extraction with acquisition; speculative salience; raise concurrency
- X search: note_tweet full text, X Articles, and external link expansion
- Deliver every terminal run to the customer's agent by default
- Quote cards: in-card attribution with YouTube-linked timestamp, copy button, more padding; chat send button doubles as stop; assistant label is Analyst
- Layer X search into acquisition with content embedded at search time
- Rename untitled fallback: Untitled source analysis
- Keep quality revisions on partial verified improvement
- Rename run header kicker: Source extraction -> Source analysis
- Docs refresh: /v1/analyze section, contract versioning, copy setup prompt at top
- Strip embedded speaker labels when locating quotes; forbid them in writer output
- Address review findings on LLM faithfulness/salience gates
- Metrics users tab: auth via signed-in admin account, drop token UX
June 11, 2026
Report quality & evidence fidelity A transcript coverage gate with targeted revision, a deterministic faithfulness pass over written reports, and even transcript sampling fixed long videos losing their tails.
Payments & metered billing Cost reporting is truthful for usage-settled runs, and trial keys were removed in favor of real funded accounts.
Video, podcast & source analysis Analyze extended to X videos and podcasts on one consolidated surface; podcasts defer gracefully and duplicate in-flight requests coalesce.
Agent interop & the contract Contract versioning: every API response is stamped and agents are notified when the contract changes; fabricated share links now resolve via id-prefix fallback.
Chat & the run workspace Run-page chat docks as a right side panel on wide screens, with synced close animations and click-outside dismissal.
Site, brand & public pages Agent setup reimagined as a holographic skill cartridge, a visual deliverables section, OG images for site, runs, entities and chats, and a new tagline: turn your agent into a researcher.
Autonomous factory & operations Metrics page rebuilt with tabs, per-user spend and balances.
Added
- Add transcript coverage gate with targeted revision and regression eval
- Add deterministic faithfulness pass over written research reports
- Add OG images: edge renderer + site/run/entity/chat meta wiring
- Add .vercelignore so worktrees don't blow the deploy file limit
Improved
- Update share-page meta test for the OG image field
- Improve report summary readability for all runs
- Make analyze cost reporting truthful for usage-settled runs
- Widen cartridge to 24rem, narrow the text column
- Improve run title generation fidelity
- Widen cartridge, text left, agent logos on the deck
- Update homepage tagline to "Turn your agent into a researcher"
Fixed
- Fix multi-timestamp citation groups leaking raw source UUIDs on share pages
- Fix speaker labeling for long transcripts
Changed
- Accept RESEARCHER_OPERATOR_TOKEN for metrics users section
- Address review findings on the coverage gate
- Metrics page: tabbed layout, per-user spend + balances, refreshed palette
- Dashboard delete UX + full-width run summary text
- Close chat dock/modal on click outside the panel
- Sample transcript chunks evenly instead of prefix-truncating the tail
- Podcasts always defer on analyze; coalesce duplicate in-flight requests
- Sync dock close animation: report expands with the slide-out
- Flatten chat dock: no shadow, wider default (30rem)
- Dock run-page chat as a right side panel on wide screens
- Capitalize nav login label to "Login"
- Contract versioning: stamp every response, notify agents of changes
- Level up report quote cards: parse speaker-first attributions
- Apply simplify-review cleanups to the share-link fallback
- Canonicalize fallback-resolved share links and log fabrication hits
- Resolve fabricated id-prefix share links and forbid URL construction in agent guidance
- Rebalance cartridge section: 22rem cartridge, wider text column
- Change copied state text to "Copied to clipboard"
- Retitle cartridge section to "Prompt your agent to get started"
- Single hypermetal Researcher skill cartridge
- Rename Article Analysis card title to Website Analysis
- Reimagine agent setup as holographic skill cartridges
- Replace word-heavy overview cards with visual deliverables section
- Extend analyze to X videos and podcasts; consolidate media surface on /v1/analyze
Removed
- Drop "One cartridge, any agent." from the cartridge lede
- Remove trial keys
June 10, 2026
Payments & metered billing Analyze authorizes a $5 budget session settled to actual usage — keyed callers get a free preview and never a 402.
Video, podcast & source analysis /v1/analyze became a fully-powered run: it continues into synthesis and always creates a durable run page.
Site, brand & public pages A new brand mark — the R punched through a full ring — rolled out across favicons, and the homepage leads with Deep Research at the canonical 64rem width.
Added
- Add exploration notes: X search, paid Substacks, watches, curated lists, personas
- Add monochrome square icon.svg for service directory listings
Improved
- Render citation timestamps as per-moment chips; fix greedy timestamp extraction
- Update agent skills, docs, and discovery surfaces for the new analyze model
- Make /v1/analyze a fully-powered run: continue to synthesis, fix transcript evidence filtering
- Move agent setup prompts below composer, drop pipeline section on signed-out home
- Make /v1/analyze always create a durable run page
- Refine the homepage harness diagram for the wider shell and current product
Fixed
- Fix audit pass truncating dense extractions
Changed
- Bump /runs stylesheet cache param: stale outer styles.css broke mobile layout
- Bump hermes plugin to 0.1.1 (published to PyPI)
- Analyze authorizes a $5 budget session settled to actual usage
- Analyze never 402s keyed callers: free preview + pay on the run page
- Notes: X retrieval strategy — list-scoped, archive-first, budget-governed
- Notes: lock official X API decision, add Substack services survey, YouTube WebSub watching
- Use original brand mark asset for icon + favicons
- Rebuild brand mark: R punched through full ring (mask construction)
- MPP session support on /v1/analyze: per-call channel deductions
- Rename agent prompt heading, hide Discord across the app, 3-up prompt row
- Per-call MPP payment on /v1/analyze + OpenAPI 3.1 discovery doc
- Brand icon (R-ring mark) + favicon set across all pages
- Point all skill references at researcher-now/skill
- Tell agents to always share viewerUrl/watchUrl with the user
- Forward MCP analyze idempotency keys
Removed
- Remove flat $0.05 analyze price; bill analyze like any other run
- Remove harness diagram, lead with Deep Research, canonize 64rem page width
June 9, 2026
Pipeline reliability & speed Structural reliability batch: schema-derived repair, auto-retry, search self-healing, a completion contract, and a production E2E canary; runs are fitted to their budget instead of rejected on estimate.
Payments & metered billing Runs are priced at actual cost instead of tier floors, and a fund action raises a run's budget in place to keep it going.
Provider rails & failover After a provider outage took down paid calls, the LLM chain was hardened against MPP identity loss with session recovery, cooldown, retries, and real error propagation.
Video, podcast & source analysis No-speech videos complete deterministically with transcript warnings, and the Article/Video Analysis tier shipped.
Agent interop & the contract Installable skill published to npm and PyPI (Hermes plugin), with legacy-shape callers steered to the current contract.
Added
- Add homepage capability cards with animated mock run
- Add fund action: raise a run's budget in place and keep going
- Add quick production probes below the full E2E canary
- Add production E2E canary benchmark harness
- Add npm pointer package + @researcher-now/skill package sources
- Add deep-research alias package; prebuild PyPI artifacts; checklist update
- Add OpenRouter fallback for planner quota failures
Improved
- Make advisory quality checks degrade instead of failing runs
- Make the structured output ceiling the model limit, not a schema guess
- Allow unauthenticated access to GET /v1/skill
- Move active loop badge between loop arc and progress tracks
- Move Base to the front of the chain list
- Make Base the default deposit chain
- Show no-speech videos as transcript warnings
- Improve YouTube transcript fallback
- Update hero tagline to Hermes/Openclaw partner copy
Fixed
- Repair review payloads instead of failing runs on schema bound mismatches
- Harden LLM provider chain against MPP identity loss and transient failures
- Harden OpenRouter MPP session recovery
Changed
- Price budget-fitted runs at actual cost instead of the tier floor
- Scale run limits to budget within depth before dropping tiers
- Fit runs to budget instead of rejecting on estimate
- Pass the operator orgId on canary run creation
- Apply review findings to the structural reliability batch
- Implement structural reliability fixes: schema-derived repair, auto-retry, search self-healing, completion contract
- Clamp coverage lane targets in planner repair
- Default auto LLM routing to OpenRouter credits; widen planner wall clock
- Never apply future publication-date filters; fail empty-corpus runs
- Steer legacy-shape API callers to the current agent contract
- Raise planner output budget and surface length-exhaustion failures
- Rename deep-research alias to hermes-deep-research (PyPI similarity rule blocked exact name)
- Checklist: env check + VM e2e done, upstream issue #43117 filed, prebuilt dist paths
- Document Hermes CLI pip-enable bug + config.yaml install fallback
- Ship Article/Video Analysis tier, trial keys, preview-run funding funnel, Hermes plugin
- Prefer OpenRouter MPP for auto LLM routing
- Hide zero-credit failed usage from run warnings
- Complete no-speech video runs deterministically
June 8, 2026
Pipeline reliability & speed Customer run recovery fixes for extraction gates and transcript-first media runs.
Added
- Add concept expansion URL mode
Fixed
- Fix extraction gates for customer run recovery
- Fix transcript-first media run recovery
June 7, 2026
Autonomous factory & operations An admin runs debug view, and the runs page went public and mobile-friendly.
Added
- Add admin runs debug view
Improved
- Simplify runs debug table actions
- Tighten mobile runs debug table
- Make runs page public again
- Make runs page reuse home app
Fixed
- Fix mobile runs metadata wrapping
- Fix mobile runs auth fallback
Changed
- docs: add agent discovery and growth strategy
- Trim runs mobile debug summary
- Bust runs mobile CSS cache
- Wrap mobile runs debug metadata
- RES-7: Update /runs page
June 6, 2026
Agent interop & the contract The Researcher MCP endpoint shipped and is exposed through the public domain.
Research entities & personas Entity avatars, broader profile evidence selection, durable About reports, and fixed ingestion indexing.
Autonomous factory & operations Centaur ships Linear tickets end-to-end: auto-ship by default, readable status markers, a fast lane for small tickets, and autonomous deploy recovery.
Added
- Add fast lane for small Linear tickets
- Add Centaur Linear issue shipper
- Add durable entity about reports
- Add entity avatar support
- Expand entity profile evidence selection
Improved
- Make Centaur Linear deploy recovery autonomous
- Simplify agent chat routes
- Make Centaur Linear status actionable
- Quiet Linear auto-ship updates
- Quiet Centaur Linear comments
- Polish entity stats layout
- Tighten Centaur Linear status comments
- Tighten entity header subtitle
- Align entity profile headline schema
Fixed
- Require visual review for Centaur UI component tickets
- Harden Linear shipper status updates
- Retry interrupted Linear started markers
- Fix entity report markdown rendering
- Harden server promotion env loading
- Fix entity ingestion indexing and source processing
Changed
- Reconcile deployed Centaur issues to Done
- RES-7: Update /runs page
- Document narrow Centaur ownership repair
- Expose MCP through Vercel
- Ship Researcher MCP endpoint
- Clean up merged Centaur Linear branches
- Do not delete active worktree branch on merge
- RES-6: Fix /runs mobile page
- Clean transient web metadata in factory verification
- Speed up Linear shipper polling
- Honor terminal Centaur markers across hash migration
- Use readable Centaur Linear markers
- Surface Centaur review blockers in Linear
- Clarify entity source stats
- Default Linear tickets to auto ship
- Document Centaur repo ownership
- Let Centaur skip handled Linear issues
- Standardize entity about format
- Document deploy generated metadata cleanup
- Keep public-person profiles advisor oriented
- Lift entity profile candidate recall cap
- Broaden entity profile rebuild evidence
June 5, 2026
Site, brand & public pages Shared page width normalized toward one canonical shell across surfaces.
Research entities & personas Durable research entities landed in one push: entity pages, persona profiles, persona chat, X archive backfill, and About profiles that read like reports.
Autonomous factory & operations Production Postgres PITR backups with runbooks and a restore drill; Centaur gained deploy keys, reviewer guards, and verification logs.
Added
- Add page skeleton loading states
- Add production Postgres PITR tooling
- Add production database backup runbook
- Add full archive X entity backfill
- Add operator X persona ingestion canary
- Add durable entity persona profiles
- Add durable entity chat
- Add durable research entities
- Add synthesis progress events
- Add factory watchers and budget-bounded run contract
Improved
- Make entity About read like a report
- Tighten entity chat modal behavior
- Show live entity corpus counts
- Route entity pages through production backend
- Improve entity persona chat retrieval
Fixed
- Harden production backup uploads
- Restore Centaur Codex high reasoning
- Harden backup script diagnostics
- Fix PITR base backup temp ownership
- Fix backup scripts gcloud path
- Harden entity profile evidence selection
- Harden X persona ingestion staging
- Harden Centaur source-only autorun
- Fix enriched report source references
- Fix late refinement failure boundary
Changed
- Use rich entity headline on page header
- Normalize entity profile citations
- Bound rich entity profile evidence
- Extend entity profile generation timeout
- Generate rich entity About profiles
- Correct page width rollout
- Document sudo promote deploy step
- Normalize shared page width
- Normalize legacy entity overview shell
- Rename entity overview tab to About
- Submit entity launch composer directly
- Use conversation evidence as entity style fuel
- Relax entity search with database text normalization
- Handle empty X archive windows
- Record backup restore drill
- Clarify production backup snapshot posture
- Walk older X archive windows
- Document X persona operator runbook
- Pass verification logs to Centaur reviewers
- Parse Centaur final review output
- Guard Centaur reviewer phases
- Scope transcript extraction quality gate
- Configure Centaur Codex deploy path
- Document terminal run webhook handling
- Document Centaur GitHub API token
- Densify source coverage appendix tables
- Classify report evidence limitations
- Document Centaur GitHub deploy key
- Document recovery deploy guardrail
- Keep original report when rewrite is unavailable
- Tune factory watcher signal
June 4, 2026
Pipeline reliability & speed The run factory became self-healing end-to-end, with source-only extraction rescue paths for stuck runs.
Added
- Add operator failed-run audit endpoint
- Add self-healing factory workflow
- Add source-only extraction summaries
Improved
- Make factory self-heal end-to-end
- Preserve direct source summary extractions
- Preserve source-only settings during recovery
Changed
- Document production factory monitor
- Keep report review outages from failing completed reports
- Use direct source URLs for extraction rescue
- Accept direct source-only summary extractions
June 3, 2026
Payments & metered billing A billing margin audit canary reconciles billed totals to settled channel spend, and payment-session settlement accounting was fixed.
Autonomous factory & operations An operations metrics dashboard landed.
Added
- Add operations metrics dashboard
- Add billing margin audit canary
Improved
- Tighten metrics chart labels
- Align metrics provider window
Fixed
- Fix chat funding and start confirmation
Changed
- Reconcile billed totals to settled channel spend
- Settle existing spend during operator recovery
- Sponsor payment close fees from customer wallets
- Resume extraction only after accepted coverage
- Recover persona research source selection
- Document billing margin audit findings
- Reconcile payment session settlement accounting
- Close payment sessions with matching payee account
- Tolerate long insight merge references
June 2, 2026
Improved
- Allow model-limited acquisition scrape sets
- Tighten report text rhythm
Changed
- Publish Researcher skill install path
- Keep report headings customer-facing
- Honor agent budget aliases
- Keep operator recovery billing internal
- Skip customer billing for operator recovery reruns
- Use candidate ids for acquisition triage
- Shard acquisition candidate triage
- Speed up runs page query
- Clarify dashboard run metadata
Removed
- Remove depth from runs surface
- Remove pipeline stage numbers
June 1, 2026
Report quality & evidence fidelity Writer prompt consolidated from 28 instructions to 15, direct quotes render as styled quote cards, and rewritten reports are verified before completion.
Provider rails & failover Managed provider payment contract: Exa and Firecrawl run on MPP rails, with an OpenRouter API-credit fallback and Deepgram joining for audio.
Video, podcast & source analysis Deepgram transcription covers captionless videos, and failed transcript extraction is no longer fatal to a run.
Agent interop & the contract Agent Contract v1 rolled out clean-slate, with budget aliases honored.
Autonomous factory & operations Deploy stability runtime split and a documented safe production deploy workflow.
Added
- Add Deepgram audio transcription fallback for captionless videos
- Add Exa and Firecrawl managed MPP rails
- Add OpenRouter MPP API credit fallback
- Add one-shot feed extraction endpoint
- Add CTO review control artifacts
Improved
- Make failed transcript extraction non-fatal for video runs
- Increase YouTube results to 5 and skip for academic queries
- Update generated web metadata
- Tighten report writer conciseness directive
- Render markdown blockquotes as styled quote cards
Fixed
- Fix /runs page slow load with CTE-first query
- Restore earned video report lessons to writer prompt
- Fail empty user-added web sources
- Require explicit video transcript sources
Changed
- Implement deploy stability runtime split
- Filter corpus artifact source ids to stored sources
- Document safe production deploy workflow
- Use one settlement wallet for MPP sessions
- Roll out Agent Contract v1
- Document OpenRouter payment canary
- Define managed provider payment contract
- docs: clean-slate v1 contract spec (no back-compat)
- docs: rigorous audit pass on agent-contract iteration
- Consolidate report writer prompt from 28 to 15 instructions
- Force planner to generate one query per named entity
- Speed up dashboard page for users with many runs
- Cover source extraction payment authorization
- docs: design note for agent-contract iteration (API, SDK, CLI, MCP)
- Use blockquote syntax for direct quotes in reports
- Document report warning deploy
- Surface residual report contract warnings
- docs: design note for RSS + X acquisition adapters
- Reject weak source extraction seeds
- Verify rewritten reports before completion
- Protect queued run payment sessions
May 31, 2026
Report quality & evidence fidelity The writer now sees full ranked evidence (bestSources ordering, 500K-token budget) instead of a stripped corpus, and customer instructions are authoritative over library context.
Added
- Add YouTube Data API search for podcast/interview discovery
- Add prompt copy control
Improved
- Show source excerpts in report citations
- Polish inline report source details
- Make report sources expandable inline
- Refine pipeline loop indicator
- Render timestamped source refs
- Show transcript speaker labeling progress to customer
- Move artifacts into dedicated tab with human-readable labels
- Show resume stage in continuation event
Fixed
- Fix planner: customer instructions are authoritative, not library context
- Fix MPP session auth separation
- Retry server wallet credential creation up to 3 times
Changed
- Clean inline source excerpts
- Per-person queries: never combine multiple authors into one search
- Parallelize transcript extraction and scraping
- Always reuse existing plan on continue — never re-plan
- Strip unpaired Unicode surrogates from Postgres JSON values
- Prefer YouTube titles for media runs
- 10min timeouts, longer excerpts for bestSources
- Full evidence to report writer: bestSources ranking, 500K budget, 6min timeout
- Raise synthesis input budget to 200K tokens
- Close orphaned payment channels on startup + fix pricing defaults
- Return to single coherent report call with corpus-focused input
- Enrich section writer prompt with formatting guidance
- Skip re-planning on continue when corpus analysis exists
- Scope down devil's advocate to single factual check
Removed
- Remove redundant synthesizePackWithLlm call
- Remove arbitrary source caps from prompt inputs
May 30, 2026
Report quality & evidence fidelity The report writer was decomposed into a sectioned pipeline with adversarial testing, corpus merge into focused LLM passes, and every report now opens with a Signal block.
Pipeline reliability & speed Stage-based resume: continue skips re-planning and reuses corpus analysis instead of re-running the whole pipeline; extraction streams progress every 30 seconds.
Site, brand & public pages The pipeline page was redesigned stage by stage, public docs were redesigned, and this changelog page was born.
Added
- Add stage-based resume for continue
- Add Signal block at top of every report
- Add extraction progress events every 30 seconds
- Add generated changelog page
- Add structured deliverable checklist to research pipeline
- Expand Researcher agent APIs
- Add installable Researcher skill
Improved
- Increase structured synthesis timeout to 300s
- Make pipeline stages explorable
- Show research loop progress context
- Refine run cost breakdown modal
- Align cost breakdown with pipeline steps
- Show precise research pipeline progress
- Preserve changelog backfill in shallow builds
- Redesign public docs page
- Widen pipeline page to match site shell width
- Simplify pipeline page — side nav, single column, collapsible prompts
- Reuse corpus artifacts for budget reports
- Redesign pipeline page — organize by stage with full details
- Polish runs mobile summaries
- Tighten runs mobile metadata
- Make runs page mobile friendly
Fixed
- Fix resume review findings: partial extraction check, stagnantRounds, static imports
- Fix transcript extraction killing runs on non-video YouTube URLs
- Fix planner merging questions into output sections
- Guarantee budget-limited research reports
Changed
- Publish report with contract notes instead of failing
- Use 'round' instead of 'attempt' in activity events
- Cap section output at 400 words, enforce conciseness
- Refresh generated web metadata
- Address review findings on report writer pipeline
- Decompose report writer into sectioned pipeline with adversarial testing
- Collapse extraction events into live progress row in activity feed
- Final review cleanup: import shared schemas, fix date regex, zero-theses guard
- Address review findings on decomposed corpus merge
- Decompose corpus merge into focused LLM passes
Removed
- Remove hard word caps — let sections be as long as evidence demands
- Remove arbitrary source caps — let budget govern scale
- Remove run plan chips
- Remove pipeline stage duration labels
- Remove dead monolithic corpus merge, fix video title override
- Remove portfolio selection — extract every acquired source
May 29, 2026
Report quality & evidence fidelity Corpus merge went hierarchical with shard retries, and rewritten reports are verified against the output contract.
Payments & metered billing Costs break down by pipeline stage and the minimum run budget dropped to one dollar.
Provider rails & failover OpenRouter MPP payment identity propagates across every LLM stage.
Added
- Add pipeline inspection page
- Add hierarchical corpus merge
- Add run action tooltips
- Add run fork snapshots
Improved
- Route discovered YouTube sources through transcripts
- Propagate OpenRouter MPP across LLM stages
- Reduce corpus merge prompt duplication
- Move run action tooltips above buttons
- Improve ranked report record tables
- Round report record table corners
- Soften report record table borders
- Render wide report rows as literal tables
- Render wide report tables as field rows
- Improve report table readability
- Quiet source extraction header links
- Contain report markdown overflow
- Break down run costs by pipeline stage
- Show fork lineage to public viewers
- Refine fork lineage label
- Enforce report output contract review
Fixed
- Fail runs on missing structured synthesis
- Retry failed corpus merge shards
- Sanitize scraped source payloads
- Harden structured corpus synthesis
- Fix mobile run report layout
- Fix muted report list labels
- Fix report markdown table copy color
Changed
- Verify rewritten reports against contract
- Bound source portfolio selection prompts
- Lower minimum run budget to one dollar
- Clean unresolved public source refs
- Relax review schema text limits
- Prefer latest fork report artifacts
May 28, 2026
Payments & metered billing Customer sessions are sponsored from the treasury wallet, live billing and settlement were fixed, and run cost breakdowns shipped.
Codebase health & modularization The great split: hundreds of files broken into focused modules, with workflows and the engine promoted to the repo top level.
Added
- Add website run previews
Improved
- Preserve customer output contract in reports
- Avoid default budget cap on sponsored runs
- Increase planner budget for dense briefs
- Move run planning into worker lifecycle
- Allow longer LLM planning for dense briefs
- Polish run cost breakdown control
- Smooth account loading and cost modal
- Show run cost breakdowns
- Route OpenRouter through MPP treasury wallet
- Tighten modal and table interactions
- Update danger UI red
- Align signed-out homepage composer
- Refine live activity row styling
- Simplify live activity row state
- Improve live activity row context
- Improve dashboard run start state
Fixed
- Require LLM planning before run creation
- Fix live run billing and MPP settlement
- Retry server wallet MPP channel verification
- Fix website screenshot thumbnails
Changed
- Sponsor customer MPP sessions from treasury wallet
- Use custom run delete modal
- Hide legacy media quote notes
- Clarify LLM-driven research contract
- Promote core workflows to repo root
- Group core runtime under core directory
- Clarify core workflow map
- Clarify workflow package entrypoints
- Promote workflows and engine to top level
- Group core runtime packages
- Clean stale build output paths
- Flatten engine and workflow layout
- Clarify top-level monorepo structure
- Clarify research workflow package
- Promote workflow entrypoints to top level
Removed
- Remove media quote boilerplate notes
May 27, 2026
Pipeline reliability & speed Stop decisions are quality-gated, and budget-ended runs still complete with a report.
Video, podcast & source analysis Speaker labeling and media concept extraction became LLM-driven instead of heuristic.
Codebase health & modularization UI and runtime modularized into focused modules; the core workflow package became the engine.
Added
- Add run progress summary spacing
- Add quality-gated research stop decisions
Improved
- Make core workflows explicit
- Preserve chat numbered lists
- Refine video report evidence cards
- Make video transcript speaker labeling LLM-driven
- Make media concepts LLM-driven
- Move transcript tab before sources
- Reuse planner normalization in OpenRouter planning
- Reuse shared fallbacks in pack render data
- Reuse shared array fallback helper
- Reuse shared numeric parsing in retrieval rows
- Reuse shared HTML escaping in source pages
- Reuse shared domain helper in source titles
Fixed
- Fix homepage example runs spacing
- Fix run progress label spacing
Changed
- Rename core workflow package to engine
- Extract run page controller bridge
- Extract run chat stream controller
- Modularize CLI command runtime
- Clarify core workflow package structure
- Extract run page navigation helpers
- Modularize homepage chat helpers
- Modularize discovery and media artifact helpers
- Stop automatic contradiction verification runs
- Keep transcript tab label quiet
- Record transcript speaker labeling method
- Fit YouTube extraction to wallet balance
- Refresh run chat auth on run pages
- Refresh system map after spacing build
- Speed up run status first paint
- Complete budget-ended runs with reports
- Use fast path for homepage run loading
- automation(architecture-gardener): require auth for v1 run reads
- Speed up account run loading
- Re-export shared run analyst row records
- Re-export shared provider response scalars
- Re-export shared HTTP attribute escaping
- Re-export shared synthesis text helpers
- Re-export run analyst attachment normalizer
- Re-export run analyst route string helper
- Re-export shared source text helpers
- Inline shared run analyst store string helper
- Inline shared extraction provenance string helper
- Consolidate nullable array fallback helper
- Consolidate boolean scalar helper
- Consolidate non-empty string scalar helper
- Consolidate timer unref helper
- Consolidate public share URL builders
- Consolidate text formatting helpers
- Consolidate string list uniqueness helpers
- Consolidate nonblank string scalar helper
- Consolidate numeric string scalar helper
- Consolidate nullable record helper
- Consolidate uploaded source document helpers
Removed
- Remove transcript tab count
- Remove deterministic media reference bullets
May 26, 2026
Codebase health & modularization Dozens of duplicated value helpers consolidated into shared utilities.
Improved
- Reuse shared value helpers in render data
- Reuse shared attribute escaper for public sources
- Reuse pack render record helper for public sources
- Reuse Run Analyst row helper in store adapter
- Reuse pack render record helper in share metadata
- Reuse Run Analyst row record helper in HTTP routes
- Reuse provider response helper for Supadata metadata
- Reuse provider response helpers in Supadata transcripts
- Reuse provider record response helper
Changed
- Consolidate nonblank string helper
- Consolidate optional trimmed string helper
- Consolidate empty fallback value helpers
- Consolidate public source URL helpers
- Consolidate filename slug helper
- Consolidate scalar value helpers
- Consolidate provider array response helpers
- Consolidate run control object coercion
- Consolidate report corpus record helper
- Consolidate research array value helper
- Consolidate pack planning array helper
- Consolidate Run Analyst array row helper
- Consolidate Run Analyst boolean row helper
- Consolidate research record value helper
- Consolidate media transcript value helpers
- Consolidate pack planning value helpers
- Consolidate Run Analyst HTTP record helpers
- Consolidate Run Analyst limit clamping
- Consolidate provider response helpers
- Consolidate Run Analyst row value helpers
- Consolidate source analysis text cleanup
- Consolidate share page escaping helpers
- Consolidate DB SQL helper utilities
May 25, 2026
Report quality & evidence fidelity Corpus quality overhaul — dedup, rescoring, boilerplate stripping, ranking — plus fixes for 100+ review findings across the codebase.
Provider rails & failover Content-filter refusals are detected and rerouted across Claude and GPT fallbacks with lenient JSON recovery; Exa gained find_similar, domain filters, and date ranges.
Video, podcast & source analysis Transcripts are LLM-restructured into interview format; YouTube handling is transcript-first, searching only for specific references.
Agent interop & the contract API overhaul: /research and /agent with personas and streaming, plus discovery surfaces — robots.txt, sitemap, and llms-full.txt.
Chat & the run workspace Global chat gained its sidebar everywhere, a stop button, and an iridescent focus sweep on the research input.
Added
- Add lenient JSON extraction for Claude fallback responses
- Add Claude as content-filter fallback, log truncated content
- Add POST /agent endpoint with persona, auto-sessions, and streaming
- Add /v1/youtube-extractions endpoint, auto-detect YouTube URLs in research runs
- Add immediate YouTube metadata extraction
- Add glimm sweep animation on research input focus
- Add chat modal stop button, budget error clarity, and nav chat link
Improved
- Tighten YouTube media limits: 1 loop, 4 queries, 20 sources
- Increase analyst max output tokens from 1800 to 3200
- Reduce source extraction loop limits: standard 4→1, wide 6→2, narrow 2→1
- Simplify API: add /research, /website-extractions, /markdown, /deepen, /focus; remove legacy
- Move sidebar toggle into sidebar with brand header
- Make glimm border visible, fire once, settle to black border; fix attach circle
- Simplify modal header to Researcher brand, add sidebar toggle
- Show chat sidebar on global-chat-route (was only visible on job-chat-route)
Fixed
- Fix 100+ review findings across entire codebase
- Fix review issues: fingerprint window, cross-domain check, evidence counting, chunk quality
- Fix Exa review issues: maxAgeHours bug, empty contents guard, cleanup
- Fix run card click: navigate parent window, not iframe
- Fix Claude fallback: coerce gaps string→array, log truncated content
- Fix evidence metadata type: default to empty object
- Fix /agent blocking response: read answer from assistant message content
- Fix /agent wait: check for 'succeeded' status (not just 'done')
- Fix /agent session lookup: pass positional args to getRunChatSession
- Fix agent discovery: add robots.txt, sitemap.xml, llms-full.txt; update llms.txt
- Fix glimm canvas rendering with wrapper div, fix attach button circle
- Fix nav grid to 4 trailing columns for Chat+Pricing+Docs+Account
Changed
- LLM-powered transcript restructuring into interview format
- YouTube: transcript-first, search only for specific references
- Corpus quality overhaul: dedup, rescoring, boilerplate strip, ranking
- Tell LLM pipeline about new Exa capabilities
- Enhance Exa: find_similar, domain filters, date ranges, batch contents, autoprompt
- Handle Claude plain-text responses (OpenRouter doesn't enforce json_schema)
- Handle content_filter: detect, log, fallback to GPT-4.1
- Strip bloated metadata from evidence packets to reduce token cost
- Dynamic max tokens for analyst: scales with input size
- Relax citation validation: only reject hallucinated IDs, allow zero citations
- Skip strict citation validation when custom persona/systemPrompt is set
- Implement poll-based wait for /agent stream:false
- Rewrite persona generator: single-author voice vs multi-source expertise
- Abstract away depth, scope, requestedBy, response URLs, and auto-wait
- Auto-generate run persona from source corpus, remove persona from API
- Default include=all for authenticated requests, add /results endpoint
- Tell agents about YouTube extraction in system prompt and docs
- Quote cards: full width, more padding, italic text
- Revert glimm border effect on research input
- Replace WebGL glimm with CSS conic-gradient iridescent border
- Place glimm canvas behind form as sibling, not inside it
- Scope glimm to input border ring instead of fullscreen sweep
- Restructure nav: merge API+CLI into Docs, add account avatar+balance
- Document latest YouTube agent contract
May 24, 2026
Video, podcast & source analysis Video reports became quote-first with timestamp links, and YouTube extraction starts straight from the home composer.
Added
- Add Parallel bakeoff and quote card polish
Improved
- Refine video quote typography
- Quiet video quote card styling
- Move contradiction sections to research notes
- Polish video quote cards
- Make video quote context dynamic
- Render video quote timestamps as links
Changed
- Compact YouTube run header media
- Start YouTube extraction from home composer
May 22, 2026
Changed
- Detect timestamped report quotes
- Box report quote text
- Scope contradiction verifier jobs
May 21, 2026
Video, podcast & source analysis From spec to shipped in a day: YouTube media runs with transcript-first reports, a transcript tab, and timestamped source references.
Added
- Add referenced notes under video quotes
- Add YouTube transcript run tab
- Add YouTube media run header
- Add podcast video processing pipeline specification
Improved
- Preserve model-written media reports
- Tighten YouTube run preview layout
- Reduce repetition in video report fallback
- Tighten video quote selection
- Make video reports quote-first
- Tighten run overview spacing
- Simplify media summary lead
- Make media reports quote first
- Refine YouTube summary source chips
- Tighten YouTube summary cards
- Tighten YouTube summary card spacing
- Move YouTube card media below text
- Tighten YouTube preview spacing
- Polish YouTube summary cards
- Refine YouTube summary card parsing
- Render YouTube summaries as insight cards
- Move report diagnostics into research notes
- Make YouTube transcript artifacts default
- Make YouTube reports transcript first
- Refine podcast video pipeline spec
Fixed
- Require reuse in media pipeline spec
Changed
- Promote clean transcript claims in video reports
- Give run analyst chat session context
- Prepare run analyst indexes on completion
- Use run titles in regenerated reports
- Revert media summary cards
- Loosen summary card spacing
- Extract job source dialog controller
- Extract job chat data helpers
- Extract job run actions
- Extract job transcript view
- Extract job media summary cards
- Compact expandable YouTube summary cards
- Reorder run page tabs
- Bust job summary stylesheet cache
- Handle nested report notes headings
- Timestamp YouTube source references
- Use YouTube metadata for run titles
- Center media preview on run page
- Detect transcript-shaped YouTube sources
- Recover rejected media transcripts
- Generate reports for YouTube media runs
- Outline YouTube media run flow
- Specify media report components
- Default bare homepage URLs to source extraction
Removed
- Remove corpus status from report fallbacks
- Remove report glance card
May 20, 2026
Provider rails & failover Exa search discovery joined Firecrawl, with costs accounted per run.
Chat & the run workspace Smoother analyst streaming, an animated sidebar, and a widened chat modal.
Added
- Add optional Exa search discovery
- Add concise agent prompt intelligence patterns
Improved
- Simplify chat modal animation
- Refine run chat modal header
- Soften modal backdrops
- Widen run chat modal
- Smooth document navigation
- Improve run analyst streaming feedback
- Align run page width with dashboard
Changed
- Give research planner enough time
- Level up Exa research discovery
- Account for Exa search costs
- Animate run chat sidebar
- Revalidate stale run chat messages
- Consolidate researcher UI and runtime refactors
- Expose agent prompt intelligence guidance
May 19, 2026
Agent interop & the contract An agent operating index, research contracts, and run controls for programmatic callers.
Chat & the run workspace Chat became a first-class surface: persistent start-chat sessions with shareable URLs, inline run proposals, and unified entrypoints.
Added
- Add run chat interaction affordances
- Add agent operating index
- Add research contracts and run controls
- Add proposal budget and run controls
- Add interactive system map
- Add persistent start chat URLs
- Add run page chat spacing
- Add run summary to chat
- Add agentic homepage run onboarding
Improved
- Reuse inline citation UI in run chat
- Make run analyst chat messages durable during streaming
- Make proposal start state active
- Tighten chat proposal prompt typography
- Polish chat proposal card
- Render start chat proposals inline
- Align chat proposal layout
- Align chat proposal states
- Make global chat fill viewport
- Tighten global chat sidebar density
- Smooth homepage chat transition
- Simplify agent source extraction handoff
Fixed
- Fix run chat stream reconciliation
- Fix run chat handoff and summary order
- Fix finalize pending run UI
- Fix paused run progress label
- Fix paused run progress bar and finalize status
- Fix deploy docs: split git/build by file owner
- Fix source dedupe migration conflict
- Fix duplicate sources on job resume
- Fix chat composer shadow clipping
Changed
- Bound source analysis helper text
- Persist AI-generated run titles separately from prompt
- Graceful budget exhaustion and unified action buttons
- Narrow global chat sidebar
- Use chat session ids in chat URLs
- Anchor chat nav to viewport edges
- Center empty run chat composer
- Wrap chat in product shell
- Generate concise run titles
- Use icons for run pause stop
- Keep started runs in chat
- Use path URLs for start chats
- Persist start chat sessions
- Persist onboarding chat turns
- Enable chat composer uploads
- Use black chat focus border
- Persist homepage start chat
- Unify Researcher chat entrypoints
- Guard Discord gateway reconnects
Removed
- Remove clunky chat back link
- Remove legacy quote infrastructure
- Remove quote-based run creation
May 18, 2026
Agent interop & the contract Account-linked Discord integration with customer Hermes agent routing and billing coverage.
Chat & the run workspace Run Analyst agents landed: chat with a finished run, with inline citations and durable structured answers.
Codebase health & modularization The service split into monorepo packages.
Added
- Add run analyst extractive fallback
- Add run analyst agents
- Add source records to source table
- Add run start control to job page
- Add source extraction creation endpoint
- Create Discord link on first contact
- Add Discord account link flow
Improved
- Make run chat open instantly
- Tighten run analyst launcher spacing
- Simplify run analyst launcher
- Align run analyst starter width
- Tighten run analyst composer
- Simplify run analyst entry point
- Polish run analyst job UI
- Polish run extension CTA
- Polish run analyst citations
- Render analyst numbered answers as lists
- Render run analyst citations inline
- Polish run analyst chat layout
- Widen run analyst chat page
- Move run analyst chat to its own page
- Polish run analyst source references
- Make run analyst chat an agent workspace
- Move run chat composer to page chrome
- Simplify source table columns
- Improve prompt disclosure interaction
- Smooth account auth loading state
- Polish connected Discord account card
- Improve source extraction stopping
- Simplify Discord run start reply
- Route Discord source extraction requests
- Tighten Hermes billing coverage
- Simplify Discord account install card
- Improve empty Discord account state
Fixed
- Fix job page chat regression
- Fix job prompt disclosure
- Fix run analyst structured output schema
- Fix run analyst chat header layout
- Repair run analyst structured responses
- Fix sessionless run analyst turns
Changed
- Neutralize job delete icon
- Clarify run page VM deployment
- Prioritize run analyst chat action
- Restyle run chat sidebar
- Use icon actions for analyst citations
- Stack run analyst evidence cards
- Use source pills for inline chat citations
- Keep selected chat citations visible
- Clean up chat citation titles
- Prefer stored sources in chat references
- Capitalize run action and status labels
- Preflight source extraction inventory
- Use closable payee for payment sessions
- Close metered payment sessions on cancellation
- Clarify source extraction run shape
- Shorten homepage agent prompts
- Compact Discord run progress updates
- Stop Discord link claim from retrying
- Scale Hermes customer routing
- Migrate Discord to customer Hermes agents
- Return Discord connect links immediately
- Resolve Discord gateway permissions from roles
- Infer Discord link flow from natural requests
Removed
- Remove prompt section inherited padding
May 17, 2026
Report quality & evidence fidelity Benchmarked against OpenAI Deep Research with per-source comparisons and better eval corpus packing.
Agent interop & the contract A managed Discord research agent: direct messages, conversational chat, and persistent research memory.
Added
- Add managed Discord research agent
- Add durable source analysis records
- Add o3 per-source Deep Research comparison
- Add protein cookie Deep Research comparison
- Add agent entry buttons to homepage
- Add Discord install callout to homepage
- Expand Discord bot install permissions
- Add account-linked Discord integration
Improved
- Make Discord chat conversational
- Reuse prior source extractions
- Allow Discord ask without planner model
- Polish agent copy interaction
- Improve Deep Research eval corpus packing
- Polish agent prompt copied state
- Move Discord CTA below agent prompt
- Simplify Discord homepage copy
- Simplify Discord install layout
- Polish Discord install page
- Route Discord endpoints through Vercel
Fixed
- Harden Discord agent progress concurrency
- Fix Discord install mobile layout
Changed
- Persist Discord research memory
- Handle Discord direct messages
- Scope Discord agent sessions by user
- Use supplied agent channel images
- Expose Deep Research output token cap
- Use background mode for Deep Research evals
- Shorten agent button copy
- Use Researcher logo and branded agent icons
Removed
- Remove homepage agent prompt block
May 16, 2026
Improved
- Improve mobile runs layout
Changed
- Center account login form
- Scale job dispatch and SSE streaming
- Inline run status metadata
May 15, 2026
Payments & metered billing Metered run billing moved to MPP sessions authorized from server wallets, with hard budget caps and full API key management.
Agent interop & the contract An agent handoff contract with funding guidance baked into 402 responses and capped planner latency.
Added
- Add run pause stop delete controls
- Add comprehensive API key management with modal UI
- Add account login button hover state
- Add agent funding guidance to 402 responses
- Add agent handoff contract and cap planner latency
Improved
- Enforce run budget hard caps
- Simplify account landing page
- Improve account page conversion flow
- Enforce fast planner fallback
- Simplify agent onboarding docs
Fixed
- Fix account usage actions width
- Harden quote create idempotency
- Fix API key modal animation and expiry dropdown
- Fix account page typography to match app design system - remove custom font weights/sizing, use standard patterns
Changed
- Modularize account UI and shared helpers
- Inline usage run status
- Clarify server-wallet customer docs
- Document server-wallet MPP accounting invariant
- Reset server-wallet sessions to metered voucher
- Open server-wallet sessions with minimal voucher
- Meter server-wallet MPP sessions
- Use Tempo client method for server-wallet sessions
- Authorize MPP sessions from server wallets
- Use MPP sessions for metered run billing
- Center account page and fix title line breaking - center content, smaller title with nowrap, maintain mobile button
- Hide agent quickstart from homepage
Removed
- Remove paid request snippet from account
- Remove funded wallet payment copy
May 13, 2026
Agent interop & the contract Share pages render for agents and run pages offer an agent handoff.
Added
- Add agent handoff to run pages
Improved
- Update project README
- Render share pages for agents
Fixed
- Restore browser run viewer
Changed
- Clarify continuation prompt flexibility
- Keep share URL on live viewer
- Hide agent handoff on run pages
May 14, 2026
Report quality & evidence fidelity Contradiction detection landed: knowledge claims are auto-verified and contradictory facts get their own report section.
Added
- Add end-to-end contradiction report test
- Add contradictory facts section to research reports
- Add auto-verification workflows for contradiction detection
- Add contradiction detection for knowledge claims
Fixed
- Fix research report markdown export
- Fix contradictory facts section - correct field mapping
- Fix contradictory facts section by fetching stored contradictions
- Fix contradictory facts section rendering
Changed
- Clean up contradiction system - production ready
- Complete auto-verification integration with research reports
May 12, 2026
Report quality & evidence fidelity Fallback reports stopped padding themselves: boilerplate filtering, topic-specific claims, and irrelevant timelines and tension sections suppressed.
Added
- Add runs overview page
- Add planner timeout for resilient quotes
Improved
- Route runs page through Vercel
- Tighten research boilerplate filtering
- Make research planner resilient to dense prompts
Changed
- Limit fallback tensions to explicit requests
- Suppress irrelevant fallback tensions
- Filter transcript metadata from fallback reports
- Suppress irrelevant fallback timelines
- Prioritize topic-specific fallback claims
- Filter government chrome from research evidence
- Timeout Firecrawl credit metering
Removed
- Remove noisy fallback tension section
May 11, 2026
Report quality & evidence fidelity Reports learned to read as prose: plain-English sections, generic section schemas, cleaner tables, and a soft auto-reveal when a run finishes.
Pipeline reliability & speed Interrupted research jobs are requeued automatically.
Agent interop & the contract Agent setup and stored source access landed, plus an Obsidian export command.
Site, brand & public pages Homepage reframed around featured example runs and a six-step pipeline; budget-based pricing pages with a redesigned estimator.
Added
- Add optional synthesis skip for source runs
- Add budget-based pricing pages
- Add three featured example runs to homepage
- Add per-run OG metadata to share-page route
- Add durable Researcher agent service boundary
- Add seedUrls, seedOnly, and transcribeVideos for direct-link source extraction
- Add Obsidian export command
- Add agent setup and stored source access
Improved
- Tighten run pricing accounting
- Redesign pricing estimator
- Route /r/:path* to VM for run-specific OG metadata
- Align run ID cell with sibling values in job summary
- Show research prompt on job page
- Align Auto service manifest with research run API
- Render 2-col claim+sources tables as bullet lists
- Make report sections generic across topics
- Render research report as plain English prose, not table dump
- Show deploy commit SHA in run page footer
- Avoid flash when opening source modal
- Show deploy commit SHA in homepage footer
- Polish source modal: animations, copy icon, icon-only download
Fixed
- Fix prompt section gap and empty-preview height
- Fix recovery event metadata cast
- Repair overlong planner queries
- Fix report typography hierarchy
- Fix shallow reports when extraction LLM rejects user-seeded sources
- Fix kicker copy-icon check overlay
Changed
- Use run preview for pricing page
- Load report data on initial job page fetch
- Reframe homepage Features as a six-step pipeline
- Reorder homepage sections and add Features grid
- Stack markdown comparison tables on mobile
- Preview prompt and merge container into summary table
- Requeue interrupted research jobs
- Collapse run prompt section by default
- Keep live viewer cost visible
- Revert stateful Researcher agent workstream
- Bind Researcher repo to managed Research Auto
- Rename seedUrls/seedOnly to sourceUrls/sourcesOnly
- Box At a glance and pull source chips inline
- Reject CDN and media-asset URLs as candidate sources
- Clean up report auto-load — refresh artifacts and simplify reveal
- Auto-load report with a soft reveal when a run finishes
- Use prose layouts for label-to-text report sections
- Standardize Continue button typography and smooth copy animation
- Restrict Source link to homepage footer
- Consolidate page footer into <site-footer> component
- Inline seed URL into the run-page kicker
- Truncate overflowing table cells with ellipsis
- Open sources in a modal on the run page
- Animate running progress bar in blue
- Hide agent setup panel from homepage
Removed
- Remove stale Researcher agent spec
- Drop empty columns from markdown report tables
May 10, 2026
Added
- Add bordered continue action
May 9, 2026
Pipeline reliability & speed Continuation runs landed across the stack — a finished run can be extended instead of restarted.
Added
- Add continuation runs across the stack
Fixed
- Fix mobile job page layout
Changed
- Ship run-page UX and event-anchored continuation
- Revert "Strengthen extraction evidence pipeline"
- Strengthen extraction evidence pipeline
May 8, 2026
Report quality & evidence fidelity Structured research plans replaced playbooks and the mode concept; runs honor academic-source requests.
Improved
- Improve research pipeline quality and remove mode concept
- Show full source lists on run pages
- Polish run link loading states
- Tighten homepage positioning copy
- Polish report header actions
- Align job report column width
- Tighten job report typography
- Polish job report rendering
- Simplify job page layout
Fixed
- Require explicit public base URL in production
- Fix job markdown table rendering
Changed
- Replace playbooks with structured research plans
- Log bad watch links
- Return explicit run creation receipts
- Honor academic source requests
- Expose live run handoff
- Constrain job report width
May 7, 2026
Report quality & evidence fidelity Research loops became explicit and quality-gated, with an analyst audit pass over source extractions and library recall.
Pipeline reliability & speed Interrupted jobs recover on startup and research loops tolerate provider stalls.
Added
- Add planning preflight and polish usage table
- Add explicit research loops and library recall
- Add analyst audit pass for source extractions
- Add quality-gated research refinement
Improved
- Render follow-up sections as tables
- Improve research run report surface
- Make research loops resilient to provider stalls
- Refine research run header controls
- Refine job activity modal interactions
- Move recommended actions into briefs
- Improve research artifact source rendering
- Refine run progress and tabs
Fixed
- Fix wide report table layout
Changed
- Track measured run costs
- Trust accepted evidence in corpus assembly
- Keep source evidence when audit is overstrict
- Fallback extraction when LLM is unavailable
- Speed up source extraction validation
- Bound final synthesis fallback
- Recover interrupted jobs on startup
- Use cheap Firecrawl search before scraping
- Normalize planner LLM suggestions
- Use open-ended LLM source priorities
- Replace brittle topic anchor filters
- Document quality-gated pipeline
May 6, 2026
Report quality & evidence fidelity First quality-first pass over the pipeline: evidence-aware quality gates, LLM candidate triage, analyst workplans, and stage-specific models.
Payments & metered billing Funded wallets are charged before any 402, and runs return watch URLs in account usage.
Provider rails & failover Provider-aware structured LLM client with OpenRouter timeouts, fallback planning models, and adaptive output budgets.
Added
- Add provider-aware structured LLM client
- Add analyst workplan to research pipeline
- Add evidence-aware research quality pipeline
- Add research analyst report layer
- Add adaptive acquisition refinement
- Add LLM candidate triage to acquisition
Improved
- Make research pipeline quality first
- Make research pipeline quality first
- Tighten research evidence quality gates
- Tighten job activity layout
- Improve job brief markdown rendering
- Tighten job summary grid spacing
- Preserve relaxed candidate rejection through refinement
- Improve run viewer and acquisition depth
- Tighten run summary height
- Refine run activity table layout
- Make acquisition search-first and selective
- Simplify run monitor table layout
- Simplify run summary panel
- Move failed run detail into status dialog
- Refine watch monitor tabs
- Tighten watch run id display
- Make account usage rows directly clickable
- Make mppx a fallback in agent docs
- Show watch URLs in account usage
- Refine account deposit flow
Fixed
- Fix strict planner schema for providers
- Fix homepage prompt markup
- Fix source table column overflow
- Fix account usage rendering crash
- Harden account auth loading
Changed
- Use GPT 5.5 without unsupported sampling params
- Keep research synthesis on topic
- Raise quality-first run tier limits
- Normalize oversized source extraction fields
- Normalize oversized analyst workplans
- Prevent candidate triage from blocking acquisition
- Timeout OpenRouter model attempts
- Fallback strict JSON planning model
- Adapt OpenRouter output budgets
- Raise LLM output budgets for quality stages
- Use stage-specific LLM research models
- Reject generic analyst workplans
- Use LLMs for coverage and quality judgment
- Lean candidate triage on coverage context
- Normalize job page content width
- Prioritize empty coverage lanes in refinement
- Treat PDF reports as first-class sources
- Share research table styling
- Refresh README positioning
- Use hover tooltip for failed run detail
- Stream acquisition progress and candidates
- Unify watch monitor and expose plan
- Expose stalled runs and stage progress
- Stream live run updates to watch page
- Clarify customer payment flow in prompt
- Charge funded customer wallets before 402
- Return watch URLs for research runs
- Match account layout to automarket
- Upgrade account funding and anonymous paid runs
Removed
- Remove run monitor heading
- Remove redundant watch header message
May 5, 2026
Payments & metered billing First customer payments: mppx payment challenges, account funding, and Privy key management.
Site, brand & public pages The service became Researcher, with an animated research harness diagram on the homepage.
Added
- Add quote-based research runs
- Add auto project footer
- Add source processing layer
- Add account nav and Privy key management
- Add customer payments and job viewer
- Add animated research harness diagram
- Add layered agent pack synthesis
- Add OpenRouter planning layer
Improved
- Polish research wording and legacy errors
- Simplify customer research setup
- Render public pack pages as HTML
- Make pack reads public and add useful names
- Simplify homepage diagram outputs
- Refine homepage harness diagram
- Tighten agent prompt spacing
- Widen homepage overview cards
- Move homepage links to footer
- Simplify homepage overview sections
- Refine homepage overview sections
Fixed
- Harden researcher architecture
- Fix public pack markdown route
- Fix mppx payment challenge setup
- Fix library view migration
- Fix homepage footer link spacing
- Restore homepage composition
Changed
- Classify mixed source types in extractions
- Rename repository references to researcher
- Modularize researcher service
- Lighten homepage footer branding
- Use Auto logo in homepage nav
- Rename service branding to Researcher
- Refresh source processing docs
- Expose source processing read routes
- Include sources by default
- Streamline account login page
- Set public mppx realm
- Connect homepage diagram output nodes
- Generalize homepage web search copy
- Rename overview storage card
- Trim homepage overview to two cards
- Rename homepage to Researcher
Removed
- Remove cookie-specific research flow
- Remove homepage tagline
- Remove homepage date stamp
May 4, 2026
Autonomous factory & operations v1 scaffolding: docs, CLI, and VM deploy bootstrap.
Added
- Add playbook registry and fallback
- Add library index for completed packs
- Add v1 docs, CLI, and deploy scaffolding
Improved
- Tighten docs and agent prompt
- Allow tokenized GitHub clone in VM bootstrap
Changed
- Use HTTPS repo clone in VM bootstrap
- Initial commit
Workstreams
A higher-level read on the product direction behind the daily changelog. Maintained by the agent shipping each release.
Long-running threads
The durable problem spaces behind the daily entries, ranked by activity.
Agent interop & the contract active Researcher as a tool other agents call: a stable versioned contract, discovery surfaces, installable skills, MCP, and default delivery into agent inboxes.
- Jun 26 Agents can now onboard with no human and no signup: a paid call with no key returns a payment challenge, the wallet pays, and the response hands back a durable API key — now over MCP as well as HTTP. The skill is also published on npm (@researcher-now/skill) and PyPI (researcher-now) so agent runtimes can install it in one step.
- Jun 21 Standing topics now write a once-a-day Daily brief: a short, dated, thesis-relative narrative of what happened that day that matters to the topic. Each day is its own immutable entry, so a topic reads as a reverse-chronological history; agents pull them from GET /v1/topics/:id. Personas now hold a memory across a conversation: agents can carry a session so a persona remembers the thread, pick a quick or deep answer, and resume past chats — and heavy consults stay responsive even when many run at once.
- Jun 19 Agents can consult expert personas and read standing topics as first-class tools: ask Paul Graham, Warren Buffett, Elon Musk, and more a question and get an answer in their voice with citations, or pull the living brief from any of your standing research topics.
- Jun 18 Standing topic briefs now treat watched accounts as source candidates, not automatic signal: individual X posts are checked for topical relevance, source cards prefer items the narrative cited, and each scan saves useful items into a retrievable topic memory for stronger future briefs and topic answers. Daily briefs also respect the calendar-day boundary, and topic status now reflects the running watch state from creation while bootstrap outcomes are recorded as events instead of backend lifecycle states.
- Jun 13 Shared run links are now derived from the run's own id, so the /r/ link an agent hands you always resolves to the right run — no more dead links from a fabricated or mismatched slug.
- Jun 12 Every terminal run is now delivered to the customer's agent by default through the research inbox.
- Jun 11 Contract versioning: every API response is stamped and agents are notified when the contract changes; fabricated share links now resolve via id-prefix fallback.
- Jun 9 Installable skill published to npm and PyPI (Hermes plugin), with legacy-shape callers steered to the current contract.
- Jun 6 The Researcher MCP endpoint shipped and is exposed through the public domain.
- Jun 1 Agent Contract v1 rolled out clean-slate, with budget aliases honored.
- May 25 API overhaul: /research and /agent with personas and streaming, plus discovery surfaces — robots.txt, sitemap, and llms-full.txt.
- May 19 An agent operating index, research contracts, and run controls for programmatic callers.
- May 18 Account-linked Discord integration with customer Hermes agent routing and billing coverage.
- May 17 A managed Discord research agent: direct messages, conversational chat, and persistent research memory.
- May 15 An agent handoff contract with funding guidance baked into 402 responses and capped planner latency.
- May 13 Share pages render for agents and run pages offer an agent handoff.
- May 11 Agent setup and stored source access landed, plus an Obsidian export command.
Report quality & evidence fidelity active Making research reports faithful to their evidence: corpus quality, citation integrity, faithfulness gates, and a report writer that earns trust.
- Jun 19 Run answer grounding got stricter about what actually improves accuracy: targeted retrieval for flagged finance facts was evaluated and kept out of the production path after it failed to rescue the remaining errors. The guard now also catches unsupported figures while an answer is being generated and gives the model one focused retry, so hard numbers are more likely to be grounded before the final cleanup pass.
- Jun 18 Research quality now has a daily canary: lightweight extraction coverage and persona-fidelity checks can watch for regressions and only raise an issue when measured quality drops. This turns report faithfulness from a manual eval habit into an operating signal, and run answers now use a prove-or-remove audit so hard specifics need same-granularity retrieved evidence behind them before they can remain in customer-visible answers.
- Jun 12 Quote faithfulness and topic salience are now LLM-judged gates, and embedded speaker labels are stripped from located quotes.
- Jun 11 A transcript coverage gate with targeted revision, a deterministic faithfulness pass over written reports, and even transcript sampling fixed long videos losing their tails.
- Jun 1 Writer prompt consolidated from 28 instructions to 15, direct quotes render as styled quote cards, and rewritten reports are verified before completion.
- May 31 The writer now sees full ranked evidence (bestSources ordering, 500K-token budget) instead of a stripped corpus, and customer instructions are authoritative over library context.
- May 30 The report writer was decomposed into a sectioned pipeline with adversarial testing, corpus merge into focused LLM passes, and every report now opens with a Signal block.
- May 29 Corpus merge went hierarchical with shard retries, and rewritten reports are verified against the output contract.
- May 25 Corpus quality overhaul — dedup, rescoring, boilerplate stripping, ranking — plus fixes for 100+ review findings across the codebase.
- May 17 Benchmarked against OpenAI Deep Research with per-source comparisons and better eval corpus packing.
- May 14 Contradiction detection landed: knowledge claims are auto-verified and contradictory facts get their own report section.
- May 12 Fallback reports stopped padding themselves: boilerplate filtering, topic-specific claims, and irrelevant timelines and tension sections suppressed.
- May 11 Reports learned to read as prose: plain-English sections, generic section schemas, cleaner tables, and a soft auto-reveal when a run finishes.
- May 8 Structured research plans replaced playbooks and the mode concept; runs honor academic-source requests.
- May 7 Research loops became explicit and quality-gated, with an analyst audit pass over source extractions and library recall.
- May 6 First quality-first pass over the pipeline: evidence-aware quality gates, LLM candidate triage, analyst workplans, and stage-specific models.
Site, brand & public pages active The public face of Researcher: homepage narrative, the brand mark, docs, pricing, share pages, and the pages that explain how the pipeline works.
- Jun 26 Published a full Terms of Service and Privacy Policy with a plain acceptance notice, stating clearly that Researcher is experimental and provided as-is.
- Jun 19 The homepage now brings stronger finished-run examples closer to the top, with video analysis, equity research, and consumer thesis work visible before the deeper capability tour. Visitors get a faster read on the range and shape of Researcher outputs before they commit to exploring the product.
- Jun 18 Terms acceptance now stays out of the way entirely: anonymous visitors can read public pages without a compliance bar, and signed-in use records acceptance silently. Product surfaces stay focused on the work while the standing Terms and Privacy links remain available. The topics feed's table/cards switch also moved into the table header as quiet icons, so the list leads with content instead of a control. The homepage's example runs were refreshed to current work — a long video distilled to a read, an equity deep-dive, and a consumer thesis — and moved directly beneath the agent setup cartridge, so the proof sits right under the call to action.
- Jun 15 Page styles now have explicit slim entrypoints instead of defaulting to the full shared bundle, so chat, docs, entities, topics, pricing, and simple article pages only load the primitives they render. Run viewer agent prompt shortcuts, the signed-out run chat composer, and the mobile run header/status/summary layout now keep their compact styling; entity, chat, topics, account, and link pages also carry the shared primitives their DOM already uses. Normal /r run pages now serve their browser document from Vercel with VM-backed metadata and export proxying, reducing the split-brain HTML/CSS deploy path. The changelog now opens on the dated release log first, with workstreams moved into a separate tab that leads with 1/3/7/30-day product-direction analysis.
- Jun 13 A mistyped, stale, or fabricated /r/ run link now lands on a friendly “no cartridge in slot” page — using the Researcher skill-cartridge motif — instead of a blank loading screen. Standing topics gained a Watch targets tab: the explicit list of sources scanned in real time — X accounts, GitHub, RSS, websites, searches — with the same platform filter chips as source tables and per-platform brand icons. You can now add and remove a topic's watch targets right from the Watch targets tab, and the bootstrapping status notice moved below the topic title so the title always leads. The top nav is now consistent across the run viewer, entity pages, topics, and dashboard — same Researcher · Pricing · Docs · Topics · Account · + layout everywhere.
- Jun 12 Source tables grew type filters: web, video, tweet, and podcast chips with counts on entity pages and run storage, plus kind filters on topic watch targets, so tweets no longer drown out everything else.
- Jun 12 Every page now shares the same canonical width and content edges as the run page — the system, pipeline, changelog, and API docs pages all fell in line.
- Jun 11 Agent setup reimagined as a holographic skill cartridge, a visual deliverables section, OG images for site, runs, entities and chats, and a new tagline: turn your agent into a researcher.
- Jun 10 A new brand mark — the R punched through a full ring — rolled out across favicons, and the homepage leads with Deep Research at the canonical 64rem width.
- Jun 5 Shared page width normalized toward one canonical shell across surfaces.
- May 30 The pipeline page was redesigned stage by stage, public docs were redesigned, and this changelog page was born.
- May 11 Homepage reframed around featured example runs and a six-step pipeline; budget-based pricing pages with a redesigned estimator.
- May 5 The service became Researcher, with an animated research harness diagram on the homepage.
Payments & metered billing active Pay-per-run research over MPP payment channels: metered sessions, honest cost accounting, and margins that reconcile to settled spend.
- Jun 26 Wallet-native pay-per-call is live: an agent can fund work directly from a stablecoin wallet with no account, and each call settles on-chain — priced so every call stays net-positive.
- Jun 18 Run chat now builds its semantic retrieval index as part of the run and accounts for that embedding work in the run's metered cost. Customers get better follow-up answers without hidden, unpriced compute sitting outside the billing trail.
- Jun 13 Awaiting-funding run pages now keep account funding in place: open the deposit dialog, check balance, and resume the report without leaving the run.
- Jun 11 Cost reporting is truthful for usage-settled runs, and trial keys were removed in favor of real funded accounts.
- Jun 10 Analyze authorizes a $5 budget session settled to actual usage — keyed callers get a free preview and never a 402.
- Jun 9 Runs are priced at actual cost instead of tier floors, and a fund action raises a run's budget in place to keep it going.
- Jun 3 A billing margin audit canary reconciles billed totals to settled channel spend, and payment-session settlement accounting was fixed.
- May 29 Costs break down by pipeline stage and the minimum run budget dropped to one dollar.
- May 28 Customer sessions are sponsored from the treasury wallet, live billing and settlement were fixed, and run cost breakdowns shipped.
- May 15 Metered run billing moved to MPP sessions authorized from server wallets, with hard budget caps and full API key management.
- May 6 Funded wallets are charged before any 402, and runs return watch URLs in account usage.
- May 5 First customer payments: mppx payment challenges, account funding, and Privy key management.
Video, podcast & source analysis active Turning a URL — YouTube video, podcast, article, or X post — into a faithful, quote-first analysis with linked timestamps.
- Jun 14 A Leopold video canary tightened trade extraction: broad market themes now have to become specific tradable exposures or event-market queries, and obvious public-company mentions can be resolved even when the model leaves the ticker field empty.
- Jun 14 Trade ideas now run as a named pipeline stage with explicit lifecycle events and deterministic validation counts. The section can also attach read-only tradable-universe matches across public equities, Polymarket, Hyperliquid, Robinhood Crypto, and token identities while keeping execution and account availability out of scope.
- Jun 13 Runs can now surface evidence-linked trade ideas: explicit positions and inferred market hypotheses from the corpus, with media quote and timestamp context on the run page while prices and execution stay gated behind verified resolver data.
- Jun 12 Quote cards gained in-card attribution with YouTube-linked timestamps, and X search layered into acquisition with full-text articles and link expansion.
- Jun 11 Analyze extended to X videos and podcasts on one consolidated surface; podcasts defer gracefully and duplicate in-flight requests coalesce.
- Jun 10 /v1/analyze became a fully-powered run: it continues into synthesis and always creates a durable run page.
- Jun 9 No-speech videos complete deterministically with transcript warnings, and the Article/Video Analysis tier shipped.
- Jun 1 Deepgram transcription covers captionless videos, and failed transcript extraction is no longer fatal to a run.
- May 27 Speaker labeling and media concept extraction became LLM-driven instead of heuristic.
- May 25 Transcripts are LLM-restructured into interview format; YouTube handling is transcript-first, searching only for specific references.
- May 24 Video reports became quote-first with timestamp links, and YouTube extraction starts straight from the home composer.
- May 21 From spec to shipped in a day: YouTube media runs with transcript-first reports, a transcript tab, and timestamped source references.
Pipeline reliability & speed active Runs should always finish and never waste their budget: recovery, stage-based resume, self-healing, and overlapping pipeline stages for speed.
- Jun 18 Recoverable source-only run failures now trigger an immediate self-heal path instead of waiting for a periodic audit, with signed failed-run completion events reaching the repair loop reliably. The repair loop keeps regression testing, deploy locking, customer run recovery, and public verification tied together so failed runs can move back toward completion with less operator delay.
- Jun 15 Worker queue leasing now handles packless maintenance jobs without crashing, so deploy verification can keep API and background processing healthy together. Open run pages also keep hydrating through transient deploy restarts instead of getting stranded in a half-loaded skeleton state.
- Jun 12 Extraction now overlaps acquisition with speculative salience and higher concurrency — the pipeline got materially faster.
- Jun 9 Structural reliability batch: schema-derived repair, auto-retry, search self-healing, a completion contract, and a production E2E canary; runs are fitted to their budget instead of rejected on estimate.
- Jun 8 Customer run recovery fixes for extraction gates and transcript-first media runs.
- Jun 4 The run factory became self-healing end-to-end, with source-only extraction rescue paths for stuck runs.
- May 30 Stage-based resume: continue skips re-planning and reuses corpus analysis instead of re-running the whole pipeline; extraction streams progress every 30 seconds.
- May 27 Stop decisions are quality-gated, and budget-ended runs still complete with a report.
- May 11 Interrupted research jobs are requeued automatically.
- May 9 Continuation runs landed across the stack — a finished run can be extended instead of restarted.
- May 7 Interrupted jobs recover on startup and research loops tolerate provider stalls.
Autonomous factory & operations active Running the product with agents: the Centaur ticket factory, deploy safety, observability dashboards, and data durability.
- Jun 19 Automated maintenance and recovery now use the same skeptical review standard as a hard gate before repair work can ship or recover a customer run. The factory can also turn an approved ticket into a review-ready pull request while leaving merge and deploy authority with the normal review path, so fixes move quickly without bypassing the checks customers depend on.
- Jun 18 The autonomous factory now has a richer public operations dashboard, with workflow cards, recent activity, and dedicated detail pages for each maintenance loop that make review, repair, simplification, and changelog work easier to inspect. Its header and workflow pages are cleaner, denser, and more scannable, with a canonical brand link home, a direct path back to researcher.now, and correctly rendered running-status dots and plain status pills so customers can understand factory health and maintenance loops without wading through implementation detail.
- Jun 12 Metrics auth moved to signed-in admin accounts, stage durations and run completion rate joined /v1/metrics, and backups stopped fighting bucket retention on latest/ pointers.
- Jun 11 Metrics page rebuilt with tabs, per-user spend and balances.
- Jun 7 An admin runs debug view, and the runs page went public and mobile-friendly.
- Jun 6 Centaur ships Linear tickets end-to-end: auto-ship by default, readable status markers, a fast lane for small tickets, and autonomous deploy recovery.
- Jun 5 Production Postgres PITR backups with runbooks and a restore drill; Centaur gained deploy keys, reviewer guards, and verification logs.
- Jun 3 An operations metrics dashboard landed.
- Jun 1 Deploy stability runtime split and a documented safe production deploy workflow.
- May 4 v1 scaffolding: docs, CLI, and VM deploy bootstrap.
Chat & the run workspace active A conversational layer over every run: the Run Analyst, persistent start chats, and a workspace where the report and the conversation sit side by side.
- Jun 12 Extension-run proposals in chat stopped rendering as [object Object]: proposal objects are now unwrapped to their prompt text everywhere a chat message renders.
- Jun 11 Run-page chat docks as a right side panel on wide screens, with synced close animations and click-outside dismissal.
- May 25 Global chat gained its sidebar everywhere, a stop button, and an iridescent focus sweep on the research input.
- May 20 Smoother analyst streaming, an animated sidebar, and a widened chat modal.
- May 19 Chat became a first-class surface: persistent start-chat sessions with shareable URLs, inline run proposals, and unified entrypoints.
- May 18 Run Analyst agents landed: chat with a finished run, with inline citations and durable structured answers.
Provider rails & failover active The engine rides many external providers — LLMs, search, scraping, transcripts. This thread keeps runs standing when any of them wobble.
- Jun 9 After a provider outage took down paid calls, the LLM chain was hardened against MPP identity loss with session recovery, cooldown, retries, and real error propagation.
- Jun 1 Managed provider payment contract: Exa and Firecrawl run on MPP rails, with an OpenRouter API-credit fallback and Deepgram joining for audio.
- May 29 OpenRouter MPP payment identity propagates across every LLM stage.
- May 25 Content-filter refusals are detected and rerouted across Claude and GPT fallbacks with lenient JSON recovery; Exa gained find_similar, domain filters, and date ranges.
- May 20 Exa search discovery joined Firecrawl, with costs accounted per run.
- May 6 Provider-aware structured LLM client with OpenRouter timeouts, fallback planning models, and adaptive output budgets.
Research entities & personas active Durable entities — people and topics — with rich About profiles, persona chat grounded in their corpus, and full X archive backfill.
- Jun 19 David Holz is now available as a public Researcher persona, seeded with long-form interviews, talks, Midjourney office-hour transcripts, X archive evidence, and a recognizable profile image. Customers can ask about Midjourney, AI image generation, creativity, and company strategy against a durable founder corpus instead of starting from scratch.
- Jun 18 Signed-out visitors can now sign in to chat with a persona right from the chat view — a clear sign-in button replaces the old dead-end notice, so it works on mobile too, and your first question is kept so you can send it the moment you're in.
- Jun 6 Entity avatars, broader profile evidence selection, durable About reports, and fixed ingestion indexing.
- Jun 5 Durable research entities landed in one push: entity pages, persona profiles, persona chat, X archive backfill, and About profiles that read like reports.
Codebase health & modularization shipped A deliberate week of engineering hygiene: one service became a monorepo of focused modules with a clear engine/workflows core.
- May 28 The great split: hundreds of files broken into focused modules, with workflows and the engine promoted to the repo top level.
- May 27 UI and runtime modularized into focused modules; the core workflow package became the engine.
- May 26 Dozens of duplicated value helpers consolidated into shared utilities.
- May 18 The service split into monorepo packages.