Skip to content

fix(reuse): ignore the gate receipt and print REUSE findings - #10

Merged
lusoris merged 1 commit into
mainfrom
fix/receipt-ignore-v4
Oct 16, 2026
Merged

lusoris merged 1 commit into
mainfrom
fix/receipt-ignore-v4

Conversation

@lusoris

@lusoris lusoris commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Pull Request

Description

The Praetor gate writes .standards-receipt.json at the repository root, and reuse lint refused it (no licence identifier), while the REUSE check ran with --quiet and printed only a failure (engine ledger engine-receipt-reuse-template-1800).

  • praetorctl adopt (engine 603d6a34) re-rendered the managed .gitignore block to v4: it now ignores /.standards-receipt.json and /.claude/settings.local.json. No other managed file changed.
  • tools/check_reuse.py runs reuse lint --lines and prints each finding on failure.
  • Its selftest runs in a scratch git repository, so .gitignore applies as in the checkout: a planted gate receipt passes, and a planted file without licence information fails with its path named.

Mutants: without the receipt line in .gitignore the selftest fails on the receipt; with --quiet restored it fails because the planted file is not named.

Pre-Merge Verification Checklist

  • Local verification passed: make verify-all
  • No new HISS / NASA Power-of-10 infractions (all new/modified functions $\le 60$ LOC)
  • 3D Tests included (Positive, Negative, Boundary) for public APIs
  • Agent contexts in sync: standardsctl compile-context --verify
  • Commit messages adhere to Conventional Commits format

The Praetor gate writes .standards-receipt.json at the repository root,
and reuse lint refused it (no licence identifier), while the REUSE
check ran with --quiet and printed nothing but a failure (engine
ledger engine-receipt-reuse-template-1800).

- praetorctl adopt (engine 603d6a34) re-rendered the managed .gitignore
  block to v4: it ignores /.standards-receipt.json and
  /.claude/settings.local.json. No other managed file changed.
- tools/check_reuse.py runs reuse lint --lines and prints each finding
  on failure.
- Its selftest runs in a scratch git repository, so .gitignore applies
  as in the checkout: a planted gate receipt passes, and a planted file
  without licence information fails with its path named.

Mutants: without the receipt line in .gitignore the selftest fails on
the receipt; with --quiet restored it fails because the planted file
is not named.

Signed-off-by: lusoris <lusoris@proton.me>
@lusoris
lusoris merged commit b2710c8 into main Oct 16, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant