docs(session-flow): document override boundary for stage taxonomy and retro rubric - #489
docs(session-flow): document override boundary for stage taxonomy and retro rubric#489kyle-sexton wants to merge 8 commits into
Conversation
… retro rubric The workflow stage taxonomy and retro's five scoring dimensions were baked as universal defaults with no documented override boundary, against the extensibility contract's requirement to state how a consumer overrides without editing the plugin. Make the boundary explicit: both are fixed plugin identity with no consumer-config seam to swap them. What adapts — stage execution, gate commands, review criteria, and the conventions each dimension scores against — already flows through the consumer conventions the skills name. Documents the existing mechanism; no behavior change. Bumps to 0.10.2. Closes #433 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011V31qpAHP3jfs76B9d5Rfo
|
Claude finished @kyle-sexton's task in 1m 21s —— View job PR Review — docs(session-flow): document override boundary
This is a documentation-only patch across 4 files. No behavior changes. SummaryThe PR closes a documentation gap in the plugin extensibility contract by explicitly stating what is and isn't configurable in File-by-file notes
Checklist (REVIEW.md)
Nit (1)🟡 VerdictNo correctness issues, no security issues, no structural concerns. The boundary statement is accurate, consistently phrased between the two skills, and well-placed in both files. The PR does exactly what it says on the tin. |
|
Control-tower digest verdict: HOLD (not merge-ready as-is).
Otherwise clean: prose consistent, no leaked paths, no broken refs. |
Resolve session-flow version collision and CHANGELOG conflict; address #433 finding 2. - plugin.json: re-bump 0.10.2 -> 0.10.3 (main already shipped 0.10.2 via #469) - CHANGELOG: keep main 0.10.2 (retro HANDOFF_DIR fix) and re-home the override-boundary entry as 0.10.3, newest-first - workflow/context/pre-pr.md: add override-boundary note (finding 2) -- the pre-PR sequence incl. the simplify pass is fixed plugin identity; commands and criteria adapt at each gate, a differing consumer runs its own workflow Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Claude finished @kyle-sexton's task in 1m 38s —— View job PR Review — docs(session-flow): document override boundary
Both blocking issues from the prior HOLD verdict are resolved. This PR is clean. HOLD conditions — resolved
File-by-file notes
Checklist (REVIEW.md)
Nit (1)🟡 VerdictNo correctness issues, no security issues. Both HOLD conditions lifted. The |
|
Cleared the HOLD digest. Merged 1. Version collision. Main shipped session-flow 2. Finding 2 (addressed, not narrowed). Added an Override boundary note to Gates on all changed markdown: |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 92ef6cf9e7
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…w claim The override-boundary note claimed the `workflow` skill "already recognizes" a consumer's own documented pre-PR workflow "in place of this map." The skill has no such resolution path: its `pre-pr` mode always loads the fixed `context/pre-pr.md`, and the skill's override boundary states it never reads a consumer-supplied one. Reword so a genuinely different consumer process is described as run separately, outside this skill, rather than as something the skill swaps in — matching actual behavior and the SKILL.md override boundary. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f6dc1ade19
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
💡 Codex ReviewFor a consuming repository with a documented pre-PR process that has a different order or mandatory additional gates (for example, security review or approval), ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
…gates The override-boundary note read as if a consumer's gates are dropped once the fixed pre-PR map loads. Clarify that only the sequence skeleton (steps and order) is fixed plugin identity; a consumer's own commands, review criteria, and mandatory gates (e.g. security review, approval) are still honored at the matching step and enforced by the consumer's own CI and branch protection, which this advisory map never overrides. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Resolves a CHANGELOG heading conflict: main bracketed all session-flow CHANGELOG.md version headings to satisfy the new CHANGELOG-parity CI gate (#681); this branch's new 0.10.3 entry predated that reformat. Applied the bracketed `## [0.10.3]` form to the new entry so it matches the rest of the file.
|
Claude finished @kyle-sexton's task in 2m 22s —— View job PR Review — docs(session-flow): document override boundary for stage taxonomy and retro rubric
This is a documentation-only patch across 5 files. No behavior changes. Reviewed at the current HEAD ( HOLD conditions — all resolved
File-by-file notes
Checklist (REVIEW.md)
Nits (2)🟡 🟡 VerdictNo correctness issues, no security issues. All prior HOLD conditions lifted. The three boundary statements are accurate, architecturally consistent with each other, and correctly placed in their respective files. The Codex P2 is substantively addressed. PR is clean. |
… changelog
Resolve the L108 garden-path ("dimension set" scans as a compound noun) by
scoping the contrast to "the dimensions themselves", matching the workflow
skill's cleaner parallel. Add the pre-PR sequence skeleton to the 0.10.3
changelog entry so the pre-pr.md boundary is discoverable alongside the stage
taxonomy. Docs only; no behavior change.
|
Claude finished @kyle-sexton's task in 1m 22s —— View job PR Review — docs(session-flow): document override boundary for stage taxonomy and retro rubric
This review covers the final commit What changed in
|
| Nit | Status |
|---|---|
retro/SKILL.md L108: "dimension set" garden-path ambiguity |
✅ Resolved — "the dimensions themselves" |
CHANGELOG.md L7: pre-PR sequence skeleton not mentioned |
✅ Resolved — added to 0.10.3 entry |
One minor observation (non-blocking)
🟡 CHANGELOG.md L7: the constructed phrase is "The stage taxonomy and the pre-PR sequence skeleton (workflow) and the five scoring dimensions (retro)". A reader might momentarily wonder whether "(workflow)" qualifies only "the pre-PR sequence skeleton" or both it and "the stage taxonomy". Removing the second "the" — "the stage taxonomy and pre-PR sequence skeleton (workflow)" — would bind the parenthetical cleanly to both. This is a cosmetic read-once nit; not blocking.
Checklist
| Check | Result |
|---|---|
| Object-level authorization | N/A — docs only |
| Tenant-scoped data access | N/A |
| Secrets/credentials in source | None |
| Injection via string concatenation | N/A |
| Atomicity across related writes | N/A — no state writes |
| Audit logging for high-risk actions | N/A |
Verdict
All prior HOLD conditions and nits are resolved. The two deliverables in f32876a are exactly right: the wording fix removes the ambiguity without touching surrounding text, and the changelog update completes the audit trail for 0.10.3. PR is clean and ready to merge.
|
|
|
Claude finished @kyle-sexton's task in 1m 22s —— View job PR Review — docs(session-flow): document override boundary for stage taxonomy and retro rubric
The latest commit ( Status of all prior findings
File-by-file (current HEAD)
VerdictNo correctness issues, no security issues. The sync merge from main is clean. All prior HOLD conditions, nits, and review-thread items are resolved. PR is ready to merge. |
|
Claude finished @kyle-sexton's task in 1m 34s —— View job PR Review — docs(session-flow): document override boundary for stage taxonomy and retro rubric
This review covers HEAD Merge integrityMain is at session-flow Prior finding status
File-by-file (current HEAD)
Checklist (REVIEW.md)
VerdictNo correctness issues, no security issues. The sync merge is clean; no session-flow files were touched by it. All prior HOLD conditions and nits are resolved. PR is ready to merge. |
|
Claude finished @kyle-sexton's task in 1m 19s —— View job Security Review — docs(session-flow): document override boundary for stage taxonomy and retro rubric
Scope: 5 files, 29 additions, 1 deletion — documentation only. FindingsNo security issues found. RationaleAll five changed files are Markdown that serves as AI model instructions. The patch surface contains no security-relevant material:
Specific checks:
PR is clean from a security standpoint. |
|
Superseded by #746. This branch's tip ( Disabling auto-merge and closing in favor of #746. |
… retro rubric (signed supersede of #489) (#746) ## Summary `session-flow` baked a fixed workflow stage taxonomy (workflow's 8 stages) and a fixed 5-dimension retro scoring rubric as universal defaults, but never documented the override boundary. Per the plugin extensibility contract, a consumer must be told how to override without editing the plugin — this closes that documentation gap. ## Fix Make the boundary explicit in the two skills that own the fixed structure, documenting the existing mechanism rather than inventing one: - `workflow/SKILL.md` — new **Override boundary** bullet in "Consumer conventions": the stage set is fixed plugin identity, there is no seam to swap in a different taxonomy, and what adapts (execution, gate commands, review criteria) flows through the conventions already named in that section. - `retro/SKILL.md` — new "What this skill does NOT do" bullet: the five scoring dimensions are fixed plugin identity with no swap seam; what adapts is what each dimension scores *against* (the consumer's conventions, session-type calibration). Placed in `SKILL.md` rather than `context/session.md` because the dimensions surface across multiple mode context files, not just `session` mode. The honest boundary is "taxonomy/rubric is fixed; only execution, gates, and scoring criteria adapt" — the existing seam is the consumer's own tracked instruction files, already referenced by the adjacent conventions. No behavior change. Version bumped `0.10.1` -> `0.10.2` (docs = patch) with a matching CHANGELOG entry. ## Verification Ran the repo-pinned gates on all changed markdown (`workflow/SKILL.md`, `retro/SKILL.md`, `CHANGELOG.md`): - `markdownlint-cli2` v0.23.0 (schema-pinned in `.markdownlint-cli2.jsonc`), config `.markdownlint-cli2.jsonc` -> `Summary: 0 error(s)` - `typos` config `_typos.toml` -> exit 0, no findings - `editorconfig-checker` config `.editorconfig-checker.json` -> exit 0 `plugin.json` version single-homed (marketplace entry carries no version field). This PR supersedes #489: #489's branch tip (`fix/433-session-flow-override-boundary`) carries an unsigned merge commit (`92ef6cf9`, verification reason `unknown_key`) that the org's required-signatures ruleset permanently blocks from merging — the #631 known-issue class. Per the sanctioned playbook (precedent: #682 superseding #658), the existing branch's history was never rewritten; instead #489's net content vs `main` was materialized byte-identically and re-committed as a single signed commit on a fresh branch off current `main`. Closes #433 ## Related - #489 (superseded by this PR) - #631 (known issue class: unsigned merge commits blocked by required-signatures ruleset) - #682 (signed-supersede playbook precedent) Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Summary
session-flowbaked a fixed workflow stage taxonomy (workflow's 8 stages) and a fixed 5-dimension retro scoring rubric as universal defaults, but never documented the override boundary. Per the plugin extensibility contract, a consumer must be told how to override without editing the plugin — this closes that documentation gap.Fix
Make the boundary explicit in the two skills that own the fixed structure, documenting the existing mechanism rather than inventing one:
workflow/SKILL.md— new Override boundary bullet in "Consumer conventions": the stage set is fixed plugin identity, there is no seam to swap in a different taxonomy, and what adapts (execution, gate commands, review criteria) flows through the conventions already named in that section.retro/SKILL.md— new "What this skill does NOT do" bullet: the five scoring dimensions are fixed plugin identity with no swap seam; what adapts is what each dimension scores against (the consumer's conventions, session-type calibration). Placed inSKILL.mdrather thancontext/session.mdbecause the dimensions surface across multiple mode context files, not justsessionmode.The honest boundary is "taxonomy/rubric is fixed; only execution, gates, and scoring criteria adapt" — the existing seam is the consumer's own tracked instruction files, already referenced by the adjacent conventions. No behavior change. Version bumped
0.10.1→0.10.2(docs = patch) with a matching CHANGELOG entry.Verification
Ran the repo-pinned gates on all changed markdown (
workflow/SKILL.md,retro/SKILL.md,CHANGELOG.md):markdownlint-cli2v0.23.0 (schema-pinned in.markdownlint-cli2.jsonc), config.markdownlint-cli2.jsonc→Summary: 0 error(s)typosconfig_typos.toml→ exit 0, no findingseditorconfig-checkerconfig.editorconfig-checker.json→ exit 0plugin.jsonversion single-homed (marketplace entry carries no version field).Related
🤖 Generated with Claude Code