Back to Get Shit Done

Ingest Docs

commands/gsd/ingest-docs.md

1.40.01.7 KB
Original Source
<objective> Build the full `.planning/` setup (or merge into an existing one) from multiple pre-existing planning documents — ADRs, PRDs, SPECs, DOCs — in one pass.
  • Net-new bootstrap (--mode new, default when .planning/ is absent): produces PROJECT.md + REQUIREMENTS.md + ROADMAP.md + STATE.md from synthesized doc content, delegating final generation to gsd-roadmapper.
  • Merge into existing (--mode merge, default when .planning/ is present): appends phases and requirements derived from the ingested docs; hard-blocks any contradiction with existing locked decisions.

Auto-synthesizes most conflicts using the precedence rule ADR > SPEC > PRD > DOC (overridable via manifest). Surfaces unresolved cases in .planning/INGEST-CONFLICTS.md with three buckets: auto-resolved, competing-variants, unresolved-blockers. The BLOCKER gate from the shared conflict engine prevents any destination file from being written when unresolved contradictions exist.

Inputs: directory-convention discovery (docs/adr/, docs/prd/, docs/specs/, docs/rfc/, root-level {ADR,PRD,SPEC,RFC}-*.md), or an explicit --manifest <file> YAML listing {path, type, precedence?} per doc.

v1 constraints: hard cap of 50 docs per invocation; --resolve interactive is reserved for a future release. </objective>

<execution_context> @/.claude/get-shit-done/workflows/ingest-docs.md @/.claude/get-shit-done/references/ui-brand.md @/.claude/get-shit-done/references/gate-prompts.md @/.claude/get-shit-done/references/doc-conflict-engine.md </execution_context>

<context> $ARGUMENTS </context> <process> Execute the ingest-docs workflow end-to-end. Preserve all approval gates (discovery, conflict report, routing) and the BLOCKER safety rule. </process>