Align agent fix-plan with ADR 0009 decision contract #61
Labels
No labels
area:ci
area:docs
area:engineering
area:framework-fp
area:test-coverage
dogfood:fn
dogfood:fp
dogfood:friction
dogfood:tp
phase:b
phase:c
severity:critical
severity:high
severity:low
severity:medium
source:deepseek-v4-pro
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
pdurlej/fallow-py!61
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "codex/decision-contract-27"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Canary Context Pack
Product story
Fallow-py should expose one operator-facing decision contract everywhere:
auto_safe,decision_needed, andblocking. ADR 0009 says the operator needs explicit trade-offs, not a split betweenreview_neededandmanual_onlythat makes agents infer product intent.What changed
review_needed/manual_onlywithdecision_neededacross core fix-plan output and MCP grouped responses.trade_offsto fix-plan items and MCP finding/remediation/classification models.src/fallow_py/classify.py.Why it changed
This pulls issue #27 into the pre-dogfood contract slice: evidence logs and agent workflows should count one decision bucket with the trade-offs needed for human/operator judgment.
Files touched
Core classifier, MCP schemas/runtime/tools/safety/remediation, fix-plan schema/golden/tests, docs/examples, CI comment renderer, soak harness prompt summary.
Relevant context
Runtime evidence
PYTHONPATH=/Users/pd/Developer/fallow-python-domain-a/src:/Users/pd/Developer/fallow-python-domain-a/mcp/src python3.13 -m pytest -qPYTHONPATH=/Users/pd/Developer/fallow-python-domain-a/src:/Users/pd/Developer/fallow-python-domain-a/mcp/src python3.13 -m compileall -q src tests mcp/src mcp/tests scripts/dogfoodgit diff --checkPYTHONPATH=/Users/pd/Developer/fallow-python-domain-a/src python3.13 -m fallow_py analyze --root . --fail-on warning --min-confidence mediumPYTHONPATH=/Users/pd/Developer/fallow-python-domain-a/src:/Users/pd/Developer/fallow-python-domain-a/mcp/src python3.13 -m fallow_py analyze --root mcp --fail-on warning --min-confidence mediumKnown constraints
The dogfood aggregator still recognizes legacy
review_neededandmanual_onlyartifacts so existing logs remain readable. That compatibility is intentionally not removed here.Explicit out-of-scope
No new analyzer rules, no evidence cockpit, no benchmark claims, no broad Phase B/C execution.
Requested decision
Approve if the active CLI/MCP/docs/examples contract is now aligned with ADR 0009 and the compatibility boundary is acceptable.
Merge blockers
manual_onlyorreview_neededas the current contract.trade_offsondecision_neededorblockingfindings.