| Delivery methodology & backlog | docs/backlog/README.md | — |
| Working on a work item | docs/backlog/AGENTS.md | — |
| Archive | docs/backlog/archive/README.md | — |
| Infer project_name from the repo directory, as its own default already promises | docs/backlog/archive/WI-001-infer-project-name.md | done |
| Accept --set k=v, and refuse an unparsed positional instead of silently retargeting | docs/backlog/archive/WI-002-set-flag-parsing.md | done |
| Stop .ai/rungs.toml instructing a fix that rungs render cannot perform | docs/backlog/archive/WI-003-render-reports-what-it-cannot-reemit.md | done |
| Reconcile rungs --help with the README's command table | docs/backlog/archive/WI-004-help-completeness.md | done |
| End doctor with a recommended next command | docs/backlog/archive/WI-005-doctor-next-step.md | done |
| A parameter reference, generated from the manifests | docs/backlog/archive/WI-006-parameter-reference.md | done |
| A first-hour guide — the surface between install and the first work item | docs/backlog/archive/WI-007-first-hour-guide.md | done |
| Stop a template token switching off link checking for a whole file | docs/backlog/archive/WI-008-link-gate-checks-every-file.md | done |
| Extract a second research corpus — six public agent frameworks | docs/backlog/archive/WI-009-public-agent-framework-corpus.md | done |
| A fixed template and method for the public-framework corpus | docs/backlog/archive/WI-010-framework-extraction-template.md | done |
| Extract SWE-agent — the minimal coding-agent loop | docs/backlog/archive/WI-011-extract-swe-agent.md | done |
| Extract LangGraph — state, checkpoints, and long-running workflows | docs/backlog/archive/WI-012-extract-langgraph.md | done |
| Extract the OpenAI Agents SDK — a deliberately small primitive surface | docs/backlog/archive/WI-013-extract-openai-agents-sdk.md | done |
| Extract Pydantic AI — typing, injection, and testable agents | docs/backlog/archive/WI-014-extract-pydantic-ai.md | done |
| Extract the Microsoft Agent Framework — enterprise .NET and multi-agent workflows | docs/backlog/archive/WI-015-extract-microsoft-agent-framework.md | done |
| Extract OpenHands — a shipped autonomous agent, sandboxing and scale | docs/backlog/archive/WI-016-extract-openhands.md | done |
| Synthesize the framework corpus and reconcile it with the pattern catalogue | docs/backlog/archive/WI-017-framework-synthesis.md | done |
| Extend public-agent research across memory, evaluation, products, and protocols | docs/backlog/archive/WI-018-follow-on-public-agent-research.md | done |
| Define methods for the follow-on public-agent research | docs/backlog/archive/WI-019-follow-on-research-method.md | done |
| Extract Letta Code — durable memory, identity, and continual learning | docs/backlog/archive/WI-020-extract-letta-code.md | done |
| Extract Inspect AI — reproducible agent evaluation and sandboxed evidence | docs/backlog/archive/WI-021-extract-inspect-ai.md | done |
| Extract Aider — git-first coding, repository context, and validation | docs/backlog/archive/WI-022-extract-aider.md | done |
| Extract goose — local extensibility, MCP/ACP, and session isolation | docs/backlog/archive/WI-023-extract-goose.md | done |
| Extract Google ADK — multi-language evolution, task delegation, and evaluation | docs/backlog/archive/WI-024-extract-google-adk.md | done |
| Extract MCP — the tool and context interoperability boundary | docs/backlog/archive/WI-025-extract-mcp.md | done |
| Extract A2A — remote agent discovery, tasks, and artifacts | docs/backlog/archive/WI-026-extract-a2a.md | done |
| Extract DSPy — metric-driven agent program optimization | docs/backlog/archive/WI-027-extract-dspy.md | done |
| Synthesize the follow-on research and reconcile the catalogue | docs/backlog/archive/WI-028-follow-on-research-synthesis.md | done |
| Apply framework-derived patterns to shipped modules | docs/backlog/archive/WI-029-apply-framework-patterns-to-modules.md | done |
| Refresh Rift Forge research from the candidate branch | docs/backlog/archive/WI-030-refresh-rift-forge-research.md | done |
| Integrate transferable Rift Forge workflow capabilities into rungs | docs/backlog/archive/WI-031-integrate-rift-forge-capabilities.md | done |
| Sync public docs, roadmap, and frontend surfaces with the current product | docs/backlog/archive/WI-032-sync-docs-roadmap-frontend.md | done |
| Assess repo quality, improvements, and external-adoption readiness | docs/backlog/archive/WI-033-assess-quality-and-adoption-readiness.md | done |
| Remediate release-readiness findings | docs/backlog/archive/WI-034-remediate-readiness-findings.md | done |
| Prepare and execute the public rungs release | docs/backlog/archive/WI-035-public-release.md | rejected |
| Port updated design-system site surfaces and prepare the next package release | docs/backlog/archive/WI-036-design-system-versions.md | done |
| Act on the 2026-08-16 external review | docs/backlog/archive/WI-037-act-on-external-review.md | done |
| Make doctor report a repo's own defects, not only which modules it resembles | docs/backlog/archive/WI-038-doctor-explain-detectors.md | done |
| Detect an external issue tracker as a different paradigm, not as an absent backlog | docs/backlog/archive/WI-039-external-tracker-paradigm.md | done |
| Make every public surface agree on the first command, and name the vocabulary once | docs/backlog/archive/WI-040-public-surface-first-command.md | done |
| Decide whether cross-repo pattern evidence is ever in scope, and record it | docs/backlog/archive/WI-041-decide-cross-repo-evidence.md | done |
| Stop reporting `file.ts:387` code references as broken links | docs/backlog/archive/WI-042-link-line-references.md | done |
| Make `add` honour a detected paradigm instead of installing over it | docs/backlog/archive/WI-043-add-honours-paradigm.md | done |
| Resolve the open findings register | docs/backlog/archive/WI-044-resolve-open-findings.md | done |
| Execute gate self-test fixtures instead of only declaring them | docs/backlog/archive/WI-045-run-gate-self-tests.md | done |
| Make the site's "real output" label provable rather than asserted | docs/backlog/archive/WI-046-console-provenance.md | done |
| Implement `rungs backlog archive` | docs/backlog/archive/WI-047-backlog-archive-command.md | done |
| Act on the second external review | docs/backlog/archive/WI-048-act-on-second-external-review.md | done |
| Make plain `doctor` say that the analysis exists | docs/backlog/archive/WI-049-doctor-advertises-analysis.md | done |
| Refuse a board row whose group disagrees with the item's status | docs/backlog/archive/WI-050-board-reconciled-gate.md | done |
| Stop typing the site's gate and status numbers by hand | docs/backlog/archive/WI-051-derive-site-claims.md | done |
| Make detector applicability a declared property rather than two lists | docs/backlog/archive/WI-052-detector-applicability.md | done |
| Census `--explain` against every repo available, and publish the false-positive rate | docs/backlog/archive/WI-053-false-positive-census.md | done |
| Make `upgrade` re-register a module's gates | docs/backlog/archive/WI-054-upgrade-registers-gates.md | done |
| Make `upgrade` update the install record without touching diverged files | docs/backlog/archive/WI-055-upgrade-updates-record.md | done |
| Triage the self-test mismatches, and fix what they exposed | docs/backlog/archive/WI-056-triage-selftest-mismatches.md | done |
| Narrow the self-test mismatches, and locate the real cause | docs/backlog/archive/WI-057-selftest-setup.md | done |
| Implement the skill-extension opt-in, at every layer it was missing from | docs/backlog/archive/WI-058-skill-extensions.md | done |
| Wire the self-test runner in, and fix the four defects that blocked it | docs/backlog/archive/WI-059-selftest-wiring.md | done |
| Prepare the v0.2.0 release and close the release-integrity findings it surfaced | docs/backlog/archive/WI-060-release-0.2.0.md | done |
| Detect imperatives and stale command references in agent instructions | docs/backlog/archive/WI-061-imperative-staleness-detection.md | done |
| Decide what the concurrency module is — four commands, or the manual protocol it actually documents | docs/backlog/archive/WI-062-concurrency-phantom-commands.md | done |
| Make a fresh tracked findings register pass its own gate | docs/backlog/archive/WI-065-fresh-findings-baseline.md | done |
| Give consumers one exact Rungs CLI version source | docs/backlog/archive/WI-066-consumer-cli-pin.md | done |
| Reconcile backlog state when the integration branch has no local ref | docs/backlog/archive/WI-067-ref-only-integration-branch.md | done |
| Gate the packaged existing-repository consumer journey | docs/backlog/archive/WI-068-existing-repo-consumer-journey.md | done |
| Preserve gate-registry bytes on a no-op upgrade | docs/backlog/archive/WI-069-idempotent-gate-registration.md | done |
| Make both release fragment gates executable and non-vacuous | docs/backlog/archive/WI-070-release-fragment-gates.md | done |
| Canonicalize packed-consumer containment checks | docs/backlog/archive/WI-071-canonical-consumer-paths.md | done |
| Track the consumed release boundary | docs/backlog/archive/WI-072-release-consumption-boundary.md | done |
| Contain every emitted module path inside the consumer repository | docs/backlog/archive/WI-073-emitted-path-containment.md | done |
| Make release version sources format-aware and fail closed | docs/backlog/archive/WI-074-version-source-formats.md | done |
| Refuse landing while the integration branch is checked out | docs/backlog/archive/WI-075-land-checked-out-integration.md | done |
| Contain backlog archival inside the repository | docs/backlog/archive/WI-076-backlog-archive-containment.md | done |
| Make ejected checks genuinely package-independent | docs/backlog/archive/WI-077-standalone-ejected-checks.md | done |
| Require release exemptions from the current branch | docs/backlog/archive/WI-078-branch-local-release-exemptions.md | done |
| Protect every land-managed ref from checked-out worktrees | docs/backlog/archive/WI-079-land-managed-ref-safety.md | done |
| Refuse APFS emitted-path storage aliases | docs/backlog/archive/WI-080-apfs-emitted-path-collisions.md | done |
| Refuse land when detached-scratch verification lacks a trustworthy control | docs/backlog/archive/WI-081-land-scratch-verification-control.md | done |
| Normalize consumer text semantics without rewriting bytes | docs/backlog/archive/WI-082-consumer-crlf-normalization.md | done |
| Clear the site fast-uri security audit finding | docs/backlog/archive/WI-083-site-audit-fast-uri.md | done |
| Evaluate tool maturity, improvement candidates and a local interface | docs/backlog/archive/WI-084-tool-evaluation.md | done |
| Complete the consumer promises rungs already ships or has accepted | docs/backlog/archive/WI-085-existing-promises-remediation.md | done |
| Deliver the declared shell-safety hook to consumers, or report that a harness cannot carry it | docs/backlog/archive/WI-086-consumer-hook-delivery.md | done |
| Make every shipped self-test fixture execute, or state exactly why it cannot | docs/backlog/archive/WI-087-executable-self-test-coverage.md | done |
| Report observed fast-tier wall-clock against the declared budget | docs/backlog/archive/WI-088-observed-fast-budget-reporting.md | done |
| Keep a failed worktree status read unknown instead of reporting it clean | docs/backlog/archive/WI-089-truthful-worktree-state.md | done |
| Verify the integrated candidate as a packed consumer and hand the canary step to WI-064 | docs/backlog/archive/WI-090-integrated-consumer-verification.md | done |
| Stop the derived-index freshness rule counting the template's placeholder row as a record | docs/backlog/archive/WI-091-index-placeholder-rows.md | done |
| Make the eject summary name every retained command | docs/backlog/archive/WI-092-eject-summary-retained-commands.md | done |
| Make `add` after `init` extend the install record instead of replacing it | docs/backlog/archive/WI-093-add-merges-install-record.md | done |
| Make `check <tier>` mean the tier on both launcher surfaces | docs/backlog/archive/WI-094-check-tier-positional.md | done |
| Make the large-value assertion rule mechanical and cap the test heap | docs/backlog/archive/WI-095-guarded-large-assertions.md | done |
| Anchor the private inline-interpreter hook to the interpreter's own arguments | docs/backlog/archive/WI-096-hook-flag-anchoring.md | done |
| Retire the design-sync gate that presupposes a command that does not exist | docs/backlog/archive/WI-097-retire-phantom-design-gate.md | done |
| Make an interrupted install recoverable — journal first, atomic writes, a retry that keeps ownership | docs/backlog/archive/WI-098-recoverable-install.md | done |
| Prepare the v0.5.0 release | docs/backlog/archive/WI-099-release-0.5.0.md | done |
| Add a local interface for repository inspection and gate execution | docs/backlog/archive/WI-100-local-operator-interface.md | done |
| Backlog | docs/backlog/BACKLOG.md | — |
| Findings | docs/backlog/FINDINGS.md | — |
| Items | docs/backlog/items/README.md | — |
| Resolve modules from roots outside the package, and record where each installed module came from | docs/backlog/items/WI-063-external-module-roots.md | proposed |
| Bootstrap Arena Lab as the first direct Rungs consumer | docs/backlog/items/WI-064-arena-lab-dogfood-bootstrap.md | accepted |
| Validate operator workflow extensions and register admission criteria | docs/backlog/items/WI-101-operator-workflow-extensions.md | proposed |
| Short imperative title | docs/backlog/TEMPLATE.md | proposed |