Skip to content

Roadmap inputs — 2026-08-19

Collected by the post-MVP-1 documentation cleanup pass. Inputs, not decisions — nothing here carries a scope verdict. Two consumers: the founder's MVP-2 (Explore backend) redefinition session, and the roadmap → Linear session that follows it. Each item cites where it comes from.

1. Post-release debt now due

Item Source
Delete the §5 mock surfaces (scripted Ask + fake reasoning trace, CompetitiveTimeline/DUPIXENT_TIMELINE, hardcoded drugName !== 'dupilumab', /franchise hand-written constants, mockSummarize()). They shipped gated behind VITE_DEMO_SURFACES (#253); deletion was declared post-release debt mvp-scope.md §5; mvp1-route-inventory-2026-08-12.md
Run the release transition / harness reset (archive superseded plans, retire overlapping skills, reset the harness) — capped at two working days. The documentation half was executed by this cleanup pass; the skills/harness half was not product-development-workflow.md "Release transition and harness reset"; deployment.md "After the tag" step 3
Login rate limiting — the one security finding consciously accepted rather than fixed at release (unthrottled password guessing) security-review-2026-08-12.md; §10 entry 2026-08-12
Lens.org 401s since 2026-07: confirm which backend produced the served patent scans; state genuine source absences in the UI mvp-scope.md §5 (still-open note)

2. Known-wrong-claim root causes (§4)

Defect #2 (matcher substring binding) was fixed inside MVP-1 (OGUR-52). The remaining three still hold suppress-or-annotate handling and each is a pipeline defect report:

# Defect Root cause
1 SGC001 mis-staged "Phase Ib completed" Stale fetch
3 "Genuinely failed clinically" with zero whyStopped records Unsourced synthesis
4 GDELT paragraph citing a source the runner doesn't import Phantom provenance

Source: mvp-scope.md §4; docs/development/polygon-genfit-alignment-plan.md.

2 and #4 fall out of a run manifest for free — a manifest is itself a candidate

MVP-2 deliverable.

3. Open decisions

  • §7 Q4 — the Gate A recall floor. What number counts as "reproduced" for siRNA (last: 16/32 assets · 10/12 deals) and obesity (12/14 core · 11/11 companies)? State it before any de-jargoning starts. (mvp-scope.md §7)
  • OGUR-79 — full-text-enriched report variants. Did not land pre-release; §2.5 says the reproducible capability (retrieval → chunking → synthesis → claim-to-passage grounding → gates), not a one-off enriched pack, is the MVP-2-shaped deliverable. Decide whether it enters the redefined §3.
  • Per-section feedback granularity. Whole-report was the accepted MVP-1 floor (mvp-scope.md §2.2); the API already carries the per-document anchor.

4. Unblocked parked work (extracted from triage-2026-08-10.md, since deleted — this section is its durable content)

All were parked "until after Aug 13"; all three PRs re-verified OPEN on 2026-08-19:

  • PR #196ADR-0007, Signal↔Landscape many-to-many edge. Also closes the "ADR-0007 exists only on an unmerged PR" gap.
  • PR #231 — parked cardiometabolic report-pack follow-on.
  • PR #66 — long-parked; rescore against the redefined milestone before touching.

The archived triage also lists CLOSE/REBASE dispositions never executed; rerun /triage against the redefined contract rather than acting on the 2026-08-10 scores.

5. Missing ADRs

  • Trial entity inspection (mvp-scope.md §3.4): "ADR required before it ships" — no such ADR exists. Required only if the item survives into the redefined §3.
  • ADR-0007 — lands with PR #196 (item 4).

6. MVP-2 definition-session reading list

The gap statement, in order of usefulness:

  1. docs/product/release-notes-v1.1.0.md — Known limitations, item 1 (the cleanest statement of what the Explore backend closes).
  2. docs/design/ux-spec.md §1.5 — the real-vs-not-built Explore surface table; the missing pieces are candidate retrieval, POST /api/explore/discover, a discovery job store, DiscoveredEntity.
  3. docs/adr/0005-sponsor-discovery-harvester.md — the accepted design for the discovery harvester and async discover endpoint.
  4. docs/adr/0006-landscape-class-adapter.md — the LandscapeClass / DiscoveryRunContext seam and the cross-deck regression gate.
  5. docs/development/plan-c-engine-debt.md — unified runner / shim retirement (stamped as a redefinition input).
  6. docs/design/explore-precision-confirmation-plan.md and docs/design/explore-scope-expansion-plan.md — both Proposed, both scoped at ogur/engine/discovery_modality/ (stamped as redefinition inputs).
  7. The pre-redefinition mvp-scope.md §3 itself — rebuild (§3.1), GNS561 literature harvest (§3.2), recall baselines (§3.3), Gates A/B/C (§3.5) are the strongest candidate content for the redefined milestone.
  8. The operating machinery the backend must unify: ogur/engine/discovery_modality/, scripts/eval/{sirna,polygon,gns561}_discovery/ + the obesity/cardiometabolic packs, pack_replay.py, and the /coverage-eval, /landscape-loop-gt, /landscape-loop-explore, /landscape-loop-promote skills.

7. Standing blockers that bear on the Explore backend

Re-verified 2026-08-19 (mvp-scope.md §8): GNS561 has no lit_harvest.py; the citation gate exists twice in scripts and nowhere in the engine; evidence's _LANDSCAPE_CONFIG is immunology-001-only; Polygon has no seeder; ogur.db has 0 CompanyProfile rows (the pack is the only entity source); Lens is dead — gpatents-db is the $0/query patent axis.

8. Loose ends surfaced by the cleanup (small)

  • compass_artifact_wf-92cd…_text_markdown.md at repo root — untracked, unknown provenance; founder to keep or delete.
  • Stray root DB snapshots (ogur_demo.db, benchmark_bms_2014.db, siRNA copies, ogur.db.bak-20260809) — hygiene, not release work.
  • Untracked working notes remain under docs/development/ (sirna_plan_, rerun_, OVERNIGHT-*, eval/evidence plans) — left for the harness reset.
  • Draft-PR skills (linear-steward, linear-feature-intake, github-delivery-retro fixtures) untracked pending PRs #235/#236.