disinto-ops/prerequisites.md

98 lines
4.1 KiB
Markdown
Raw Normal View History

2026-04-05 15:01:21 +00:00
# Prerequisite Tree
<!-- Last updated: 2026-04-05 -->
## Objective: Foundation — Core agent loop (dev → CI → review → merge)
- [x] dev-agent picks up backlog issues (#dev/dev-agent.sh exists)
- [x] review-agent reviews PRs (#review/review-pr.sh exists)
- [x] CI integration with Woodpecker (#lib/ci-helpers.sh exists)
- [ ] Stale in-progress recovery — dev-poll does not clean up failed sessions (#224)
- [ ] Agent race condition — dev-bot and dev-qwen claim same issues (#160)
- [ ] Dispatcher grep fails in Alpine (#150)
Status: BLOCKED — 12 stale in-progress issues block pipeline throughput (#224)
## Objective: Foundation — Supervisor health monitoring
- [x] supervisor-run.sh exists and runs via cron
- [x] preflight.sh collects health data
Status: READY
## Objective: Foundation — Planner gap analysis against vision
- [x] Planner formula exists (run-planner.toml v4)
- [x] planner-run.sh cron wrapper exists
- [ ] First planning run establishing prerequisite tree (this run)
Status: READY
## Objective: Foundation — Multi-project support
- [x] Per-project TOML config (projects/*.toml)
- [x] load-project.sh helper
Status: DONE
## Objective: Foundation — Knowledge graph for structural defect detection
- [ ] networkx package installed in agents container (#220)
- [x] build-graph.py exists in lib/
Status: BLOCKED — #220 networkx missing from Docker image
## Objective: Foundation — Predictor-planner adversarial feedback loop
- [x] Predictor formula exists (run-predictor.toml)
- [x] Planner prediction triage step defined
- [ ] Prediction workflow labels created on Forgejo (#225)
Status: BLOCKED — prediction labels do not exist, predictor cannot file labeled predictions
## Objective: Adoption — One-command bootstrap (disinto init → disinto up)
- [ ] disinto init re-run stability (#158)
- [ ] disinto init repo creation API endpoint (#164)
- [ ] Prediction labels created during init (#225)
Status: BLOCKED — init has multiple bugs preventing clean bootstrap
## Objective: Adoption — Built-in Forgejo + Woodpecker CI
- [x] Docker compose with Forgejo + Woodpecker
- [ ] Woodpecker OAuth2 redirect URI mismatch (#172)
- [ ] WOODPECKER_HOST override in docker-compose.yml (#178)
Status: BLOCKED — OAuth issues prevent Woodpecker token generation (#172, #178 in-progress/stuck)
## Objective: Adoption — Landing page communicating value proposition
- [x] Website addressable exists (disinto.ai)
- [ ] Website is not observable — no engagement measurement
Status: BLOCKED — no evidence process connected to website
## Objective: Adoption — Example project demonstrating full lifecycle
- [ ] No example project exists
- [ ] Requires working bootstrap (disinto init)
Status: BLOCKED — depends on bootstrap stability
## Objective: Ship (Fold 2) — Deploy profiles per artifact type
- [ ] No deploy profiles defined
- [ ] Requires working CI pipeline
Status: BLOCKED — depends on Foundation completion
## Objective: Ship (Fold 2) — Vault-gated fold transitions
- [ ] Vault redesign in progress (#73-#77)
- [x] Vault PR workflow documented (docs/VAULT.md)
- [ ] vault pending/approved/fired directories partially set up
Status: BLOCKED — vault redesign incomplete
## Objective: Ship (Fold 2) — Engagement measurement baked into deploy pipelines
- [ ] No engagement measurement exists
- [ ] No observables yet (AGENTS.md confirms)
Status: BLOCKED — depends on deploy profiles + landing page observability
## Objective: Ship (Fold 2) — Rent-a-human for gated channels
- [x] run-rent-a-human formula exists
- [ ] Not yet exercised in production
Status: READY
## Objective: Ship (Fold 2) — Assumptions register
- [ ] No assumptions register exists
Status: BLOCKED — not started
## Objective: Learn (Fold 3) — Observable-driven planning
- [ ] No observables exist yet
Status: BLOCKED — depends on Ship milestone (engagement measurement)
## Objective: Learn (Fold 3) — Predictor challenges assumptions against signals
- [ ] Requires observables + assumptions register
Status: BLOCKED — depends on Ship milestone
## Objective: Learn (Fold 3) — Audience variation + signal detection
- [ ] Requires observables
Status: BLOCKED — depends on Ship milestone