Parent roadmap: #82
Background
Quiet-by-default behavior is good, but maintainers may still want to understand why Gittensory skipped specific PRs.
Goal
Provide private audit export for skipped PR decisions.
Current Behavior
Skipped PRs are audit logged internally, but maintainer-consumable export is limited.
Desired Behavior
Maintainers can inspect skip reasons such as non-miner, bot, maintainer-author default skip, detection unavailable, missing permissions, or disabled surface.
Implementation Requirements
- Add private skip-audit query/export.
- Include repo, PR number, reason code, timestamp, and remediation when applicable.
- Bound result size and require auth.
- Avoid storing or exporting unnecessary private data.
Public/Private Output Boundaries
Public GitHub output must stay quiet-by-default and sanitized. It must not include private reviewability, scoreability, reward/risk, raw trust, wallet/hotkey, or public score estimates.
Acceptance Criteria
- Non-miner skip appears privately.
- Bot skip appears privately.
- Detection unavailable skip appears privately.
- Export is bounded and permissioned.
- No public surfaces are created.
Testing Requirements
npm run test:ci must pass.
- Global coverage must remain at or above 97% for lines, statements, functions, and branches.
- Aim for 98%+ branch coverage locally to avoid CI variance.
- Add tests for every new branch, fallback path, sanitizer rule, and regression.
- Add invariant/property-style tests when behavior depends on sorting, gating, scoring, queue pressure, source-upload safety, public/private boundaries, or upstream drift.
- Public GitHub output must be tested against forbidden language: wallet, hotkey, raw trust score, payout, reward estimate, farming, private reviewability, and public score estimate.
- MCP/local tooling must prove source contents are not uploaded.
Additional Test Scenarios
- Skip reason fixtures.
- Auth required test.
- Pagination/bounds test.
- Redaction regression.
Parent roadmap: #82
Background
Quiet-by-default behavior is good, but maintainers may still want to understand why Gittensory skipped specific PRs.
Goal
Provide private audit export for skipped PR decisions.
Current Behavior
Skipped PRs are audit logged internally, but maintainer-consumable export is limited.
Desired Behavior
Maintainers can inspect skip reasons such as non-miner, bot, maintainer-author default skip, detection unavailable, missing permissions, or disabled surface.
Implementation Requirements
Public/Private Output Boundaries
Public GitHub output must stay quiet-by-default and sanitized. It must not include private reviewability, scoreability, reward/risk, raw trust, wallet/hotkey, or public score estimates.
Acceptance Criteria
Testing Requirements
npm run test:cimust pass.Additional Test Scenarios