refactor(workflow): S17 end-to-end cutover matrix#1590
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 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 |
0040cf8 to
af43c55
Compare
6e69a10 to
1c32f07
Compare
Greptile SummaryThis draft S17 PR adds an executable cutover matrix for the workflow-owned merge migration, proving merge classification, retry exhaustion, recovery event publishing, branch-group gate decisions, and workflow-first projection over legacy retry fields. It addresses the three gaps called out in earlier rounds: the
Confidence Score: 4/5Safe to merge as a draft placeholder; the one actionable gap should be fixed before this slice is marked ready. The branch-group it() block leaves the non-shared-member blocking path untested — if the !isSharedMember guard were removed from decideBranchGroupMemberIntegration, all members would pass with allowed: true and this test would not catch it. That is the only real defect in an otherwise well-structured test file that addresses all three gaps flagged in earlier review rounds. packages/engine/src/tests/workflow-cutover-matrix.test.ts — the branch-group gate test needs a second assertion for the non-shared member path. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[classifyMergePrimitiveResult] --> B{data.status?}
B -- merged --> C{data.noOp?}
C -- true --> D["already-landed tested"]
C -- false --> E["merged tested"]
B -- manual-required --> F["manual-required tested"]
B -- timeout --> G["transient-failure tested"]
B -- failed --> H[classifyMergeFailure]
B -- merged-requested --> I["merged-requested not in matrix"]
B -- stale-head --> J["stale-head not in matrix"]
B -- other --> K["passthrough primitiveOutcome"]
H --> L{normalized reason}
L -- file scope --> M["file-scope-violation tested"]
L -- already + main/merged/landed --> N["already-landed tested"]
L -- socket/transient --> O["transient-failure tested"]
L -- manual/conflict --> P["manual-required tested"]
L -- default --> Q["merge-failed tested"]
Reviews (8): Last reviewed commit: "test(FN-000): cover merge failure cutove..." | Re-trigger Greptile |
af43c55 to
42f1c6c
Compare
1c32f07 to
5fb5c9a
Compare
42f1c6c to
ab6a3ea
Compare
5fb5c9a to
75a1709
Compare
ab6a3ea to
95d7e79
Compare
75a1709 to
db51323
Compare
95d7e79 to
c1b51bd
Compare
d751bc4 to
1fc96ee
Compare
c1b51bd to
cde8801
Compare
1fc96ee to
7beabf9
Compare
cde8801 to
a71b495
Compare
7beabf9 to
47bfa0e
Compare
47bfa0e to
e7391a5
Compare
a9ba949 to
8382a87
Compare
61c1924 to
e7b76ff
Compare
8382a87 to
a29b5d9
Compare
e7b76ff to
74624f9
Compare
2d5f995 to
5c07d45
Compare
Address PR #1590 feedback by adding transient and permanent merge failure classification branches to the workflow-owned merge cutover matrix.
74624f9 to
51057f7
Compare
Fusion-Task-Id: FN-000
Address PR #1590 feedback by adding transient and permanent merge failure classification branches to the workflow-owned merge cutover matrix.
5c07d45 to
edd43ce
Compare
51057f7 to
2ce9a9f
Compare
Addressed: the cutover matrix now covers timeout plus all failed-merge classifier branches, including transient, file-scope, stale-head, manual-required, and permanent failure routing. |
|
Ready to review this PR? Stage has broken it down into 2 individual chapters for you:
Chapters generated by Stage for commit 2ce9a9f on Jun 16, 2026 9:19am UTC. |
06516c3
into
feature/workflow-owned-merge-s08-workflow-owned-merge-processing
Stack Slice
feature/workflow-owned-merge-s16-legacy-retry-field-demotiondocs/plans/2026-06-09-003-refactor-workflow-owned-merge-full-migration-slices-plan.mdGoal
Prove the full workflow-owned invariant across all known production surfaces before removing dual-read compatibility.
Dependency
S13 scheduler deletion, S14 merge queue deletion, S15 self-healing deletion, and S16 retry field demotion.
Expected Scope
engine reliability tests, core store tests, dashboard projection tests, docs/testing.md.
Expected Tests
Default coding, stepwise coding, custom workflow, PR workflow, plugin workflow extension, autoMerge false, manual retry, hard cancel, restart during merge, transient/permanent merge failures, branch groups, stale recovery, already-landed finalization, dashboard and CLI projections.
Exit Gate
Gate, lint, build, and targeted matrix suites pass with no old engine merge/retry/scheduling policy path racing workflow runtime.
Status
Draft stack placeholder. This PR reserves ordering and review context; implementation should replace or extend the handoff artifact before this slice is marked ready.
Implementation Added