Commit Graph

13 Commits

Author SHA1 Message Date
Bo 46ed7fee5a docs(3.0): sweep remaining daemon/schedule/hook prose + MIGRATION-3.0 (ag-qbw) (#520)
## What

Wave 2 of the AgentOps 3.0 honest-docs sweep (post-#518 audit, bead
ag-qbw). Makes the `docs/` prose match the shipped code: the daemon,
scheduler, factory, and all hooks were **DELETED** (not deprecated).
AgentOps is the in-session loop + context compiler; out-of-session
orchestration is delegated to a substrate (Gas City reference City /
Olympus). Mirrors the already-correct `docs/3.0.md`.

This makes `docs/3.0.md:150` ("the standalone
daemon/scheduler/overnight-runner surfaces are gone from ... live doc
prose") true for the enumerated wave-2 surfaces.

## Deleted (whole docs about deleted commands)

- `docs/scheduling.md` — entire `ao schedule` + `ao daemon` guide
-
`docs/contracts/{agentopsd-control-plane,agentopsd-schedule,routing-policy}.md`
- `docs/contracts/jobspec-openapi-v0.yaml`
- `docs/templates/dark-factory-schedule.yaml.example`
- `docs/design/olympus-v4-specs/*.md` — v4-port reference for the dead
Olympus → agentopsd extraction

## Reframed (prose → in-session + Gas City)

- Daemon/schedule/overnight: `agentops-3-youtube-starter-series.md`,
`agentops-3-pmf-evidence-loop.md`, `wiki-for-agents.md`,
`activation-profiles.md` (+ `profiles/README.md` profile rename),
`CI-CD.md` (overnight lane)
- Hooks → hookless + CI-as-authoritative-gate (hooks removed #511):
`knowledge-flywheel.md`, `troubleshooting.md`, `reference.md`,
`CI-CD.md`, `release-e2e-checklist.md`, `seed-definition.md`

## Catalog + cross-link cleanup (no broken links)

- `documentation-index.md` — removed deleted-doc rows + the v4 section
- `contracts/index.md` — removed deleted-contract cards
- `rfcs/0002-jobspec-openapi-v0.md` marked superseded; `SCHEMAS.md`,
`templates/README.md` cross-links fixed

## Created

- `docs/MIGRATION-3.0.md` (from the approved draft) + catalog row +
mkdocs nav entry

## Gates (green for this PR's surfaces)

- Link check: **2723 links, 0 broken**
- Contracts structural floor: **PASS (45 contracts)**
- Contract compatibility (orphans): **PASS**
- markdownlint (all changed/new files): **clean**
- `heal.sh --strict`: **All clean**
- mkdocs-strict: my new doc + nav entry build cleanly. The strict build
is **red on main for pre-existing reasons outside this scope** —
`docs/_hooks/gen_cli_reference.py` FATALs on missing `cli/docs/HOOKS.md`
(hooks removed #511, generator not updated; release-mechanics domain)
and `docs/3.0.md:172` links `../PRODUCT.md`/`../GOALS.md` (root files
outside the docs tree). Both confirmed present on `origin/main`; filed
for wave 3.

## Scope notes

- Did **not** touch `CHANGELOG.md`, `cli/`, or version files (parallel
worker owns release mechanics).
- The audit grep still matches ~40 more out-of-scope `docs/` files
(contracts/*, code-map, comparisons, narrative pages, runbooks). Filed
as **wave 3 (ag-p7j)**.

Closes-scenario: ag-qbw#doc-sweep-2
Bounded-context: BC1-Corpus
Evidence: docs/3.0.md
2026-05-24 18:27:24 -04:00
Bo 1ba0ca8120 feat(rip)!: kill schedule/plans/watch/overnight commands+engines — GC owns scheduling (soc-2rtm0 #kill-schedule-overnight wave3-4) (#514)
Wave 3+4 of the soc-2rtm0 orchestration-substrate rip. Operator
decision: **kill the schedule/plans/watch/overnight commands AND their
engines entirely** — GC owns all scheduling/overnight/watch; AgentOps
keeps only rpi/evolve/crank/swarm as loops.

## Killed (commands + engines)
- `cli/cmd/ao/`: `overnight*.go` (overnight, council, curator, packets,
setup, longhaul, daemon, tier1), `dream_subcycle.go`, `schedule.go`,
`watch.go`, `plans*.go` (+ all tests).
- `cli/internal/schedule/` — clean delete (only `schedule.go` +
`agentopsd.go` imported it).
- `cli/internal/overnight/` — the overnight engine, deleted whole.
- Daemon refs severed (daemon stays, wave 5): removed `agentopsd.go`
dream-executor + crash-recovery + `--schedule-file` loading; removed the
`dream` soak scenario.
- Removed `ao init --with-schedule` (seeded config for the now-dead
daemon scheduler).
- Retired the `dream` skill (claude + codex) to a GC-pointer stub.

## KEEP-feature severance (HARD CONSTRAINT)
- **harvest** (KEEP): lock helpers
(`LockIsStale`/`ReadLockPID`/`ProcessAlive`/`WriteLockPID`)
**extracted** from `overnight/recovery.go` into new
`cli/internal/lockfile` package; `harvest.go` repointed. Generic
process-lock machinery, not overnight-specific.
- **forge** (KEEP): `writeJSONAtomic` + `buildCuratorID` + curator-queue
types **extracted** into `cli/cmd/ao/forge_curator_id.go`; forge
curator-queue enqueue path preserved.
- **evolve** (KEEP): the `--dream-first`/`--dream-only` Phase-1 dream
sub-cycle was **severed** (capability genuinely overnight/dream-only).
**LOST CAPABILITY** — flagged below.
- `forge/runmine.go` + `wiki/artifact.go` only referenced overnight in
comments (no real import) — untouched.

## CI gates / docs / fixtures reconciled
- Removed `dream-end-user-coverage` GOALS gate +
`scripts/check-schedule-example.sh` + `schedule.yaml.example` +
`goals-affects-files.yaml` entry; updated GOALS Directive #8.
- Fixed `cli-command-surface` canary: heading counts 72/194/266 →
68/179/247, dropped deleted `plans.go` artifact check.
- Deleted `dream-software-factory-operator` eval; dropped deleted
`plans.go` check from `session-continuity-context` eval.
- Regenerated `COMMANDS.md`, `cli-skills-map.md`, `registry.json`;
regenerated codex hashes.
- No dedicated validate.yml/ci-jobs.yaml job existed for these surfaces
(verified) — `validate-ci-policy-parity` stays PASS.

## Lost capability (flagged)
- `ao evolve --dream-first` / `--dream-only` (run the
knowledge-compounding dream loop before/instead of code cycles) is gone.
Knowledge compounding now runs out-of-session via GC. The nightly-CI
dream-cycle proof job (built on KEEP harvest/forge/inject/defrag
primitives) is unaffected.

## Verification (all green)
`cd cli && gofmt -l` clean · `go build ./...` · `go vet ./...` · `go
test ./...` (zero FAIL) · `tests/smoke-test.sh` ·
`tests/cli/test-json-flag-consistency.sh` (0 errors) ·
`scripts/test-agentops-contract-canaries.sh` (**failures=0**) ·
doc-release gate · `heal --strict` clean · skill-lint · codex parity ·
ci-policy-parity.

## Follow-up (out of scope, build-green-safe to defer)
Narrative docs (`docs/scheduling.md`, `docs/ARCHITECTURE.md`,
comparisons, etc.) still mention the killed `ao overnight`/`ao schedule`
commands in prose. No CI gate validates ao-subcommand existence in
narrative docs, so these do not block; a doc-sweep is a separate
follow-up.

Closes-scenario: soc-2rtm0#cascade-rip
Bounded-context: BC5-Runtime
Evidence: .agents/discovery/2026-05-24-rip-caller-map.md
2026-05-24 14:56:20 -04:00
Bo f7cc505a7a fix(agentopsd): harden AI smell surfaces (soc-0l5z #ai-smell-hardening) (#389)
## Summary
- Replace the plans manifest shape-only stub with projection-backed
daemon state.
- Gate llmwiki placeholder outputs behind explicit opt-in and make fake
daemon execution test/demo-only.
- Refresh stale Olympus-ported docs and tune README/PRODUCT claims to
default-safe runtime behavior.
- Repair strict docs-site and hook-lease inventory drift surfaced by the
merge gate.

## Validation
- `scripts/pre-push-gate.sh --fast`
- `go test ./internal/daemon ./internal/llmwiki ./cmd/ao`
- `bash tests/docs/validate-doc-release.sh`
- `scripts/docs-build.sh --check`
- `bash scripts/validate-sovereignty-proof-citations.sh`
- `bash scripts/check-hook-lease-inventory.sh`

Closes-scenario: soc-0l5z#ai-smell-hardening
Bounded-context: BC5-Runtime
Evidence: validate-sovereignty-proof-citations: scanned 3 pages, 16
citations
2026-05-20 21:31:38 -04:00
Bo d69f9f0c13 feat(architecture): intent-to-loop hexagon doc + BDD skill scaffolding (soc-4d0r) (#321)
## What

Foundation slice for the **soc-qk4b** epic ('TDD-crank all skills into
intent-to-loop hexagons'). The epic description listed these artifacts
as 'What already exists' — but they were never committed to main.
Without them, the 6 sub-issues (`soc-qk4b.1` through `.6`) cannot start.

## New

`docs/architecture/intent-to-loop-hexagon.md` — process-level hexagon
connecting [Ports and
Adapters](../blob/main/docs/architecture/ports-and-adapters.md)
(structure) to [Operating
Loop](../blob/main/docs/architecture/operating-loop.md) (execution).
Defines the 8-port chain with driving/driven/guard adapters and
done-state rules:

```
Intent
  -> shape_intent      -> AcceptanceExample
  -> persist_intent    -> WorkItem / Bead
  -> plan_slices       -> Slice
  -> execute_slice     -> implementation
  -> execute_wave      -> wave packet
  -> validate_acceptance -> CriterionVerdict
  -> record_evidence   -> Evidence
  -> steer_goal        -> LearningDisposition
```

## Skill changes

Source-of-truth in `skills/`, mirrored to `skills-codex/` (re-hashed via
`scripts/regen-codex-hashes.sh`):

| Skill | Change |
|---|---|
| `plan` | Require Gherkin block or upstream-scenario link for
feature/bug/product-facing behavior issues; `hexagon:` boundary block
for non-trivial plans and beads. |
| `discovery`, `rpi`, `validate`, `validation`, `beads`,
`shared/validation-contract` | Reference the intent-to-loop hexagon as
the boundary contract. |

## Doc plumbing

- `docs/architecture/{index,operating-loop,ports-and-adapters}.md` +
`docs/contracts/skill-ports-and-adapters.md`: cross-link to new hexagon.
- `docs/templates/{intent-issue,slice-validation}.md`: carry hexagon
block into intent issues and slice validation plans.
- `mkdocs.yml`, `docs/documentation-index.md`: register new doc in nav.

## AGENTS.md

- bd integration block regenerated (`v:1 profile:full hash:f65d5d33`).
- Session Completion section added with **conditional** `bd dolt push`
wording — passes `scripts/validate-bd-closeout-contract.sh`.

## Validation

- ✅ `scripts/pre-push-gate.sh --fast`: passed (1 pre-existing warn on
`scenarios/trace` executable-spec link integrity, unrelated)
- ✅ `scripts/validate-bd-closeout-contract.sh`: passes
- ✅ `scripts/regen-codex-hashes.sh`: 7 manifest hashes updated for
parity
- ✅ All 8 codex JSON files: syntactically valid
- ✅ Self-review per pre-commit hook: no removed error handling, no
changed defaults, no silent data loss

## Origin

Discovered during analysis of merged branch
`refactor/council-mode-taxonomy-soc-ml4l` (PR #293) on 2026-05-18 — the
BDD/hexagon scaffolding sat uncommitted in the worktree after #293
merged. Filed as `soc-4d0r` with `discovered-from: soc-qk4b`. This PR
lands the work cleanly off fresh `main`.

## Unblocks

- soc-qk4b (epic)
- soc-qk4b.1 — Control ledger for 77-skill hexagon crank
- soc-qk4b.2 — Loop priority skills (hexagon/TDD crank)
- soc-qk4b.3 — Factory priority skills
- soc-qk4b.4 — Corpus priority skills
- soc-qk4b.5 — Validation priority skills
- soc-qk4b.6 — Runtime priority skills

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Codex <codex@example.invalid>
2026-05-18 16:48:14 -04:00
Bo 3a5ed9a0a3 feat(loop): enforce vertical-slice bead evidence (#287) 2026-05-17 01:06:53 -04:00
Boden Fuller 83fb355f0e fix(templates): point pre-mortem artifact path at .agents/council/
A6 from the 2026-05-16 BDD/Gherkin/XP loop audit: intent-issue.md and
slice-validation.md placeholders pointed pre-mortem evidence at
.agents/research/*.md, but /pre-mortem writes
.agents/council/YYYY-MM-DD-pre-mortem-*.md. Fixes copy drift that
taught new loop users the wrong artifact path.

Closes soc-z3qo.5
2026-05-16 19:10:27 -04:00
Boden Fuller d722ed5c01 feat(skills): operating-loop doctrine + billboard refactor for 15 process skills
Introduce the CDLC operating loop as the execution discipline that runs
through the existing DDD/hexagonal seams, refactor 15 process skills to
billboard shape per the agreed tier line caps, and land the DDD frontmatter
v2 backfill (consumes/produces/context_rel) that was in flight on this
branch.

Doctrine + templates:
- docs/architecture/operating-loop.md: operational spine (BDD intent ->
  vertical slices -> conflict-free wave -> bead acceptance -> evidence)
- docs/templates/intent-issue.md: BDD-shaped intent issue template
- docs/templates/slice-validation.md: per-slice validation plan template
- docs/cdlc.md: new section linking the conceptual seven phases to the
  operating loop; operating-loop.md added to companion docs
- docs/templates/README.md + docs/documentation-index.md: catalog updates
- GOALS.md Directive #12: BDD intent + vertical slice decomposition gate
- .agents/research/2026-05-15-cdlc-dojo-doctrine.md (gitignored, local-only):
  compact doctrine source for the maintainer

Process-skill sweep (15 skills):
- "Loop position" section added to: rpi, discovery, plan, implement, crank,
  validation, brainstorm, pre-mortem, council, swarm, autodev, post-mortem,
  forge, retro, vibe.
- Billboard refactor: bulk procedural content extracted from SKILL.md to
  per-skill references/*.md for discovery, validation, implement, crank,
  swarm, post-mortem, vibe (5,632 -> 3,205 SKILL.md lines, -43%, with
  every new references/*.md linked back from its SKILL.md per the repo
  gate).
- Restored ACT.3/ACT.4 sections in post-mortem after the billboard pass to
  keep validate-next-work-contract-parity.sh green.

Validation:
- tests/skills/lint-skills.sh: all 15 PASS within declared tier caps
- scripts/audit-codex-parity.sh: PASS for all 15
- scripts/validate-next-work-contract-parity.sh: PASS
- scripts/pre-push-gate.sh --fast: PASS (0 failures, 50 skipped)
- cli/embedded mirror synced via 'cd cli && make sync-hooks'

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 15:42:37 -04:00
Boden Fuller e3a0dff442 fix: resolve merge conflicts with main (types.go, templates README) 2026-05-05 08:51:37 -04:00
Boden Fuller e4dc63808f docs(daemon): add dark factory schedule template 2026-05-04 22:28:44 -04:00
Claude abc7765b94 feat(schedule): ship tracked stock starter at docs/templates/
The dream-end-user-coverage gate (GOALS.md Directive #8 / soc-hxnr.6) demands
a stock schedule example, but its previous canonical at .agents/schedule.yaml.example
is gitignored under the no-tracked-agents policy — so the gate had no
propagatable file to assert on and stayed red across environments.

Promote the example to docs/templates/schedule.yaml.example (alongside the
existing operator-facing templates), update the gate to prefer that path and
fall back to the operator's runtime .agents/ copy, and re-anchor the
testdata mirror's source-of-truth comment.

Add TestParser_StockExampleMirrorMatchesCanonical to lock the mirror to the
canonical via the parser — drift in name/cron/job_type fails the build, so
operators always get the same schedules the parser tests cover.
2026-05-04 07:00:27 +00:00
Boden Fuller ec188aca25 fix(docs): rename docs/INDEX.md -> docs/documentation-index.md to resolve case collision with docs/index.md
docs/INDEX.md (contract catalog) and docs/index.md (MkDocs landing) shared the
same case-folded name on case-insensitive filesystems, leaving the working tree
in a phantom-modified state and breaking contract-compatibility-gate when the
script read whichever file the OS resolved at run time.

Resolves TASK-1 + TASK-2 of .agents/plans/2026-04-26-resolve-docs-index-case-collision.md:
- Move catalog content from HEAD:docs/INDEX.md into docs/documentation-index.md
- Repoint contract validators (scripts/check-contract-compatibility.sh,
  scripts/contract-orphans-allowlist.txt) and their tests at the new path
- Update navigation references across README.md, AGENTS.md, CLAUDE.md, and the
  docs/ tree (newcomer-guide, CONTRIBUTING, CI-CD, plans/, positioning/,
  templates/, contract examples)
- Replace stale docs/README.md mentions in CLAUDE.md / AGENTS.md / repo-execution
  profile example with docs/index.md (the actual MkDocs landing)

Verification:
- bash scripts/check-contract-compatibility.sh -> 0 failures, 24 contracts catalogued
- bash tests/scripts/test-contract-compatibility-gate.sh -> 7/7 PASS (verified pre-rebase)
- bash tests/skills/test-repo-native-orchestration.sh -> 28/28 PASS (verified pre-rebase)
- git ls-files | awk casefold-dup scan -> empty

TASK-3 (casefold-collision guard script) and TASK-4 (worktree disposition) from
the plan remain to be done in a follow-up.
2026-04-26 19:32:13 -04:00
Boden Fuller 7a2e321d94 feat: ship dream-cycle and contribution proofs 2026-04-09 17:49:15 -04:00
Boden Fuller 37d4b5b2ae Merge branch 'codex/rpi-supervisor-cli' into main 2026-02-21 19:41:50 -05:00