Repository navigation
[WS-GHPROOF-001-03] Compare Harnessy proof with GitHub facts - #683
Open
flow-research-agents[bot] wants to merge 4 commits into
Open
flow-research-agents[bot] wants to merge 4 commits into
flow-research-agents[bot] wants to merge 4 commits into
Conversation
harnessy.work_proof v2 compares proof.json with workstream.github_facts.v1 facts from the request input when its binding configuration names a GitHub repository and base branch, one error finding per mismatch. Missing required facts fail. Publish real configuration/input schemas. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Review skippedBot user detected. To trigger a single review, invoke the
|
Owner decision 20: unbound required checks, CI/config path changes and a missing independent head-commit approval each fail with their own finding; operator-only approval adds a non-blocking harnessy.operator_approved warning. Safe defaults, configurable through the locked configuration. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Security review: remove the shape-only pass (configuration and facts are always required); compare pr_url and ci_run_url only by exact equality with canonical URLs built from the facts and GitHub's html_url; reject check entries bound to another commit. The checker is post-submission only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Coverage review: a proof.json directory made read_proof raise; check the file type on the raw descriptor first. Add rejecting tests for bounded check names, single-segment globs, non-regular proof files and the isolated entrypoint. Branch coverage of checker.py is now 100%. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change
WS-GHPROOF-001-03- Compare Harnessy proof with GitHub factsGoal
harnessy_prooffails a proof that does not match GitHub's facts, with one finding per mismatch.Intent And Planning Context
WS-GHPROOF-001-03.md. Stacked on [WS-GHPROOF-001-01] Record GitHub proof facts initiative #681; independent of [WS-GHPROOF-001-02] Read-only GitHub App facts adapter #682.What Changed
checker.py: when the request input carriesgithub_facts(the shape produced by chunk 02'smodel_dump(mode="json")) or configuration requires facts, it compares repository (configured and PR URL), PR number, merged, merge commit SHA againstcommit_sha, base branch against configuration, and every required checksuccess. Missing facts when required is an error finding. Existing shape checks remain.publish_local.py: real per-phase configuration and input schemas; default versionv2. The PRE configuration accepts only{}.docs/engineering/local-agent-loop.md: documents the mode.Why It Changed
Today a proof with any well-formed values passes.
Design Chosen
Facts arrive in the hash-bound request input, not a second ART mount, so no Rust grant change is needed.
Alternatives Rejected
Scope Control
Allowed Files Changed
Files Outside Stated Scope
Product Behavior
harnessy_proofchecker gains a facts-comparison mode, active only when facts are supplied or required by configuration. Registration is local-only.Evidence
Commands Run
Result Summary
Acceptance Criteria Proof
Test Delta
Tests Added
test_harnessy_proof_checker.pyTests Modified
test_harnessy_proof_checker.pyTests Removed Or Skipped
Impact-Routed Reviewer Results
PROVISIONALRemaining Risks
The checker version bump requires re-registration in local loops.
Follow-Up Work
Chunk 04 supplies facts in production evaluation.
Human Review Focus
Please inspect:
Update: integrity rules and security-review fixes
github.unbound_required_check)..github/**,CODEOWNERSor other CI configuration, rename sources included, can never be auto-accepted.Userwho is not the author is required. Each reviewer's latest decisive review counts.harnessy.operator_approvedwarning is raised: the work earns points but cannot be paid in money until an independent reviewer confirms.pr_urlmust equalhttps://github.com/{repo}/pull/{n}and GitHub'shtml_url.ci_run_urlmust equalhttps://github.com/{repo}/actions/runs/{id}for a judged required run.github.facts_binding).CI And Gate Integrity
Human Merge Ownership
The human completes the acceptance/merge checks; agents must not tick them on
the human's behalf or infer approval from a passing CI status.
🤖 Generated with Claude Code