mirror of
https://github.com/boshu2/agentops.git
synced 2026-09-14 15:08:13 +08:00
7a765cde19
Executes docs/plans/2026-08-07-agentops-operations-layer-alignment.md: AgentOps is the operations layer for agentic engineering; the federated integration graph is the topology, the semantic work-and-proof protocol is the contract, and RPI is the standard one-experiment traversal. Retires the ao flywheel command family and all knowledge-flywheel product state, tombstones the seven-move operating-loop workflow, narrows ao init and the .agents state writers to declared destinations, renames the core architecture page to rpi-traversal.md with a compatibility redirect, aligns AGENTS.md, 25 skills, public and package copy, regenerates every owned projection, and strengthens the conformance gates with planted-negative proofs. Both the alignment subject and the follow-up gate-bookkeeping commit carry fresh author-distinct validation PASS verdicts with empty not_checked scope. Test-Removal-Reason: dead knowledge-flywheel and session-store surfaces were deleted with their tests (operations-layer alignment)
97 lines
4.5 KiB
YAML
97 lines
4.5 KiB
YAML
# forbidden-claims.yaml — honest-voice claims lexicon (bead age-5qjyn / FU3).
|
|
#
|
|
# The README's "honest version" demotes corpus-compounding to "still measuring"
|
|
# (docs/adr/ADR-0004-corpus-moat-unproven-position-on-the-system.md,
|
|
# docs/adr/ADR-0011-escape-corpus-compounding-unproven-structural-starvation.md)
|
|
# and AgentOps 3.0 is HOOKLESS (docs/3.0.md, ADR-0009). Yet user-facing CLI
|
|
# strings have repeatedly claimed "You get smarter every session", "knowledge
|
|
# compounds automatically", and "Session hooks extract learnings". Piecemeal
|
|
# fixes (#907, the FU4 diet commit) never completed the sweep and nothing GATED
|
|
# it, so the claims regrow. This lexicon + scripts/check-honest-voice.sh gate it.
|
|
#
|
|
# SCOPE (what scripts/check-honest-voice.sh scans): user-facing string literals
|
|
# in cli/cmd/**/*.go + cli/internal/**/*.go (excluding *_test.go) and the seed /
|
|
# template assets (cli/embedded/templates/**, cli/internal/extract/templates/**).
|
|
# It deliberately does NOT scan docs/** — narrative docs discuss the UNPROVEN
|
|
# hypothesis honestly, citing the ADRs, and must be free to say "whether the
|
|
# corpus compounds is unproven".
|
|
#
|
|
# CURATION RULE: these patterns ban CLAIMS OF PROVEN / AUTOMATIC compounding.
|
|
# They do NOT ban the word "flywheel" (historical records and the third-party
|
|
# Agentic Coding Flywheel adapter use it legitimately; the in-product
|
|
# knowledge-flywheel surface itself was retired) nor the CONDITIONAL
|
|
# escape-velocity model, which survives only as honest historical framing. Patterns are kept tight (each requires an "automatic" / "every
|
|
# session" qualifier) so legitimate sentences — "whether the corpus compounds is
|
|
# unproven", "knowledge compounds when retrieval beats decay" — never match.
|
|
# No negative lookarounds are used (RE2 / POSIX ERE lack them); tightness is the
|
|
# mechanism. Patterns are Python `re` (IGNORECASE) — no lookarounds, RE2-safe.
|
|
#
|
|
# ESCAPE HATCH: a line carrying `honest-voice:allow` is skipped (deliberate,
|
|
# reviewed exception). Per-entry allowed_contexts globs also skip a file.
|
|
|
|
version: 1
|
|
|
|
# Contexts allowed for EVERY claim: the ADRs that state the honest stance, the
|
|
# evidence corpus, the changelog (historical record), this lexicon itself (it
|
|
# quotes the banned phrases as data), the gate's own tests, and test/fixture code
|
|
# (which asserts the ABSENCE of a phrase and must be free to name it).
|
|
default_allowed_contexts: &common
|
|
- "docs/adr/**"
|
|
- "docs/evidence/**"
|
|
- "docs/CHANGELOG.md"
|
|
- "CHANGELOG.md"
|
|
- "docs/contracts/forbidden-claims.yaml"
|
|
- "scripts/check-honest-voice.sh"
|
|
- "tests/**"
|
|
- "cli/testdata/**"
|
|
- "**/*_test.go"
|
|
|
|
claims:
|
|
- id: session-hooks
|
|
pattern: 'session hooks'
|
|
rationale: >-
|
|
AgentOps 3.0 is HOOKLESS (docs/3.0.md, ADR-0009) — no session hook extracts
|
|
learnings; a session writes them explicitly via /postmortem. `ao init
|
|
--hooks` is not a real flag.
|
|
allowed_contexts: *common
|
|
|
|
- id: automatically-compounds
|
|
pattern: 'automatically compound(s|ing)?'
|
|
rationale: >-
|
|
Corpus compounding is an UNPROVEN hypothesis facing a data-starvation
|
|
headwind (ADR-0011); it does not happen "automatically". State that context
|
|
accrues in .agents/ and that compounding is still being measured.
|
|
allowed_contexts: *common
|
|
|
|
- id: compounds-automatically
|
|
pattern: 'compounds?\s+automatically'
|
|
rationale: >-
|
|
Reverse-order form of the same unproven claim (ADR-0004, ADR-0011). The
|
|
honest conditional "knowledge compounds when retrieval beats decay" is fine;
|
|
the "automatically" qualifier is what is banned.
|
|
allowed_contexts: *common
|
|
|
|
- id: smarter-every-session
|
|
pattern: 'gets?\s+smarter\s+every\s+session'
|
|
rationale: >-
|
|
The model does not "get smarter every session"; only the environment
|
|
accrues context, and whether that compounds into an advantage is the
|
|
unproven flywheel hypothesis (ADR-0011). The proven asset is the
|
|
verification loop.
|
|
allowed_contexts: *common
|
|
|
|
- id: others-start-fresh
|
|
pattern: 'others\s+start\s+fresh'
|
|
rationale: >-
|
|
Competitive "others start fresh, you compound" framing overstates the
|
|
unproven moat (ADR-0004). Do not market ahead of the ruler.
|
|
allowed_contexts: *common
|
|
|
|
- id: no-manual-needed
|
|
pattern: 'no\s+manual\b[^.\n]{0,60}\bneeded'
|
|
rationale: >-
|
|
"No manual X needed" implies an automatic extraction/compounding step that
|
|
3.0 does not have (hookless — the session writes learnings explicitly).
|
|
Describe the explicit step instead.
|
|
allowed_contexts: *common
|