Skip to content

docs(maintenance): correct stale operating claims and add the exceptions register - #66

Merged
laurenhitchon merged 1 commit into
mainfrom
docs/current-state-and-exceptions
Jul 29, 2026
Merged

docs(maintenance): correct stale operating claims and add the exceptions register#66
laurenhitchon merged 1 commit into
mainfrom
docs/current-state-and-exceptions

Conversation

@laurenhitchon

Copy link
Copy Markdown
Contributor

Batch B of the fleet remediation — documentation truth-up. Retires the obsolete ≤80-column rule; reconciles the eslint-major Renovate block's removal condition between default.json and renovate.md (shim shipped and adopted; nswds-ui's unshimmed eslint-plugin-react import is the one remaining blocker, re-check dated 2026-10); fixes fleet counts (17/21 → 24) in five locations; updates the README stub example to the explicit-secrets shape and the promotion description to the gated workflow; adds an exceptions register to MAINTENANCE.md recording every sanctioned divergence (incl. the R-19 Power Platform prod-gate compensating control, which is Team-plan-blocked from environment reviewers); documents the four repo-local automation workflows; adds an advisory CODEOWNERS.

…ons register

- retire the ≤80-column .mjs mandate (fleet is uniformly printWidth 100)
- reconcile the eslint-major block's removal condition (default.json +
  renovate.md): shim shipped, 14 repos on eslint ^10; nswds-ui is the
  remaining blocker, re-check by 2026-10
- fleet counts 17/21 → 24 across README/ONBOARDING/MAINTENANCE/renovate.md/sync.yml
- README stub example matches the explicit-secrets stubs; v1 motion now via
  the gated workflow
- exceptions register (sanctioned divergences incl. the Power Platform
  prod-gate compensating control)
- document the repo-local automation (promote-v1, drift canary, ccc canary,
  confluence sync)
- CODEOWNERS (advisory while solo-maintainer)
Copilot AI review requested due to automatic review settings July 29, 2026 09:49
@DFSIdigital

DFSIdigital commented Jul 29, 2026

Copy link
Copy Markdown

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@laurenhitchon
laurenhitchon merged commit 6efab1d into main Jul 29, 2026
10 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Documentation truth-up for the nswds-devops fleet operating model: updates consumer-repo counts, clarifies v1 promotion mechanics and formatting standards, reconciles Renovate policy docs with current ESLint/Next.js realities, and adds an exceptions register plus advisory CODEOWNERS.

Changes:

  • Updates fleet-wide docs to reflect 24 consumer repos, ruleset-gated v1 promotion, and the retirement of the old ≤80-column rule.
  • Refines Renovate policy documentation around the ESLint-major block (status/removal conditions) and records repo-local automation workflows.
  • Adds an “Exceptions register” to MAINTENANCE.md and introduces advisory ownership routing via .github/CODEOWNERS.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
README.md Updates reusable-workflow stub guidance and v1 promotion description.
ONBOARDING.md Updates coverage statement to reflect current consumer repo count/timeline.
MAINTENANCE.md Retires old formatting guidance, documents promotion constraints and repo-local automation, adds an exceptions register.
docs/best-practices/renovate.md Updates Renovate guide for current fleet size and ESLint-major block rationale/conditions.
default.json Updates the embedded description for the ESLint/@eslint/js major block with current status/removal condition.
.github/sync.yml Updates rollout comment to reflect current consumer repo count.
.github/CODEOWNERS Adds advisory ownership mapping for critical fleet-wide surfaces.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

| `conventional-changelog-conventionalcommits` v10 | incompatible with release-notes-generator 14: releases succeed but changelogs silently come out empty (nswds-email#437; upstream #992) | a v10.x compatible with release-notes-generator 14 ships |
| `typescript` majors (6/7) | TS7 is the native compiler with no JS API: `next build` fails, typescript-eslint crashes, import-sorting silently no-ops (nswds-email#444) | Next.js + typescript-eslint declare TS 6/7 support |
| `eslint` majors (10) | ESLint 10 removed `context.getFilename()`, still called by eslint-plugin-react — every lint invocation crashes, and PR CI wouldn't catch it (nswds-app#418; vercel/next.js#89764) | eslint-config-next ships an ESLint-10-compatible plugin set |
| `eslint` majors (10) | ESLint 10 removed `context.getFilename()`, still called by eslint-plugin-react — every lint invocation crashes, and PR CI wouldn't catch it (nswds-app#418; vercel/next.js#89764). The `fixupConfigRules` shim now ships inside `@nswds/eslint-config`, and the 14 Next.js repos are on eslint ^10 through it — the block stays for **nswds-ui**, whose workspace config imports eslint-plugin-react with no shim | nswds-ui's workspace config wraps or adopts `@nswds/eslint-config/base` (re-check 2026-10) |
Comment thread README.md

Moving the `v1` tag changes CI for all 17 repos at once, instantly, with no
PRs. That's the point — and also why the tag only moves deliberately, after
(Stubs that need a secret map it explicitly — `secrets: inherit` is not used.)
@laurenhitchon
laurenhitchon deleted the docs/current-state-and-exceptions branch July 29, 2026 09:52
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.

3 participants