docs(dedup-program): record medley Phase 6 cutover (option b) + parity backlog - #37
Merged
Merged
Conversation
…y backlog medley cut over its cleanly-referenceable lanes to ci-workflows references (PRs #1156-#1160): typos, actionlint, check-jsonschema, eol-renormalize, exec-bit, machine-specific-paths, markdown (lint), ruff, plus advisory zizmor/osv; .editorconfig-checker.json Version re-synced to "". The cutover is lossless in coverage (ci-status green throughout), not lossless-by-reference — gap lanes stay inline. - rollout.md: medley row + per-repo note + sequence reflect the partial cutover. - plan.md: Phase 4 records the option-b decision and the action parity/strictness gaps the cutover surfaced (editorconfig discovery, shellcheck severity, pyright --warnings, comment-hygiene coarse-regex, gitleaks history, lychee config) as the backlog for a future lossless-by-reference cutover; powershell + markdown parity confirmed; the Phase 6 medley item checked at option-b scope. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
kyle-sexton
added a commit
that referenced
this pull request
Jul 7, 2026
## Summary Activation-log precision after tonight's completion burst: both Layer-1 packages are published (`@melodic-software/biome-config@1.0.0`, `@melodic-software/tsconfig@1.0.0` — publish run 28837460018) and the org-side Layer-2 rollout is done (sync PRs merged in all four org targets). The checklist now names exactly what remains and why: the package visibility flip (manual UI, no API) gating the medley conversion, the personal-account App install gating the kyle-sexton legs, and the read-only marking. ## Verification markdownlint (module config) clean. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01GbDWhcUtduCejgi7mcbMfy <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Documentation-only activation-log update with no runtime or config behavior changes. > > **Overview** > Updates the Track B **activation checklist** in `config-distribution-plan.md` to reflect work completed on 2026-07-06, without checking off the two parent items yet. > > For **Layer-1**, the text now states both `@melodic-software/*` packages are published at `@1.0.0` (not only that the workflow landed) and spells out what still blocks the medley pilot: the **manual public-visibility flip** (no API), because a private package cannot be read from medley's CI token. > > For **Layer-2**, the pilot note now records that `github-iac` PR #37 merged (App bot–signed) and that **all four org targets** finished sync and merge, with PR references. What remains before the checkbox can close is **read-only marking** and **personal-account** sync legs, still gated on the GitHub App install on `kyle-sexton`. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 35a11ae. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5 tasks
kyle-sexton
added a commit
that referenced
this pull request
Jul 15, 2026
…on governance (#123) ## Summary Closes decisions **#27**, **#63**, and **#65** from the [Decisions Log](https://claude.ai/code/artifact/232ecdce-8316-4880-8c0a-dc3c7dcf3a63) (evidence/rationale: https://claude.ai/code/artifact/3160ae0e-c02f-4619-8de3-60d73faa1100). ### #63 metadata-standards-copy-vs-cite-doctrine Decision: **keep the "copy" adoption path, require back-link + drift-check.** Adds `distribution/governance-process.md`. `conventions/README.md` already documents two adoption paths for reasoning-only prose — copy into the consumer's tree, or point at this repo. The copy path stays available (prose has no runtime coupling to enforce reconciliation the way `sync-manifest.yml` does), but a copy now carries two mandatory requirements: - **Back-link** — every copied file cites its exact canonical source (repo + path, inline header where the format allows it), using the same stable-anchor citation discipline `reference-dont-duplicate.md` already prescribes for the "Expose" file role. - **Drift-check** — the adopting repo owns a periodic diff of its copy against the current canonical source, with a named owner and trigger, mirroring the recheck-trigger discipline `documentation-and-citations.md` already requires for time-bound external claims. The doc is explicit that this is distinct from a `managed` `sync-manifest.yml` component, which already reconciles automatically and deliberately carries no downstream receipt — the back-link/drift-check burden applies only where nothing else keeps a copy current. ### #65 naming-cross-doc-reconciliation-process-ownership Decision: **establish a standing cross-reference review step for normative-doc changes.** Same doc adds the standing process step: before a change to a normative doc (`naming.md`, `process/issue-tracker.md`, `review/code-quality.md`, and any other file in the catalog stating a rule another doc cites or assumes) merges, a cross-reference check confirms no other doc now contradicts it. Ownership is named explicitly rather than left implicit: `required_approving_review_count` stays at `0` org-wide (decision #11, single-maintainer), so there is no independent blocking reviewer to gate this. The step is documented as a **self-review checklist item the author performs before merge**, with a documented future automation path — extending the periodic cross-plugin-source consistency check (decision #37, for `claude-code-plugins`) to this repo's own normative docs once that check exists, so the control stops depending solely on author diligence. `conventions/README.md` gets a new "Changing a normative file" pointer to this requirement; `distribution/README.md` gets a pointer alongside its existing `THREAT-MODEL.md` reference. ### #27 tooling-gov-conventions-graduate-to-enforced Decision: **graduate mechanically-checkable rules into sync-manifest-tracked components.** Reviewed every file under `conventions/` against `enforceability-tiers.md`'s deterministic/detect-then-judge/reasoning-only split. Finding: **no ungraduated deterministic rule exists to graduate.** Every deterministic (mechanically-checkable) rule already points to its owning component instead of restating it: | Convention area | Deterministic rule | Owning component | Tracked in `sync-manifest.yml`? | |---|---|---|---| | Secrets (`review/security.md`) | no secrets in source | `gitleaks` | yes | | Comments (`review/code-quality.md`) | debt markers / tracker provenance | `comment-hygiene` | yes (`comment-hygiene-action`) | | Citations (`documentation-and-citations.md`) | cited URL resolves | link check | yes (`lychee`) | | TypeScript/JS (`review/overlays/typescript.md`) | lint/format/import order, type correctness | `biome`, `tsconfig` | **no** — deliberately native-package (`extends`) adoption per `distribution/README.md`'s ownership model, not exact materialization | | Python (`review/overlays/python.md`) | lint/format, type correctness | `ruff`, `pyright` | yes | | .NET (`review/overlays/dotnet.md`) | analyzers, code style, banned symbols | `dotnet-analysis` | yes | | Container build (`container-supply-chain.md`) | Docker Build checks, OSV scans | *(none yet)* | **no** — the convention itself explicitly defers this pending live-consumer admission evidence per `docs/component-lifecycle.md`; graduating it without that evidence would violate the same lifecycle contract | | PR titles (`review/code-quality.md`) | Conventional Commits format | *(ci-workflows `pr-title.yml`)* | out of this repo's materialization surface — owned by `ci-workflows`, per README.md's ownership boundaries | | Naming (`naming.md`), label/issue-tracker usage (`process/issue-tracker.md`), duplication (`reference-dont-duplicate.md`) | — | — | self-declared reasoning-only; no deterministic subset exists to graduate | No `sync-manifest.yml` change is included. The one adjacent orphan noticed in passing — `components/lefthook-typescript` exists, is fully built, but is not registered in `sync-manifest.yml` for any target — is tooling infrastructure, not a `conventions/` rule, and assigning it to a target's `managed:` list is a separate adoption decision requiring its own admission evidence; flagging it here for a follow-up rather than folding it into this PR. ## Test plan - [x] `npx markdownlint-cli2` — 0 errors across the full repo (71 files, including the new/changed docs) - [x] `lychee` — 21/21 links OK on the changed files (0 errors) - [x] `typos` — clean on the changed files - [x] `lefthook` pre-commit (typos, editorconfig, gitleaks, markdownlint) — all passed at commit time - [ ] Maintainer confirms the #27 classification table before merge — no code/config changed, so this PR is prose-only and carries no behavioral risk 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
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.
What
Propagate the dedup-program docs to reflect medley's Phase 6 cutover (option b),
which landed across PRs #1156–#1160 in
melodic-software/medley.cutover as done for the cleanly-referenceable lanes (lossless in coverage,
ci-statusgreen throughout — not lossless-by-reference), and enumerate whatcut over vs what stays inline.
ci-workflowsaction parity/strictness gaps the cutover surfaced (editorconfig discovery,
shellcheck severity, pyright
--warnings, comment-hygiene coarse-regex,gitleaks history-scan, lychee config) as the concrete backlog for a future
lossless-by-reference cutover;
powershell+markdowninput parity confirmed;the Phase 6 medley checkbox marked at option-b scope.
Docs-only; markdownlint-clean under the standards config.
🤖 Generated with Claude Code