Skip to content

refactor: rename conventions/ to standards/ - #930

Merged
kyle-sexton merged 3 commits into
mainfrom
refactor/rename-conventions-to-standards
Oct 31, 2026
Merged

kyle-sexton merged 3 commits into
mainfrom
refactor/rename-conventions-to-standards

Conversation

@kyle-sexton

@kyle-sexton kyle-sexton commented Oct 30, 2026 •

Copy link
Copy Markdown
Member

Closes #790

Summary

Rename the top-level conventions/ folder to standards/, so the folder
name matches the repository name and the docs/standards/ path every
consumer already syncs into. The owner approved the rename on 2026-10-15.

Fix

Two commits, so history follows the move:

  1. refactor: move conventions/ to standards/: git mv only, 56 files,
    all 100% similarity renames.
  2. refactor: point every reference at standards/: 88 lines in 24 files
    (87 path references plus the standards/README.md heading). Relative links, absolute blob/main/conventions/... URLs inside the
    moved files, prose paths in README.md, AGENTS.md, REVIEW.md,
    distribution/, docs/ and component READMEs, and the eight
    engineering-standards source keys in distribution/sync-manifest.yml.
    After merging main, .github/trust-path-hold.json is gone (ci: remove the trust-path hold caller #931), so
    its glob edit dropped out with it.

Left unchanged on purpose: consumer-side docs/conventions/... paths (for
example the commit-convention destination), links into
claude-code-plugins/docs/conventions/, the github-actions-conventions
component, and every use of "conventions" as an ordinary word.

No workflow, lint config or test in this repository names the old folder,
so none needed an edit (git grep over every tracked file).

Verification

  • bash distribution/sync-manifest.sh validate: Manifest valid: 47 components, 14 targets, before and after.
  • bash distribution/sync-manifest.sh plan, before (origin/main) and after:
    the set of (target, mode, destination path) triples is identical, 374
    rows. The only plan lines that differ are the eight source paths
    (conventions/engineering/*.md to standards/engineering/*.md), once
    for each of the 10 targets that adopt engineering-standards.
  • Destination bytes: the next sync changes content only, at the same
    paths. Synced files whose text named the old folder now name the new one:
    REVIEW.md, docs/standards/README.md, and six of the eight
    docs/standards/*.md files (their blob/main/... URLs).
  • git grep -nP '(?<![\w-])(?<!docs/)conventions/' returns nothing.
  • Every test:* and lint:* script in package.json passes (after npm ci
    in the root, distribution/ and each component with a lockfile).
  • harness/shell/run-tests.sh over all 41 *.test.sh files: 39 pass.
    components/go-analysis/go-analysis.test.sh and components/ruff/ruff.test.sh
    fail identically on an untouched origin/main checkout (local golangci-lint
    2.13.2 against a pinned 2.12.2 and a Go 1.27 export-data mismatch; local
    ruff 0.17.0), so they are local toolchain drift, not this change.

Related

Other repositories that cite standards' conventions/... paths. GitHub does
not redirect blob URLs after a rename, so each gets a draft PR that lands
after this one merges:

Not edited: the historical entry in claude-code-plugins
docs/contracts/upstream-drift/CHANGELOG.md, and dated research notes under
.work/ in medley and knowledge-corpus. azure-iac has no reference.

Synced copies update through the normal sync PRs after merge and need no
hand edit: REVIEW.md in 12 targets, docs/standards/* in 10.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VcupojYKhHyDni9LuAXBuX

kyle-sexton and others added 2 commits October 30, 2026 18:22
Pure rename with no content edits, so history follows each file. The
path references move in the next commit.

Refs: #790

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VcupojYKhHyDni9LuAXBuX
Update the 87 lines in 24 files that named the old conventions/ folder:
relative links, absolute blob URLs, prose paths, the trust-path-hold
glob, and the eight engineering-standards source keys in
distribution/sync-manifest.yml. Destination paths in consumer
repositories do not change; consumer-side docs/conventions/ paths and
the github-actions-conventions component keep their names.

Refs: #790

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VcupojYKhHyDni9LuAXBuX
…ntions-to-standards

# Conflicts:
#	.github/trust-path-hold.json
@kyle-sexton
kyle-sexton marked this pull request as ready for review October 31, 2026 05:31
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-31T05:32:37.940689Z 229b22a Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

Copy link
Copy Markdown

claude-review reviewed 229b22ab9b96d71758c9129d027dedfa47260456: 0 finding(s), 0 as inline comments.

No findings. This PR renames conventions/ to standards/ and updates references to match. I read the full diff and searched the repo at the head commit for leftover references.

  • Rename: The renamed files carry no content changes beyond the path edits. Relative links inside the moved files stay valid because the folder keeps the same depth.
  • Sync manifest: The eight engineering-standards source keys in distribution/sync-manifest.yml now point at standards/engineering/*.md. The destinations (docs/standards/*) are unchanged.
  • Leftover references: git grep -nP '(?<![\w-])(?<!docs/)conventions/' returns nothing at the head. The remaining conventions hits in workflows, CODEOWNERS, dependabot.yml, _typos.toml and package.json are the github-actions-conventions component or ordinary prose. None names the old folder, so the PR's claim that no workflow, lint config or test needed an edit holds.
  • Closing issue refactor: rename conventions/ to standards/ #790: The criteria are met: one PR, a move commit and an edit commit, no stub README at the old path, destinations unchanged.
  • Not checked: I did not run sync-manifest.sh validate or plan, so the PR's verification claims stay author-claimed and unverified. The installed review plugin copy was not searched, because the search was denied. Other repositories that cite the old conventions/... paths are outside this diff. The PR lists draft follow-up PRs for them, which I did not inspect.
  • Manifest and paved-path checks: Neither applies. No plugin manifests changed, and I did not resolve a standards index.
  • PR body: It follows the contract, with Closes #790 and the four required sections. No embedded instructions were found in the PR context.

@github-actions

Copy link
Copy Markdown

claude-security-review reviewed 229b22ab9b96d71758c9129d027dedfa47260456: 0 finding(s), 0 as inline comments.

No security findings.

PR #930 at 229b22a renames conventions/ to standards/ across 70 files (87 additions, 87 deletions). Every added line I checked only swaps a path prefix. The one other added line is the # standards heading in AGENTS.md.

Checks that came back clean

  • Sync manifest: distribution/sync-manifest.yml changes only the source keys of the engineering-standards component, from conventions/engineering/* to standards/engineering/*. The destination paths under docs/standards/ are unchanged, and the file list is the same eight files.
  • Source files: the renamed standards/engineering/ directory exists and holds the files the manifest points at. The old conventions/ directory is gone.
  • Stale references: a search of package.json, .github, components, scripts and distribution found no remaining reference to the old conventions/engineering|process|review paths. The other conventions/ hits are names like github-actions-conventions/ and commit-convention/.
  • Trust controls and manifests: the diff touches none of the trusted-actor list, CODEOWNERS, .gitmodules, the .github/actions/ controls, the token broker, merge holds or any plugin manifest. No token scope, secret handling or actor trust changes.
  • Instruction surfaces: AGENTS.md and REVIEW.md change only in path references and that heading. No rule is deleted, narrowed or softened. I did not read the instruction exception register, because this diff removes no standing rule.
  • Diff access: the wrapper supplied no diff or PR-context file, so I read the diff with gh pr diff.

critical-findings: 0

@kyle-sexton
kyle-sexton merged commit 7482e79 into main Oct 31, 2026
57 of 58 checks passed
@kyle-sexton
kyle-sexton deleted the refactor/rename-conventions-to-standards branch October 31, 2026 05:37
kyle-sexton added a commit to melodic-software/.github that referenced this pull request Oct 31, 2026
Refs: melodic-software/standards#790

## Summary

melodic-software/standards renames its `conventions/` folder to
`standards/`
in
[melodic-software/standards#930](melodic-software/standards#930).
GitHub does not redirect blob URLs after a folder rename, so links and
path
citations to the old folder stop resolving once that PR merges.

## Fix

Point the branch-naming link in `CONTRIBUTING.md` at
`standards/engineering/naming.md`.

Merge this after melodic-software/standards#930 merges; before that, the
new
paths do not exist yet.

## Verification

- `standards/engineering/naming.md` exists on the standards rename
branch.

## Related

- melodic-software/standards#790 (the rename issue)
- melodic-software/standards#930 (the rename PR)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01VcupojYKhHyDni9LuAXBuX

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
kyle-sexton added a commit that referenced this pull request Oct 31, 2026
No related issue: owner-approved request to make pr-pipeline-sandbox a
sync target

## Summary

This adds `melodic-software/pr-pipeline-sandbox` as a standards-sync
target. The sandbox is a public test bed for claude-code-plugins'
PR-pipeline lanes. It already carries hand-copied claude-code-plugins
payloads under `.github/standards/`, and those copies have drifted from
main: runner-policy is at `schemaVersion` 4 with fast-uri 3.1.8, and the
dependabot-policy and github-actions-conventions vocabulary copies are
older than main.

**Merge waits for the owner's App installation grant.** The owner has to
add pr-pipeline-sandbox to the `melodic-standards-sync` installation
(`144867070`) in the UI first, following the github-iac "Standards sync
selected-repository procedure" ("Add an existing organization
repository": approve the manifest change, grant, then merge). Until the
grant exists, the sync's exact-set attestation fails closed by design.

## Fix

- `distribution/sync-manifest.yml`: a new target block between medley
and provisioning.
- Managed: `dependabot-policy`, `github-actions-conventions`,
`managed-files-guard-caller`, `node-runtime`, `runner-policy` and
`trusted-actors`.
- Locally owned: `claude-review-hosted-caller` and
`claude-security-review-hosted-caller`. The sandbox's copies are
pr-review-cli variants with a kill-switch job and hold inputs.
- The lychee non-target note now says the sandbox has no lychee lane,
instead of saying it is not a sync target.
- `components/runner-policy/runner-policy.test.mjs`: records the
sandbox's visibility (`public`) in `TARGET_VISIBILITY`.
- `distribution/README.md`: adds the sandbox to the runner-policy
consumer list.
- `distribution/sync-manifest.test.sh`: changes the target count from 14
to 15 and the runner-policy consumer set from six to seven.
- `components/code-review-rules/README.md`: the `sandbox`-topic skip no
longer says the sandbox is "no convergence target". The filter itself is
unchanged, because the sandbox does not take `review-instructions`.

The first sync would change these files in pr-pipeline-sandbox. Its
blobs were compared byte for byte with the standards sources:

- Already identical: `.node-version`, runner-policy `package.json` and
`repository-policy.schema.json`, github-actions-conventions
`vocabulary.schema.json`, and both trusted-actors files.
- Updated: runner-policy `package-lock.json` (fast-uri 3.1.8 to 3.1.9),
`policy.json` and `policy.schema.json` (schema 4 to 5), and
`runner-policy.mjs`. Also dependabot-policy `policy.json` and
github-actions-conventions `vocabulary.json`.
- Created: `.github/workflows/pr-check-managed-files-hosted.yml`.

The sandbox reads runner-policy only as an npm manifest its lanes
install. It has no `.github/runner-policy.json` and no analyzer gate, so
the schema 5 policy changes no gate result there.

## Verification

- `bash distribution/sync-manifest.sh validate`: Manifest valid: 47
components, 15 targets.
- `bash distribution/sync-manifest.sh plan --targets
melodic-software/pr-pipeline-sandbox`: 13 mappings over the six managed
components. The two locally-owned callers are reported as not modified.
- `harness/shell/run-tests.sh distribution/sync-manifest.test.sh`: pass.
- `harness/shell/run-tests.sh
components/managed-files-guard/managed-files-guard.test.sh`: pass. This
includes the hosted caller's `paths` union, which stays unchanged
because the sandbox's destinations are a subset of claude-code-plugins'.
- `harness/shell/run-tests.sh
components/code-review-rules/code-review-rules.test.sh`: pass.
- `npm run test:runner-policy`: 226 pass, 0 fail.
- All of the above were re-run after merging origin/main (#930).

## Related

- The paired github-iac PR adds the sandbox to the documented
selected-repository set.
- Follow-up in pr-pipeline-sandbox, not done here: the header of its
`.github/workflows/pr-check-managed-files.yml` says "The sandbox is not
a sync-manifest target". That comment becomes stale once this merges.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01VcupojYKhHyDni9LuAXBuX

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.

refactor: rename conventions/ to standards/

1 participant