workflow: replace docs/roadmap.md with Gitea issue backlog

The forward queue moves out of the in-tree markdown file and into
Gitea issues at http://192.168.178.103:3000/Brummel/AILang/issues.
Labels: kind:{milestone,feature,todo,idea} + prio:{p1,p2,p3}
+ state:in-progress. Big chunks live as Gitea milestones
(containers) with full prose in the description; smaller items are
standalone issues. Browse-and-filter scales constant against
growing item count; the previous markdown file was 1059 lines, of
which ~850 were already-closed-entry verlauf (the same failure
class the JOURNAL cut removed).

Sync-drift Code<>Tracker mitigation: Soft-convention `closes #N`
/ `refs #N` in commit bodies — Gitea auto-closes the issue on
push. Captured in user-level CLAUDE.md (~/.claude/CLAUDE.md, not
in this commit) as the durable rule; no hook enforcement.

In-repo changes:

- docs/roadmap.md deleted.
- CLAUDE.md (project): Code-layout drops roadmap; /boss gating
  retargeted; Roles section rewritten with a new "Gitea issues"
  bullet (URL + tea-CLI snippet) and the closes-#N trailer note.
- skills/boss/SKILL.md: 10 sites retargeted, plus Step 1 now
  prescribes `tea issues ls --labels prio:p1` as the queue read.
- skills/brainstorm/SKILL.md: Step 7.5 no-override BLOCK now
  files a Gitea issue via `tea issues create` instead of
  appending a roadmap entry; spec deletion stays.
- skills/audit/SKILL.md + ailang-architect.md: deferral
  requirement and debt-heuristic retargeted; forward-intent
  belongs in the Gitea backlog.
- skills/fieldtest/SKILL.md, skills/docwriter/SKILL.md +
  ailang-docwriter.md: roadmap → backlog.
- design/contracts/honesty-rule.md: forward intent lives in
  the Gitea backlog (pinned phrases unchanged).
- design/INDEX.md: Docs bullet drops roadmap, adds the backlog
  URL.
- crates/ailang-core/tests/docs_honesty_pin.rs: two assert
  messages retargeted (assertion bodies unchanged).
- bench/architect_sweeps.sh: Sweep-4 TABU extended with
  `docs/roadmap\.md` so the deleted path cannot quietly regrow
  as a cross-reference in design/contracts/.

Verification:

- cargo build --workspace clean.
- cargo test --workspace: 647 passed, 0 failed, 2 ignored.
- bench/architect_sweeps.sh exit 0 (all five sweeps clean, incl.
  new TABU).
- grep over the live tree (excluding docs/specs/, docs/plans/)
  shows zero residual docs/roadmap.md refs.

Not touched: ~55 historical files under docs/specs/ and
docs/plans/ that mention docs/roadmap.md. Snapshot-character,
analogous to the JOURNAL-cut precedent — historical specs are
not mass-edited just because a live file was retired; their
mentions were correct at write time.
This commit is contained in:
2026-05-20 14:48:27 +02:00
parent 99df14c792
commit 93887aa03b
13 changed files with 82 additions and 1122 deletions
+20 -14
View File
@@ -43,7 +43,7 @@ it measurably improves correctness or removes redundancy.
| `bench/` | Regression harnesses (`check.py`, `compile_check.py`, `cross_lang.py`) and the throughput-and-latency runner (`run.sh`); `bench/reference/` holds the hand-C corpus for cross-language ratios |
| `examples/` | AILang fixtures used by tests and benches |
| `design/` | The canonical contract ledger — `design/INDEX.md` (sole addressable spine: a typed Contracts + Models table), `design/contracts/` (prose-authoritative test-linked invariants), `design/models/` (onboarding whitepapers) |
| `docs/` | Specs and roadmap`docs/specs/` (per-milestone design specs), `docs/plans/` (per-iteration plans), `docs/roadmap.md` (forward queue), `PROSE_ROUNDTRIP.md`. Project history lives in `git log`. |
| `docs/` | Specs and plans`docs/specs/` (per-milestone design specs), `docs/plans/` (per-iteration plans), `PROSE_ROUNDTRIP.md`. Project history lives in `git log`; the forward queue lives in Gitea issues (see "Roles" section below). |
| `skills/` | Project-local skill definitions and their agents. See `skills/README.md` for the skill table, agent roster, and discovery layout. |
## Skill system
@@ -54,8 +54,8 @@ are sharper tools, not a replacement for orchestrator judgement.
Specs go to `docs/specs/<milestone>.md`, plans to
`docs/plans/<iteration>.md`.
Autonomous orchestrator mode — picking the next iter from
`docs/roadmap.md` and looping until done-state — is gated to the
Autonomous orchestrator mode — picking the next iter from the
Gitea issue backlog and looping until done-state — is gated to the
user-invoked `/boss` skill (`skills/boss/SKILL.md`). Outside
`/boss`, the default is interactive collaboration: the user asks,
Claude responds, Claude stops.
@@ -197,7 +197,7 @@ Vocabulary note: pre-2026-05-09 git history uses "iter" / "family";
current vocabulary is "iteration" / "milestone". Old commits are
not retroactively renamed.
## Roles of the `design/` ledger, `git log`, `docs/roadmap.md`, `docs/specs/`, `docs/plans/`
## Roles of the `design/` ledger, `git log`, Gitea issues, `docs/specs/`, `docs/plans/`
- **The `design/` ledger** is the canonical specification. It
describes what AILang *is*: schema, semantics, invariants, runtime
@@ -210,7 +210,7 @@ not retroactively renamed.
the same iteration. The `design/` ledger is also the artefact
`ailang-architect` checks the code against during drift review.
A contract describes only the actual present state; forward intent
goes to `docs/roadmap.md`, history and rationale to `git log`
goes to the Gitea backlog, history and rationale to `git log`
(see `design/contracts/honesty-rule.md`).
- **`git log`** is the project history. Iter and audit commit
@@ -219,15 +219,21 @@ not retroactively renamed.
these bodies at commit time; they are the durable record. Read
recent state with `git log -5 --format=full`; chronological scan
with `git log --oneline -30`; per-milestone scope with
`git log <prev-milestone-close>..HEAD --format=full`.
`git log <prev-milestone-close>..HEAD --format=full`. Commits
that close a backlog issue reference it via `closes #N` in the
body; Gitea auto-closes the issue on push.
- **`docs/roadmap.md`** (since 2026-05-10): the priority-ordered
forward queue — milestones, features, todos, and ideas. The
orchestrator owns this file and is responsible for keeping it
current: adding new entries, reprioritising, removing items
that are done or dropped. Entries are checkbox lines; finished
items get checked off, then removed once they stop being
interesting context.
- **Gitea issues** (since 2026-05-20) are the priority-ordered
forward queue — milestones, features, todos, and ideas. Browse:
http://192.168.178.103:3000/Brummel/AILang/issues. CLI: `tea
issues ls --labels prio:p1` etc. Labels: `kind:{milestone,
feature,todo,idea}` and `prio:{p1,p2,p3}`. Big chunks that get
their own `docs/specs/` entry live as Gitea **milestones**
(containers) plus a `kind:milestone` issue; smaller items are
standalone issues. The orchestrator owns the backlog and is
responsible for keeping it current: opening new issues,
re-labelling for priority, closing on completion (typically via
the `closes #N` commit-body trailer).
- **`docs/specs/<milestone>.md`** (since 2026-05-09): per-milestone
design spec produced by `skills/brainstorm`. Hard-gate before any
@@ -239,4 +245,4 @@ not retroactively renamed.
Together these answer three questions: "what is the language right
now?" (the `design/` ledger), "how did we get here?" (`git log`),
and "what's next?" (roadmap).
and "what's next?" (Gitea backlog).