Skip to content

/landscape-loop-explore skill — contract

Project-local Claude Code skill at .claude/skills/landscape-loop-explore/SKILL.md. Invoked with /landscape-loop-explore <landscape-id> <lead-asset-or-thesis> [adjacency-map] to run the landscape-loop methodology on an open-ended landscape with no gold standard.

Why this exists

landscape-loop-gt proves measurable coverage against a hand-built deck. But most real analyst work has no deck — a design partner hands you a lead asset and a thesis and asks "map the competitive landscape." This skill runs the same engine (thesis → decompose → concept-query many sources → iterate → assemble) for that case.

The one missing input — the gold deck — removes the fitness function (recall vs the deck) and forces two changes that this skill exists to encode:

  1. A different success signal. No answer key ⇒ recall is unmeasurable. Success becomes analyst-reviewed convergence + scope-fit precision (low, stable off-thesis share), not a recall gate. Inventing a denominator would be dishonest.
  2. The four derivation axes become first-class. In -gt they are near-fixed config tuned via a small lever menu. Here — thesis decomposition, concept derivation, Open Targets target-set expansion, patent-registry company derivation — deriving them is the work, and the model is expected to adapt them per landscape, committing each change as a clearly-scoped, reviewable proposal in an adaptations log. The guards (two-factor phantom, provenance, copy-DB, never-fork-the-matcher) do not relax.

Relationship to landscape-loop-gt

Siblings on the same methodology; pick by whether an answer key exists.

-gt (bounded) -explore (this)
Input frozen gold deck + thesis lead asset / thesis (+ adjacency map)
Fitness recall vs deck convergence + scope-fit
Derivation axes fixed config (lever menu) adaptable, proposed-and-reviewed
Gate recall ≥ OGUR_GATE_MIN convergence; scope-fit doesn't drift
Maturity proven (2 runs) v1, not yet run (Polygon PLG-101 first)

Everything shared — provenance non-negotiable, copy-DB only, the "Supported landscape class" boundary (a non-RNAi class brings its own matcher module + cloned runner + scope-fit vocab), the source/cost gotchas — lives in the -gt doc; -explore only writes down the differences.

I/O expectations

Input <landscape-id>, a <lead-asset-or-thesis> (asset profile gives MoA target/modality/indication; thesis gives scope), an optional [adjacency-map] (hypothesised extensions with relevance tiers + sources).
Output discovered-{companies,assets,targets} CSVs with scope-fit tiers + per-finding source-attribution; a discovered-landscape report; an adaptations log; a convergence trace.
Never mutates production ogur.db (copy DB only), the shared matcher, the frozen seed problem statement.

Fitness metrics (no gold standard)

  • Convergence — rounds stop adding new core entities (a floor on coverage, honestly labelled).
  • Scope-fit precision — low, stable off-thesis share as the net widens; rising off-thesis share ⇒ scope drift ⇒ revert the adaptation.
  • Cross-source corroboration + novelty — entities carried by ≥2 source types; leads no single source surfaced alone.
  • Provenance completeness — every entity one click from a raw signal.

The three-phase shape

  • Phase 0 (frame, once): record seed provenance (asset + thesis + adjacency map, frozen) → draft editable scope chips → pick landscape class + build its adapters (matcher / runner / scope-fit vocab as proposed edits) → seed copy DB or run live.
  • Phase 1 (loop): per pass on explore/<slug>-pass-N — discover → assess convergence + scope-fit (not recall) → diagnose the weakest of the four axes → make ONE adaptation (or a shared -gt lever) → re-run + scope-fit guard + phantom guard → record adaptations log. Stop at convergence, analyst call, or iteration cap.
  • Phase 2 (assemble): assemble core/honorable-mention landscape with source attribution; expand each high-relevance adjacency as a sub-thesis.

Report contract

Two pharma-readable documents: a discovered-landscape report (decomposition used → map with source-attribution tables → scope-fit split → convergence trace → cross-source leads → anti-cheating → reproducibility) and an adaptations log (each derivation-axis edit with why + before→after deltas, review-ready).

Reference run

  • Polygon Therapeutics PLG-101 (design partner P1) — the first intended run. Frozen seed at archived_data/polygon_plg101_explore/PROBLEM_STATEMENT.md. An antibody / immunology landscape (CD8⁺ T-cell depletion for acute-MI ischemia-reperfusion) — deliberately not RNAi, so it exercises the full adapter-building freedom on all four axes. This run will validate and rewrite the specifics of the SKILL doc.

Honesty note

Unlike -gt, this skill has not yet been validated by a real run. It is the intended procedure extracted from the -gt methodology + the Explore-mode design (CLAUDE.md "Two modes"). The specifics of the four derivation axes are a starting hypothesis, expected to change after Polygon.