Skip to content

FE-1085: Elicitor project capability design#271

Merged
lunelson merged 25 commits into
nextfrom
ln/fe-1085-elicitor-project-prep
Jul 1, 2026
Merged

FE-1085: Elicitor project capability design#271
lunelson merged 25 commits into
nextfrom
ln/fe-1085-elicitor-project-prep

Conversation

@lunelson

@lunelson lunelson commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Stack Context

This stack completes the current elicitor capability spine before the next gap-guidance frontier: first canonicalize the live SPEC-mode skill surface around capture / generate / project, then harden the structured-exchange affordances that those skills use.

What?

  • Retires the suspended strategy/lens/method runtime and prompt-resource topology from the live product path.
  • Reorganizes live elicitor skills around activity-named homes (analyze, elicit, ingest, map, project, propose, review, tutorial) plus shared graph/reference material.
  • Adds project as a first-level SPEC-mode capability for cross-plane derivation from accepted graph anchors.
  • Updates SPEC/PLAN/topology docs and prompt-manifest tests to match the new live surface.

Why?

project was the remaining capability implied by the elicitor spine, but treating it as a generate sub-mode would blur two different jobs: generating alternatives within one plane vs. deriving downstream plane material from accepted upstream graph truth. This PR gives project its own prompt-resource home while keeping it on the existing exchange/review-set seams—no new product tool, schema family, or direct graph-write path.

lunelson and others added 22 commits June 30, 2026 12:00
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>
Signed-off-by: Lu Nelson <ln@hash.ai>

lunelson commented Jun 30, 2026

Copy link
Copy Markdown
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Comment thread src/agents/skills/registry.ts
@semgrep-code-hashintel

Copy link
Copy Markdown

Semgrep found 3 detect-replaceall-sanitization findings:

Detected a call to replaceAll() in an attempt to HTML escape the string value .replaceAll('&', '&amp;') .replaceAll('"', '&quot;') .replaceAll('<', '&lt;'). Manually sanitizing input through a manually built list can be circumvented in many situations, and it's better to use a well known sanitization library such as sanitize-html or DOMPurify.

@lunelson lunelson marked this pull request as ready for review July 1, 2026 09:19
Copilot AI review requested due to automatic review settings July 1, 2026 09:19
@cursor

cursor Bot commented Jul 1, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Markdown and governance-only changes; no runtime, auth, or data-path edits.

Overview
Caps co-located topology docs under src/ at the third path segment (src/<area>/TOPOLOGY.md or src/<area>/<subarea>/TOPOLOGY.md), with deeper files treated as legacy debt to collapse upward—not precedent for new nesting.

Repoints authority for Pi-seam and runtime truth: CONTRIBUTING.md, README.md, and docs/README.md now label pi-seam-extensions.md as mixed-status / historical and defer to memory/SPEC.md plus src/**/TOPOLOGY.md for the live contract.

Rewrites pi-seam-extensions.md to match post–D98-L product language: switchable lenses/strategiesoperational modes (/brunch:mode, mode registry, brunch.agent_runtime_state instead of brunch.lens_switch); Flue and subsystem lists use the same vocabulary.

Updates the live ship runbook so steps 7–8 prove Specify ↔ Execute mode switching (not strategy/lens posture), with artifacts/checks renamed (mode-diff.md, modeSwitchChangedPrompt, operationalMode in report.json).

Reviewed by Cursor Bugbot for commit e285741. Bugbot is set up for automated code reviews on this repo. Configure here.

@lunelson lunelson changed the title manual skill and prompt consolidation churn FE-1085: Elicitor project capability design Jul 1, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR consolidates Brunch’s “manual skill + prompt” surfaces by retiring the legacy strategy/lens/method runtime axes, introducing a code-owned first-level live skill registry, and relocating shared static references into a single runtime-eligible home.

Changes:

  • Remove legacy runtime axis fields (strategy/lens/freestyle) from session state, assistant-turn origination decisions, probes, and tests.
  • Add a code-owned live skill manifest (src/agents/skills/registry.ts) and inject the live-skill list into composed foreground/background prompts.
  • Retire generated ontology reference + associated scripts/tests; replace with authored reference docs under src/agents/references/.

Reviewed changes

Copilot reviewed 158 out of 160 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/session/start-assistant-turn.ts Drops strategy input and explicit_freestyle idle reason
src/session/schema/TOPOLOGY.md Updates session schema ownership notes after axis retirement
src/session/schema/kinds.ts Removes legacy axis enums; adds operational-mode labels/helper
src/session/schema/agent-manifest.ts Simplifies agent manifest skills typing to string list
src/session/runtime-state.ts Removes strategy/lens from persisted runtime-state schema
src/session/originate-assistant-turn.ts Removes strategy plumbing; simplifies skip-reason mapping
src/session/tests/start-assistant-turn.test.ts Updates tests for removed freestyle/strategy behavior
src/session/tests/originate-assistant-turn.test.ts Removes explicit-freestyle skip outcome coverage
src/session/tests/jsonl-session-viability.test.ts Switches viability matrix away from brunch.lens_switch
src/rpc/TOPOLOGY.md Removes strategy/lens metadata mention from toolResult shape
src/rpc/tests/handlers.test.ts Updates fixture runtime state to omit legacy axis fields
src/projections/session/tests/runtime-state.test.ts Ensures projection ignores stale legacy fields; mode drives role
src/probes/propose-graph-commit-proof.ts Removes legacy axis fields from probe runtime state
src/probes/project-graph-review-cycle-proof.ts Removes legacy axis fields from probe + report type
src/probes/fixture-curation-loop.ts Removes legacy axis fields from probe + report type
src/probes/tests/project-graph-review-cycle-proof.test.ts Updates test runtimeState fixture to omit legacy fields
src/probes/tests/fixture-curation-loop.test.ts Updates test runtimeState fixture to omit legacy fields
src/graph/TOPOLOGY.md Removes generated ontology reference mechanism description
src/graph/schema/tests/generate-ontology-ref.test.ts Deletes ontology generator drift-guard test
src/dev/generate-fan-out-witness.ts Updates witness markers from generate-proposal → propose
src/dev/tests/tier-2-harness.test.ts Removes lens command assertions; uses mode switch instead
src/dev/tests/faux-harness.test.ts Expects <brunch-skills> to be present in composed prompt
src/app/pi-extensions.ts Removes exports for retired lens/strategy commands
src/app/brunch-tui.ts Stops deriving assistant-turn strategy from runtime state
src/app/tests/brunch-tui.test.ts Updates command registry expectations (mode-only)
src/agents/TOPOLOGY.md Rehomes references under agents/references/; updates boundary rules
src/agents/subagents/TOPOLOGY.md Clarifies projector as background helper, not public “project” seam
src/agents/subagents/projector.md Updates projector description and constraints wording
src/agents/skills/tutorial/SKILL.md Adds first-level tutorial skill stub
src/agents/skills/synthesis/SKILL.md Removes old synthesize skill (replaced by analyze)
src/agents/skills/review/SKILL.md Expands review procedure + plane heuristics
src/agents/skills/registry.ts Adds code-owned live skill registry + manifest renderer
src/agents/skills/propose/SKILL.md Adds first-level propose skill and shared generate spine
src/agents/skills/propose/references/present-review-set.md Adds propose-local review-set drafting reference
src/agents/skills/propose/references/oracle.md Adds oracle proposal reference
src/agents/skills/propose/references/intent.md Adds intent proposal reference
src/agents/skills/propose/references/design.md Adds design proposal reference
src/agents/skills/projection/SKILL.md Removes old projection skill (superseded by project / propose)
src/agents/skills/projection/references/review-set-drafting.md Removes old projection review-set drafting reference
src/agents/skills/project/SKILL.md Adds first-level project skill
src/agents/skills/project/references/intent-to-design.md Adds intent→design projection lane reference
src/agents/skills/project/references/design-to-oracle.md Adds design→oracle projection lane reference
src/agents/skills/map/references/routing.md Adds explicit routing guidance (truth/advisory/gap/reconciliation/review)
src/agents/skills/map/references/map-plans.md Renames/retitles to mapping language
src/agents/skills/map/references/map-oracles.md Renames/retitles to mapping language
src/agents/skills/map/references/map-nodes.md Adds consolidated node-kind classification reference
src/agents/skills/map/references/map-detail-payloads.md Updates detail-payload reference to cite schema source directly
src/agents/skills/map/references/map-design.md Renames/retitles to mapping language
src/agents/skills/ingest/TOPOLOGY.md Adds topology file for ingest skill subtree
src/agents/skills/elicitation/SKILL.md Removes old elicitation skill (replaced by elicit)
src/agents/skills/elicit/SKILL.md Adds first-level elicit skill
src/agents/skills/capture/TOPOLOGY.md Removes capture TOPOLOGY (and associated slice drafts)
src/agents/skills/capture/slice-promotion-capture.md Deletes capture slice draft
src/agents/skills/capture/slice-kind-selection.md Deletes capture slice draft
src/agents/skills/capture/slice-edge-authoring.md Deletes capture slice draft
src/agents/skills/capture/slice-band-walk.md Deletes capture slice draft
src/agents/skills/capture/SKILL.md Deletes old capture skill stub
src/agents/skills/capture/skill-ingest.md Deletes old ingest draft in capture subtree
src/agents/skills/capture/references/readiness-bands.md Deletes old readiness-bands reference (moved to agents/references)
src/agents/skills/capture/references/intent-capture.md Deletes old intent-capture reference
src/agents/skills/capture/references/edge-heuristics.md Deletes old edge-heuristics reference
src/agents/skills/analyze/SKILL.md Adds first-level analyze skill (replaces synthesize/read-context)
src/agents/skills/analyze/references/neighborhoods.md Adds neighborhood consumption reference under analyze
src/agents/skills/_suspended/TOPOLOGY.md Deletes suspended skills taxonomy TOPOLOGY
src/agents/skills/_suspended/strategies/TOPOLOGY.md Deletes suspended strategies TOPOLOGY
src/agents/skills/_suspended/strategies/step-wise-disambiguate/SKILL.md Deletes suspended strategy skill
src/agents/skills/_suspended/strategies/step-wise-decision-tree/SKILL.md Deletes suspended strategy skill
src/agents/skills/_suspended/strategies/freestyle/SKILL.md Deletes suspended freestyle strategy skill
src/agents/skills/_suspended/methods/run-structured-exchange/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/review-for-gaps/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/read-referenced-documents/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/read-context/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/ingest-paste/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/generate-proposal/SKILL.md Deletes suspended generate-proposal method skill
src/agents/skills/_suspended/methods/generate-proposal/references/oracle.md Deletes suspended reference
src/agents/skills/_suspended/methods/generate-proposal/references/intent.md Deletes suspended reference
src/agents/skills/_suspended/methods/generate-proposal/references/design.md Deletes suspended reference
src/agents/skills/_suspended/methods/generate-proposal/probes.md Deletes suspended probes doc
src/agents/skills/_suspended/methods/explore-and-characterize/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/elicit-by-question/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/methods/commit-graph/SKILL.md Deletes suspended method skill
src/agents/skills/_suspended/lenses/TOPOLOGY.md Deletes suspended lenses TOPOLOGY
src/agents/skills/_suspended/lenses/oracle/SKILL.md Deletes suspended lens skill
src/agents/skills/_suspended/lenses/intent/SKILL.md Deletes suspended lens skill
src/agents/skills/_suspended/lenses/design/SKILL.md Deletes suspended lens skill
src/agents/skills/fixtures/unlisted-fixture/SKILL.md Removes fixture for ambient-discovery non-advertising
src/agents/runtime/TOPOLOGY.md Updates runtime topology; removes suspended subtree mention
src/agents/runtime/shared/TOPOLOGY.md Updates shared runtime boundary notes
src/agents/runtime/executor/TOPOLOGY.md Updates executor boundary notes (no suspended policy)
src/agents/runtime/executor/compose-prompt.ts Appends live skill manifest to executor prompt
src/agents/runtime/elicitor/TOPOLOGY.md Updates elicitor boundary notes (no suspended policy)
src/agents/runtime/elicitor/compose-live-prompt.ts Appends live skill manifest to elicitor prompt
src/agents/runtime/elicitor/snapshots/live-elicitor-prompt.md Updates prompt snapshot with <brunch-skills> block
src/agents/runtime/_suspended/TOPOLOGY.md Deletes suspended runtime control TOPOLOGY
src/agents/runtime/_suspended/prompt-skills.ts Deletes suspended prompt-skills renderer
src/agents/runtime/_suspended/capability-readiness.ts Deletes suspended capability readiness logic
src/agents/runtime/_suspended/tests/runtime-affordances-coverage.test.ts Deletes suspended affordance coverage test
src/agents/runtime/_suspended/tests/policy.test.ts Deletes suspended policy test
src/agents/references/TOPOLOGY.md Adds new static reference home documentation
src/agents/references/product-concept.md Updates product concept to match new model framing
src/agents/references/node-neighbourhoods.md Rehomes/retitles neighborhood guidance
src/agents/references/data-model.md Adds authored data-model reference (replacing generated ontology ref)
src/agents/prompts/TOPOLOGY.md Updates prompt topology ownership wording
src/agents/prompts/executor.md Updates link target to new reference home
src/agents/prompts/elicitor.md Updates elicitor operating loop guidance and tool naming
src/agents/prompts/tests/registry.test.ts Asserts project is listed as live first-level skill
src/agents/contexts/TOPOLOGY.md Moves “static references” ownership to agents/references
src/agents/contexts/seeds/turn-context.ts Removes lens selection import; uses local GraphSeedLens
src/agents/contexts/references/graph-ontology.md Deletes generated ontology reference
src/agents/contexts/about/elicitation-stage-eval.md Deletes legacy about doc
src/agents/contexts/about/elicitation-lifecycle.md Deletes legacy about doc
src/agents/contexts/_suspended/TOPOLOGY.md Deletes suspended contexts TOPOLOGY
src/.pi/extensions/subagents/prompt-assembly.ts Appends live skill manifest to background prompts
src/.pi/extensions/subagents/agents.ts Simplifies subagent manifest skills shape
src/.pi/extensions/compaction/index.ts Removes lens-switch anchor requirement; updates rationale
src/.pi/extensions/tests/registry.test.ts Updates expected commands/shortcuts after axis retirement
src/.pi/extensions/tests/chrome.test.ts Updates chrome projection fixtures (no legacy fields)
src/.pi/extensions/tests/brunch-data-context.test.ts Updates context tool fixtures (no legacy fields)
src/.pi/extensions/tests/agent-runtime-system-prompts.test.ts Updates prompt-pack topology tests after axis retirement
src/.pi/extensions/snapshots/subagent-explorer-prompt.md Updates subagent prompt snapshot with <brunch-skills>
src/.pi/components/runtime-posture/strategy-picker.ts Removes strategy picker component export
README.md Clarifies mixed-status Pi seam doc authority
package.json Removes data-model check scripts; updates pi-assets build copy list
memory/cards/orchestrator-tool-port--plan-check-tool.md Updates references to runtime topology after _suspended retirement
docs/README.md Clarifies mixed-status architecture doc authority
docs/design/ONTOLOGY_REVIEW_PROTOCOL.md Updates heuristic reference pointer
docs/architecture/poc-live-ship-runbook.md Updates runbook from posture-switch to mode-switch
CONTRIBUTING.md Clarifies mixed-status architecture doc authority
AGENTS.md Adds rule limiting new TOPOLOGY nesting depth

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/agents/skills/registry.ts
Comment thread src/agents/skills/registry.ts
Comment thread src/agents/runtime/TOPOLOGY.md
Comment thread package.json
Comment thread src/agents/skills/ingest/TOPOLOGY.md
@lunelson lunelson merged commit 32d94bd into next Jul 1, 2026
9 of 10 checks passed
@lunelson lunelson deleted the ln/fe-1085-elicitor-project-prep branch July 1, 2026 11:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants