Fold finmod feedback (rounds 1-2) into the verbatim fleet-law fixes - #409
Merged
Conversation
…'s full-clone need From the finmod round-1 convergence feedback (Financial-Modeling#48). Both items are structural tensions the audit does not catch, surfaced by re-vendoring into a source-only repo. - The verbatim "Verification Discipline" section carried two parentheticals that cite hub structure a source-only repo lacks - WORKFLOW.md D8.4 (no D-numbered sections there) and the changes-job under Branching Model (no smoke/changes job in a source-only Python repo) - so a byte-identical carry dangled those refs. A verbatim section must be self-contained: the fail-closed rule now states the identity-allowlist example inline without the WORKFLOW.md cross-link, and the confirm-from-the-log rule drops the changes-job pointer. The rules are unchanged; only the repo-specific cross-refs are gone. The fleet re-vendors this section (its hash changed) - tracked by the burn-down. - AUDIT.md section 8 now documents that re-running the audit needs a full hub clone with git history (the stale-vs-modified classification walks git log/show), and gives the verify-one-finding-against-main fallback for a downstream agent without the history. Not changed: the finmod-local cross-ref from its "Pull Request Title and Commit Message Conventions" intent section to a co-author-trailer rule that the verbatim Git and Commit Rules does not carry. Per the Financial-Modeling#28/#379 disposition the trailer stays a repo-local convention ("no Co-Authored-By unless asked"; self-credit is the standing-asked case), so the downstream repo self-contains that note rather than the hub codifying it. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the hub governance documentation to make two “Verification Discipline” references portable across repo types and to document a practical constraint of re-running the audit from non-full checkouts.
Changes:
- Removes repo-structure-dependent cross-references inside the “Verification Discipline” section so the text remains valid when vendored verbatim into source-only repos.
- Documents that re-running
spec/audit.py’s stale-vs-modified verbatim classification requires a full clone of this repo with git history, and suggests a history-free fallback comparison approach.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| AGENTS.md | Generalizes two “Verification Discipline” bullets by removing cross-references that don’t exist in all repo shapes. |
| AUDIT.md | Adds documentation about the audit’s dependency on local git history for verbatim stale-vs-modified classification and a fallback approach for downstream agents. |
Uh oh!
There was an error while loading. Please reload this page.
…thout a fragile command Drop the inline gh api example - it hard-coded the hub slug (wrong to reproduce verbatim in a carried doc) and showed only the whole-file case. The fallback now reads generically: compare against the current hub canonical on main, the whole file for a file-level unit or the named heading block for a verbatim section. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
The bullet is about failing loud (a silent gate produces an error/annotation), so the example now says the allowlist must raise an error when its list stops matching rather than silently passing everything - "fail closed" was the wrong concept for a visibility rule. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Four items the finmod agent surfaced during its convergence PR, all on byte-identical vendored content that downstream cannot fix without breaking the verbatim hash: - Scope the write-safety "never suppress a write's output" rule to what it protects - hiding a failure. An ad-hoc call may never suppress its error stream or force success; a reviewed set -e script may drop a write's stdout only, because stderr stays visible and a failed write still aborts loudly. This makes the rule and the reference repo-config/configure.sh agree. - Recast the two clause-joining semicolons in the Verification Discipline "flags an instance - fix the class" bullet, which violated the section's own no-clause-semicolon style rule. - Guard the two unguarded gh api reads in configure.sh check mode so a transient read records a FAIL and continues instead of aborting the auditor. - Warn when ruleset_id hits the per_page cap instead of silently narrowing the lookup. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
A truncation warning that continues could let apply mode miss a ruleset past the first 100 and create a duplicate by name. Abort instead - the caller already treats a non-zero return as stop, not not-found. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
This was referenced Jul 23, 2026
ptr727 added a commit
that referenced
this pull request
Jul 23, 2026
Follow-up to #409 from the promotion review: check_ruleset invoked ruleset_id unguarded, so its non-zero return would exit the auditor via set -e instead of recording a FAIL. Wrap it in if/fail/return, consistent with the sibling gh-read guards, and document the per_page-cap abort in the header.
ptr727 added a commit
that referenced
this pull request
Jul 23, 2026
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 freeto 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.
Addresses the finmod agent's feedback (rounds 1 and 2) on vendored fleet-law that downstream cannot fix without breaking the verbatim hash.
Round 1
mainfallback for a shallow verifier.Round 2
set -escript may drop a write's stdout only, because stderr stays visible and a failed write still aborts loudly. This makes the rule and the referencerepo-config/configure.shagree (and backs Apply PhotoCleaner round-2 feedback: rationale wording, MD033 clarity, CPM property owner #408's rationale comment rather than obsoleting it).gh apireads in configure.sh check mode, so a transient read records aFAILand continues instead of aborting the auditor.per_page=100cap inruleset_idinstead of silently narrowing the lookup.Touches two verbatim sections (write-safety + Verification Discipline); the fleet re-vendors both on promotion, tracked by the burn-down report.