Add private catalog overlays and privacy doctor#1
Open
rogu3bear wants to merge 6 commits into
Open
Conversation
added 2 commits
April 29, 2026 00:36
This keeps the public catalog sanitized while allowing ignored operator-local overlays for pilot repo names, repo statuses, and repo contracts. The local overlay is intentionally read-only policy input: public catalog files stay neutral, and matching local contracts override public samples without requiring private repo names in git. The privacy doctor adds a lightweight publication gate that scans source/docs/report-style files while ignoring build and dependency trees. It reports relative file paths and redacted evidence so the gate does not leak the operator details it is meant to catch. Risk is limited to catalog loading order and the new doctor command. Existing standards commands still use public catalog defaults when no local overlay exists; unit tests cover workspace overlay replacement, contract override behavior, and privacy redaction.
This documents the public/private boundary that the implementation now enforces: public catalog data remains neutral, while operator-specific catalog overlays live under ignored local paths or DEVCTL_CATALOG_HOME. The README adds the privacy doctor to the normal standards loop so publication has an explicit human and machine check. AGENTS.md records the same operating rule for future agents, and .gitignore prevents accidental catalog/local publication.
Code Review SummaryStatus: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)CRITICAL
Other Observations (not in diff)Issues found in unchanged code that cannot receive inline comments:
Files Reviewed (9 files)
Reviewed by grok-code-fast-1:optimized:free · 294,391 tokens |
added 4 commits
April 29, 2026 05:30
This fixes the bad operational behavior where standards plan always used pilot scope and could silently produce zero repair tranches after the public catalog was sanitized. The command now accepts the same --pilot and --all scope controls as audit, records scope/repo/finding counts in JSON output, and emits warnings when the selected scope matches no repos. The new catalog doctor reports whether a private overlay is loaded and whether the active pilot catalog matches the requested workspace root without printing private repo names. Tests cover --all planning over a non-pilot repo and the zero-pilot warning path. Risk is limited to plan JSON shape expansion and the new doctor catalog command; existing audit behavior is unchanged.
This documents the operational contract added by the implementation commit: standards plan now has explicit scope controls, and doctor catalog is the first check when changing catalog or planning behavior. The docs keep private overlay details out of public examples while making the empty-pilot failure mode visible to future operators and agents.
This turns the README from a command list into an operator orientation: what devctl is, how catalogs/scanners/reports fit together, what to run first, and where generated or private data belongs. The catalog README documents the policy model separately so future changes to laws, archetypes, contracts, adjudications, and private overlays have an obvious landing page. A crate-level module comment gives generated Rust docs the same top-level frame. Risk is documentation drift only; verification rebuilt cargo docs and reran the full test/lint/privacy gates.
This operationalizes devctl as a repeatable local standards lane instead of leaving it as a set of ad hoc commands. The new script runs catalog/privacy doctors, inventory, contracts, audit, plan, and packet, then writes ignored JSON snapshots under reports/operations or a caller-provided report directory. The runbook explains weekly scope, private catalog setup, triage order, adjudication discipline, and PR proof expectations. Neutral local-catalog templates give operators a safe starting point without committing private repo names. Risk is limited to operator workflow files; the CLI behavior is unchanged. Verification covered shell syntax, a smoke run, fmt, clippy, tests, generated docs, privacy doctor, and sensitive-pattern scans.
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.
Summary
Behavioral changes and implications
Risk areas and confidence
Test plan
Review focus