docs(specs): spec 016 standardised Claude Code cloud environment - #3525
Conversation
Specification for a shared Claude Code cloud environment and branch-name enforcement, so cloud sessions follow the branching strategy instead of the platform's claude/* branch. Implementation: PR #3524. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: lightspeedwp/.github/.coderabbit.yml Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 1 files. (12 skipped: 12 unsupported.) ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
PR Template RoutingBranch Type: This PR was automatically routed based on the branch naming strategy. |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
…ollow-up Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Resolves the conflict found by /speckit-analyze: empty claude/* branch cleanup is delivered as a narrow auto-approval rule in spec 009's categoriser and scheduled workflow (PR #3358), not a separate job. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
…ession Covers the legacy PR exception, no-rename for claude/* branches with commits, fail-closed guard faults for git writes, and guard self-protection with a CODEOWNERS entry (research R9 to R12). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mgscu7Lafs29itSvmfM5Zg
Resolve the CHANGELOG.md conflict: develop now has an Unreleased "### Added" section (#3480), so the #3525 entry joins it instead of adding a second heading. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rof5jDycmaTXWW8nFLP8af
AI Feedback Validation Report❌ No issue link found: the PR must include Required actions
|
Adds `CHANGELOG.md merge=union` from develop so the merge below resolves the changelog automatically instead of by hand. Needed because git reads merge attributes from the working tree being merged into, so the branch must carry the attribute before develop can be merged in.
Heads-up: spec number 016 is now taken on
|
|
Status check (read-only): this branch conflicts with develop and needs a rebase. It pairs with #3524 (shared Claude Code cloud environment and branch-name guard), which is also open and blocked, so the two probably want rebasing and reviewing together. No code has been changed on this PR. |
Blocked on one decision: spec 016 is taken on
|
…016 -> 018 Two things in one commit because they are the same change: the CATALOG.md conflict could only be resolved by deciding this spec's number, so the renumber is part of resolving the merge. develop already owns 016-changelog-agent-quality and 017-ci-failure-remediation, so numbering this spec 016 duplicated 016. Renumbered to 018, the next free number, which is also what CATALOG.md's own "determine the next number" rule asks for. Nothing in the spec's content changed. - `git mv .github/specs/016-claude-cloud-environment` -> `.../018-...`, so the directory history is preserved - CATALOG.md: conflict resolved by keeping develop's 014, 015 and 016 rows and re-adding this spec as 018; the narrative section heading and its spec link follow - spec.md, plan.md and tasks.md: directory path references updated - tests/js/claude-cloud-environment-docs.test.js: the spec directory constant and the catalogue row filter now match 0(18) Deliberately NOT changed: the FR-016 and FR-018 requirement IDs in spec.md and its tests. Those are functional-requirement numbers, not spec numbers, so the renumber does not touch them. Verified: `git grep 016-claude-cloud-environment` returns nothing repo-wide; CATALOG.md has no duplicate number; `bash .specify/scripts/bash/audit-specs.sh` reports 18/18 naming compliance and 18/18 spec.md present with no duplicate error; `npx jest --config .jest.config.cjs tests/js/claude-cloud-environment-docs.test.js` passes 37/37; `npm run validate:changelog` passes. Two review findings were dismissed as pre-existing on develop, not introduced here: a blank line in the docs/LINEAR_INTEGRATION.md review-category table, and duplicate `### Fixed` sections in CHANGELOG.md (develop has the same structure at lines 202, 246 and 264 with the same three entries). Both are develop's content; fixing them here would put unrelated changes in this PR.
|
No description provided. |
Documentation Pull Request
Linked issues
claude/*cleanup rule.This PR doesn't close any of them: it adds the specification, and the implementation lands in those PRs.
What changed
This PR adds the full SpecKit record for spec 016, Standardised Claude Code Cloud Environment, in
.github/specs/016-claude-cloud-environment/. It also adds contract tests for it.spec.md(status: Draft): three prioritised user stories.The spec also has functional requirements, success criteria SC-001 to SC-008, edge cases, assumptions, and the clarifications from two
/speckit-clarifysessions.Design:
plan.md,research.md,data-model.mdandcontracts/.contracts/hooks.mdcovers the hooks, andcontracts/branch-cleanup.mdcovers the extension to spec 009's categoriser and workflow.quickstart.md: validation steps that can be run, from automated checks through to a real cloud session.tasks.md: 51 tasks, 36 of them ticked because they were delivered in chore: shared Claude Code cloud environment and branch-name guard #3524 or docs(specs/009): record branch naming clarification and align working branch #3358. The open ones are:checklists/: the requirements and security checklists. The reviewer ticks the security items..github/specs/CATALOG.md: spec 016 is listed under Draft Specifications, with its own detailed entry.tests/js/claude-cloud-environment-docs.test.js: Jest contract checks that keep the spec, plan, tasks and contracts consistent with each other.CHANGELOG.md: an Unreleased → Added entry.Audience & placement
.github/specs/016-claude-cloud-environment/, under the SpecKit numbering scheme. Specs 014 and 015 aren't in the catalogue yet, and this PR doesn't touch them.Preview / Screenshots
N/A: this PR is Markdown plus one test file.
Notes
Draftstatus and the catalogue date. Update the tests whenever those change.cb53f83c:develophas been merged in, so there's no merge conflict.npx jest tests/js/claude-cloud-environment-docs.test.jspasses 37 of 37.Changelog
Added
Checklist (Global DoD / PR)
checklists/security.md.🤖 Generated with Claude Code
https://claude.ai/code/session_014Co9SZUTwfLmMUr92dvMqF