Add dogfood evidence aggregator #52
No reviewers
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!52
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "codex/dogfood-evidence-aggregator-29"
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
The dogfood window should not depend on chat memory or manual scrolling through CI runs. The operator needs one repeatable, low-friction way to aggregate fallow-py evidence before Phase B/C resumes.
What changed
scripts/dogfood/aggregate_evidence.py, a stdlib-only aggregator for Forgejo Actions run metadata and locally availablepyfallow-report.jsonartifacts.docs/dogfood.mdand updateddocs/dogfood-evidence-status.md.Why it changed
This closes the infrastructure part of #29 without introducing a daemon, database, hosted service, or non-stdlib dependency.
Files touched
scripts/dogfood/aggregate_evidence.pytests/test_dogfood_aggregator.pydocs/dogfood.mddocs/dogfood-evidence-status.mdRuntime evidence
python3.13 -m pytest -q tests/test_dogfood_aggregator.pypython3.13 scripts/dogfood/aggregate_evidence.py --repo pdurlej/fallow-py --runs-limit 3 --output /tmp/fallow-dogfood.md --json-output /tmp/fallow-dogfood.jsonpython3.13 -m compileall -q src tests mcp/src mcp/tests scripts/dogfoodpython3.13 -m pytest -qpython3.13 -m pytest -q mcp/testsPYTHONPATH=src python3.13 -m fallow_py analyze --root . --fail-on warning --min-confidence mediumPYTHONPATH=src:mcp/src python3.13 -m fallow_py analyze --root mcp --fail-on warning --min-confidence mediumgit diff --checkKnown constraints
This Forgejo instance exposes Actions run metadata through API, but the public Swagger surface does not expose an artifact-download endpoint. The aggregator therefore consumes locally available report artifacts; a trusted rs2000 cron can download/extract those artifacts by whatever mechanism is available operationally.
Explicit out-of-scope
Requested decision
Approve and merge if the aggregator is appropriately small, testable, and useful for #29.
Merge blockers
Failing tests, non-stdlib runtime dependency, or misleading claims that artifacts are automatically downloaded by this script.
Closes #29.
Codex follow-up: local verification and Forgejo CI are green, but
merge_pull_requestascodexreturns405 User not allowed to merge PR. Operator merge is required.Terminal action: approve-with-permission-gap. The change is ready from my side; I cannot press the merge button with the current branch/repo permissions.