Skip to content

Compliance audit — 2026-10-16 #1343

Open

Description

@don-petry

Compliance Audit — 2026-10-16

This umbrella issue tracks all findings from the automated compliance audit run on 2026-10-16.
Findings are grouped by remediation category. Address each category together to avoid duplicate agent PRs.

Total findings: 67 across 13 repositories


Remediation Work Breakdown

Repository Settings (8 finding(s))

Remediation: apply-repo-settings.sh
Affected repos: software-factory, software-factory-canary

Repo Check Severity
software-factory allow_auto_merge warning
software-factory delete_branch_on_merge warning
software-factory has_wiki warning
software-factory-canary allow_auto_merge warning
software-factory-canary delete_branch_on_merge warning
software-factory-canary has_wiki warning
software-factory-canary has_discussions error
software-factory-canary missing-codeowners error

Push Protection & Secret Scanning (3 finding(s))

Remediation: apply-repo-settings.sh (security_and_analysis) + per-repo ci.yml and .gitignore
Affected repos: .github-private, software-factory-canary

Repo Check Severity
.github-private open_secret_alerts error
software-factory-canary secret_scan_ci_job_present error
software-factory-canary gitignore_baseline error

Repository Rulesets (15 finding(s))

Remediation: apply-rulesets.sh
Affected repos: .github-private, broodly, google-app-scripts, markets, software-factory, software-factory-canary

Repo Check Severity
software-factory missing-pr-quality error
software-factory missing-code-quality error
software-factory ruleset-bypass-orgadmin-main error
software-factory ruleset-bypass-dependabot-main error
software-factory legacy-ruleset-main error
.github-private ruleset-drift-code-quality-strict_required_status_checks_policy error
broodly ruleset-drift-pr-quality-require_code_owner_review error
broodly ruleset-drift-pr-quality-dismiss_stale_reviews_on_push error
broodly ruleset-drift-pr-quality-require_last_push_approval error
markets ruleset-bypass-orgadmin-code-quality error
markets ruleset-bypass-dependabot-code-quality error
google-app-scripts ruleset-drift-pr-quality-dismiss_stale_reviews_on_push error
google-app-scripts ruleset-drift-pr-quality-require_last_push_approval error
software-factory-canary missing-pr-quality error
software-factory-canary missing-code-quality error

Workflows (32 finding(s))

Remediation: per-repo workflow additions
Affected repos: .github-private, ContentTwin, TalkTerm, bmad-bgreat-suite, broodminder-data, empower-personal-dashboard, google-app-scripts, incubator, repo-template, software-factory, software-factory-canary

Repo Check Severity
software-factory missing-dev-lead.yml error
software-factory missing-dependabot-automerge.yml error
software-factory missing-dependency-audit.yml error
software-factory missing-agent-shield.yml error
software-factory missing-pr-review-mention.yml error
software-factory missing-feature-ideation.yml error
software-factory missing-pr-auto-review.yml error
software-factory missing-initiative-driver.yml error
.github-private non-stub-agent-shield.yml error
empower-personal-dashboard stub-surface-drift-persona-mention.yml-on error
empower-personal-dashboard verbatim-stub-drift-initiative-driver.yml error
broodminder-data stub-surface-drift-persona-mention.yml-on error
broodminder-data verbatim-stub-drift-initiative-driver.yml error
incubator stub-surface-drift-persona-mention.yml-on error
incubator verbatim-stub-drift-initiative-driver.yml error
google-app-scripts verbatim-stub-drift-initiative-driver.yml error
ContentTwin stub-surface-drift-agent-shield.yml-on error
ContentTwin verbatim-stub-drift-initiative-driver.yml error
repo-template stub-surface-drift-persona-mention.yml-on error
repo-template verbatim-stub-drift-initiative-driver.yml error
TalkTerm verbatim-stub-drift-initiative-driver.yml error
bmad-bgreat-suite verbatim-stub-drift-initiative-driver.yml error
software-factory-canary missing-ci.yml error
software-factory-canary missing-sonarcloud.yml error
software-factory-canary missing-dev-lead.yml error
software-factory-canary missing-dependabot-automerge.yml error
software-factory-canary missing-dependency-audit.yml error
software-factory-canary missing-agent-shield.yml error
software-factory-canary missing-pr-review-mention.yml error
software-factory-canary missing-feature-ideation.yml error
software-factory-canary missing-pr-auto-review.yml error
software-factory-canary missing-initiative-driver.yml error

Dependabot Configuration (2 finding(s))

Remediation: per-repo .github/dependabot.yml
Affected repos: software-factory, software-factory-canary

Repo Check Severity
software-factory missing-config error
software-factory-canary missing-config error

Agent Standards (CLAUDE.md / AGENTS.md / copilot-setup-steps.yml) (7 finding(s))

Remediation: per-repo doc and workflow additions
Affected repos: .github-private, software-factory, software-factory-canary

Repo Check Severity
software-factory missing-copilot-setup-steps warning
software-factory missing-copilot-instructions error
.github-private agents-md-missing-org-ref error
software-factory-canary missing-claude-md error
software-factory-canary missing-agents-md error
software-factory-canary missing-copilot-setup-steps warning
software-factory-canary missing-copilot-instructions error

Generated by the weekly compliance audit on 2026-10-16 17:37 UTC.
Address each remediation category as a single coordinated PR to avoid duplicate agent work.

Activity

  1. don-petry commented on Oct 16, 2026

    @don-petry
    ContributorAuthor

    Dev-Lead Implementation Plan

    Issue: #1343 — Compliance audit — 2026-10-16

    Scope

    Triage only. All 67 findings are real drift in other repos, and none of them come from a defect in combsmith/.github's audit or deploy tooling. That means no source change in this repo is warranted. The precedent is #1237, which changed this repo only to fix the audit tooling itself.

    Triage (checked against the live repos and the previous audit #1265)

    Group Finding(s) Verdict Remediation (outside this repo)
    New repos software-factory (created 2026-10-11) and software-factory-canary (created 2026-10-11, "throwaway") 49 of the 57 new findings: settings, rulesets, missing stubs, dependabot, CLAUDE.md/AGENTS.md/copilot Real. These repos were never bootstrapped. Run scripts/bootstrap-new-repo.sh (repo settings, rulesets, labels, ring), then the standards deploy sweep (standards-deploy.yml) for the stubs. Whether the throwaway canary should be excluded from the audit is a policy call for a maintainer. compliance-audit.sh has no repo-exclusion mechanism today.
    verbatim-stub-drift-initiative-driver.yml (9 repos) Deployed stubs still use inline -f target_repo=${{ github.repository }} and (TalkTerm, bmad-bgreat-suite) predate the rate-limit gate Real. The template moved target_repo to an env var (zizmor template-injection) and the fleet hasn't been re-synced yet. Standards deploy sweep (deploy-standard-workflows.sh).
    stub-surface-drift-persona-mention.yml-on (4 repos) Deployed stubs lack the pull_request: [opened, ready_for_review, reopened] trigger the template now carries (#1165) Real. Rollout lag. Standards deploy sweep. No with: forward is involved, so the channel-pin guardrail (#1052) doesn't apply.
    .github-private non-stub-agent-shield.yml Pins agent-shield/v2-stable. .github-private is ring0 for agent-shield, so the expected pin is agent-shield/v2-ring0. Real under the F5 rule (#861): a wrong-tier v-form is drift. Human PR. agent-shield.yml is an immutable file (standards/workflow-exemptions.json, requires_human_review).
    ContentTwin stub-surface-drift-agent-shield.yml-on Missing merge_group: trigger Real. Same immutable file. Human PR re-syncing standards/workflows/agent-shield.yml.
    Ruleset drift and bypass (.github-private, broodly, markets, google-app-scripts) Carried over from #1265 Real apply-rulesets.sh / fix-ruleset-bypass.sh with org-admin credentials.
    .github-private open_secret_alerts New Real Needs a human to triage the secret-scanning alerts (rotate or revoke, then close). Agents can't do this.
    .github-private agents-md-missing-org-ref Carried over Real PR in .github-private.

    Implementation Checklist

    Tests to Write

    • None. There's no behaviour change in this repo, so the TDD exception applies.

    Test Command

    bash .dev-lead/scripts/dev-lead-lint.sh (lint-only verification of an unchanged tree)

  2. added
    dev-leadFor dev-lead agent pickup
    and removed
    dev-leadFor dev-lead agent pickup
    on Oct 21, 2026
  3. don-petry commented on Oct 21, 2026

    @don-petry
    ContributorAuthor

    Dev-Lead: Progress (in progress — not yet durable)

    Provisional. Nothing is pushed yet. Treat these notes as intent, not delivered results.

    Plan Execution (intended)

    • I re-checked the 2026-10-16 triage plan against main (43ec2a1) and the live repos on 2026-10-21. Its conclusion still holds: every finding is downstream drift, and no file in combsmith/.github needs to change.
    • Spot checks done again:
    • software-factory-canary was created 2026-10-11 and describes itself as a "Throwaway repo... Nothing here is depended on". compliance-audit.sh still has no way to exclude a repo, so it gets audited like any other. Excluding it (or archiving it) is a maintainer decision.

    Remediation still needed (outside this repo)

    • software-factory and software-factory-canary: run scripts/bootstrap-new-repo.sh, then the standards deploy sweep.
    • initiative-driver and persona-mention stub drift: standards deploy sweep (deploy-standard-workflows.sh).
    • agent-shield.yml in .github-private and ContentTwin: human PR. This file is immutable and needs human review.
    • Ruleset drift and bypass: apply-rulesets.sh / fix-ruleset-bypass.sh with org-admin credentials.
    • .github-private open_secret_alerts: a human has to triage these and rotate the secrets.

    Files touched (this workspace, not yet pushed)

    • None.

    Notes

    I skipped TDD because nothing in this repo changes behaviour. dev-lead-lint.sh ran clean on the unchanged tree.

  4. added
    dev-leadFor dev-lead agent pickup
    and removed
    dev-leadFor dev-lead agent pickup
    on Oct 22, 2026
  5. don-petry commented on Oct 22, 2026

    @don-petry
    ContributorAuthor

    Dev-Lead: Progress (in progress — not yet durable)

    Provisional. Nothing is pushed yet. Treat these notes as intent, not delivered results.

    Plan Execution (intended)

    • Re-run on 2026-10-22. main is still at 43ec2a1, the same commit as the 2026-10-21 re-check, so the earlier triage still applies: every finding is downstream drift or needs a human or org-admin action. No file in combsmith/.github needs to change for this issue.

    New since the last note

    Files touched (this workspace, not yet pushed)

    • None.

    Notes

    I skipped TDD because nothing in this repo changes behaviour. dev-lead-lint.sh ran clean on the unchanged tree.

  6. added
    dev-leadFor dev-lead agent pickup
    and removed
    dev-leadFor dev-lead agent pickup
    on Oct 22, 2026
  7. don-petry commented on Oct 22, 2026

    @don-petry
    ContributorAuthor

    Dev-Lead: Progress (in progress — not yet durable)

    Provisional. Nothing is pushed yet. Treat these notes as intent, not delivered results.

    Plan Execution (intended)

    Files touched (this workspace, not yet pushed)

    • None.

    Notes

    I skipped TDD because nothing in this repo changes behaviour. dev-lead-lint.sh ran clean on the unchanged tree. What's still needed outside this repo is unchanged from the 2026-10-21 note: the deploy sweep for the stub drift, a human PR for agent-shield.yml, apply-rulesets.sh/fix-ruleset-bypass.sh run with org-admin credentials, and triage of the .github-private secret alerts.

  8. added
    dev-leadFor dev-lead agent pickup
    and removed
    dev-leadFor dev-lead agent pickup
    on Oct 22, 2026
  9. 25 remaining items

  10. added
    dev-leadFor dev-lead agent pickup
    and removed
    dev-leadFor dev-lead agent pickup
    on Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    compliance-auditAutomated compliance audit findingdev-leadFor dev-lead agent pickup

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions