mirror of
https://github.com/boshu2/agentops.git
synced 2026-09-14 15:08:13 +08:00
238964fdd2
Workflows get the skills treatment (operator decision): canonical source in the product tree, installed by a product verb, Claude-only labeled as such. **What moves:** all seven Claude workflow scripts + README migrate from force-added exceptions inside the gitignored `.claude/` to a tracked top-level `workflows/` (sibling of `skills/`) — the four existing conveyors plus `audit-dimensions`, `verify-fixes`, `implement-wave`: three thin, args-parameterized orchestration conveyors extracted from this session's hand-rolled waves, contract-reviewed, and smoke-proven through the real Workflow runtime (the smoke caught two contract gaps static review could not: an `export default` wrapper the runtime never invokes, and args arriving as a JSON string — both fixed, string-args tolerance now built in). **New verb:** `ao workflows link` / `unlink` mirror `ao skills link` semantics — dry-run `--json`, refuse to replace real files or foreign links, unlink only checkout-owned links — targeting the project-local `.claude/workflows/` where Claude Code resolves named workflows (`--into` overrides). Checkout identity reuses the skillsapp marker discipline, fail-closed. Claude-only runtime adapter, same doctrine as the Codex-only `skills-codex/`. **Legacy surfaces repointed:** `install-workflows.sh` (user-global $HOME installer), `check-workflow-drift.sh` + gate comment, `check-bdd-foundry-markers.sh`; spine allowlist + YAML-probe excuse + go-cli.md spine region gain the workflows group; COMMANDS.md, cli-surface projections, and surface-count fixture regenerated; new tests carry per-command git-env scrubbing (test-isolation ratchet back at baseline). **Built BY the workflow being canonized** — `implement-wave` orchestrated its own canonization: two disjoint-ownership lanes plus a seam-checking verifier that ran the real binary's link → resolve → unlink cycle in the live tree (both lanes RESOLVED). The lanes correctly *refused* to self-approve their command into the spine invariants and handed integration three flagged edits instead. **Expected local gate note:** `workflow.install-drift` correctly FAILS on machines whose user-global `~/.claude/workflows` links still point at the old location — that is the transition it exists to catch. CI stays green (absent→skip). **Post-merge operator step:** `cd ~/dev/agentops && git pull && bash scripts/install-workflows.sh`. **Verified:** full suite 63/63 pkgs; golangci-lint clean; `gate check --full` over this range = 66/67 with only the documented install-drift environment finding; workflows smoke-run evidence in session logs.
547 lines
17 KiB
JSON
547 lines
17 KiB
JSON
{
|
|
"categories": [
|
|
"public-tested",
|
|
"public-stateful-fixture-needed",
|
|
"internal-hidden",
|
|
"deprecated",
|
|
"unsafe-live",
|
|
"manual-only"
|
|
],
|
|
"commands": [
|
|
{
|
|
"category": "public-tested",
|
|
"command": "capabilities",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by capability contract tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "completion",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Framework completion root has focused generation tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "config",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "manual-only",
|
|
"command": "demo",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Interactive demonstration requires a TTY."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor capabilities",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Inspects local installation state."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor diff",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Compares local installation state."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor explain",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Requires controlled findings."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor fix",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Mutates local installation state."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor gc",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Prunes local doctor artifacts."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor health",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Inspects local health state."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor ls",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Lists local doctor artifacts."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor robot-docs",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Generates docs from local installation state."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "doctor undo",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Reverts a doctor repair fixture."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval baseline",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Promotion logic covered by internal/eval baseline tests; composition covered by cmd/ao eval tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval baseline-audit",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Audit policy covered by internal/eval baseline_audit tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval cleanup",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval cleanup_service tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval compare",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval coverage",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval coverage tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval outcomes compile",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by evalsubstrate rubric tests and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval outcomes ingest",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval outcomes_service tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval run",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scenario add",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/scenario and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scenario evaluate",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval scenario_service tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scenario init",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/scenario and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scenario list",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/scenario and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scenario validate",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/scenario and module tests."
|
|
},
|
|
{
|
|
"category": "unsafe-live",
|
|
"command": "eval scenario-ab",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Spawns a live model runtime (codex exec) per arm; exercised by adapter tests with fakes, never in smoke."
|
|
},
|
|
{
|
|
"category": "unsafe-live",
|
|
"command": "eval scenario-moat",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Aggregates live scenario-ab cards; adapter-tested with fixtures."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval scorecard",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval scorecard tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval suite n-required",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval suite_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval suite verdict",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval suite_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval task add",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval task_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval task list",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval task_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval task run",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval task_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "eval task show",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/eval task_service and module tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "flywheel compare",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/flywheelapp Compare tests after the flywheel carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "flywheel status",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "gate check",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-stateful-fixture-needed",
|
|
"command": "goals drift",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Requires two goal snapshots."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals export",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered through goals snapshot behavior."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals history",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Historical view shares goals validation behavior."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals measure",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals meta",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered through goals measurement behavior."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals render",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/goals render tests after the goals carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals scenarios",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/goals module tests and internal/goals scenario tests after the goals carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "goals validate",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/goals module tests and internal/goals validate tests after the goals carve-out."
|
|
},
|
|
{
|
|
"category": "internal-hidden",
|
|
"command": "help",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Built-in Cobra help dispatcher with no application handler."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "init",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/init module tests and internal/initapp tests after the init carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance add",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance export",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance list",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance mine-session",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/provenanceapp mine-session tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance position",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance show",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by generic provenance read tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance show",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance trace",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "provenance verify",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/provenance module tests after the provenance carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "quick-start",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "redact",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "robot-docs",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by generated documentation tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "session bootstrap",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "session handoff",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by handoff artifact tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "session rehydrate",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by rehydrate artifact tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills check",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills consumers",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills find",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills graph",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills link",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills help tests plus internal/skillsapp link tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills list",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills producers",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills resolve",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills module tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "skills unlink",
|
|
"coverage_status": "allowlisted",
|
|
"kind": "leaf",
|
|
"reason": "Covered by internal/commands/skills help tests plus internal/skillsapp unlink tests after the skills carve-out."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "status",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "version",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "workflows link",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
},
|
|
{
|
|
"category": "public-tested",
|
|
"command": "workflows unlink",
|
|
"coverage_status": "covered",
|
|
"kind": "leaf",
|
|
"reason": "Covered by release smoke tests, direct command tests, or command handler tests."
|
|
}
|
|
],
|
|
"generated_by": "scripts/check-cmdao-surface-parity.sh --write-surface",
|
|
"schema_version": 1
|
|
}
|