Skip to content

fix: converge concurrent issue completion safely - #629

Merged
efraespada merged 2 commits into
developfrom
bugfix/622-bot-driven-issue-closure-can-fail-workflow-stale-after-successful-pr-completion
Oct 20, 2026
Merged

efraespada merged 2 commits into
developfrom
bugfix/622-bot-driven-issue-closure-can-fail-workflow-stale-after-successful-pr-completion

Conversation

@efraespada

@efraespada efraespada commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Concurrent merged-PR and closed-issue workflows now converge after freshly verifying native closure, metadata and exact owned-card retirement. A verified duplicate is explicit in the Job Summary; reopened/reason-changed issues and incomplete cleanup still fail with bounded causal recovery details.

What changed

  • Share two bounded selective metadata passes between PR completion and the closed-event route; adopt concurrent label effects only after a fresh same-closure read.
  • Verify final owned-card bodies and native state before accepting concurrent or ambiguous retirement, retaining confirmed partial effects.
  • Show localized reconciled/already-converged cleanup counts and preserve every independent required failure.
  • Update specifications/catalog evidence, recovery documentation and reproducible generated bundles.

Validation

  • Full coverage: 685 suites, 11,108 passed, 35 configured skips; all coverage budgets passed.
  • Types, lint, architecture/capability constraints, documentation/workflow/specification validators, generated bundle/package validation and Graphify passed.
  • Deterministic races cover concurrent PR/closed delivery, duplicate events, lost write responses, reopen/reason movement and retained partial cleanup.

No global suppression of workflow.stale is introduced. A promoted consumer completion sequence is still needed for live acceptance; the original incident did not establish its exact failing fence.

Closes #622

@docs-page

docs-page Bot commented Oct 20, 2026

Copy link
Copy Markdown

To preview the documentation for this pull request, visit the following URL:

docs.page/vypdev/copilot~629

Documentation is deployed and generated using docs.page

@vypbot
vypbot self-requested a review October 20, 2026 18:12
@vypbot vypbot added this to vypdev Oct 20, 2026
@vypbot vypbot moved this to In Progress in vypdev Oct 20, 2026
@vypbot
vypbot changed the base branch from develop to master October 20, 2026 18:13
@vypbot
vypbot changed the base branch from master to develop October 20, 2026 18:13
@vypbot vypbot added size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. 85% Progress: 85% labels Oct 20, 2026
@vypbot

vypbot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Bugbot: review complete

Current status: No active findings on cda00a8.

Pull request · Verified commit · Workflow run

@vypbot

vypbot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Copilot approval · Human review needed

Status: A protected workflow, policy, or trust-boundary file changed.
Completed: 1/1 observed checks succeeded; Bugbot unverified.
Action required: Ask a human reviewer to decide.
Impact: No new approval is confirmed for this revision.
See checks

Technical evidence

Revision: a6102f78a974; base: 7c895ca79491; reason: protected-path.

@codecov-commenter

codecov-commenter commented Oct 20, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.74011% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 94.10%. Comparing base (274db40) to head (a6102f7).
⚠️ Report is 1549 commits behind head on develop.

Files with missing lines Patch % Lines
...on/usecases/actions/retire_branch_sync_use_case.ts 94.44% 0 Missing and 2 partials ⚠️
...ation/usecases/actions/retire_progress_use_case.ts 94.28% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #629      +/-   ##
===========================================
+ Coverage    90.94%   94.10%   +3.16%     
===========================================
  Files          135      950     +815     
  Lines         6251    30548   +24297     
  Branches      1338     8965    +7627     
===========================================
+ Hits          5685    28748   +23063     
- Misses         172      704     +532     
- Partials       394     1096     +702     
Files with missing lines Coverage Δ
...cation/errors/closed_issue_reconciliation_error.ts 100.00% <100.00%> (ø)
...ication/policies/action_summary_message_catalog.ts 100.00% <ø> (ø)
src/application/policies/action_summary_policy.ts 97.29% <100.00%> (ø)
...tion/policies/application_error_message_catalog.ts 100.00% <ø> (ø)
...cies/closed_issue_reconciliation_outcome_policy.ts 100.00% <100.00%> (ø)
...ctions/reconcile_closed_issue_metadata_use_case.ts 100.00% <100.00%> (ø)
...ses/actions/reconcile_issue_completion_metadata.ts 100.00% <100.00%> (ø)
...ses/actions/verify_closed_issue_card_retirement.ts 100.00% <100.00%> (ø)
.../steps/issue/close_issue_after_merging_use_case.ts 100.00% <100.00%> (ø)
src/data/model/application_error.ts 100.00% <100.00%> (ø)
... and 3 more

... and 1004 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@efraespada

Copy link
Copy Markdown
Member Author

/copilot sync-branch

@vypbot

vypbot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Branch synchronized

develop was merged into bugfix/622-bot-driven-issue-closure-can-fail-workflow-stale-after-successful-pr-completion and pushed as a6102f78a974723bdcea00a54ff3f0cb1387e07b.

The fixer resolved 8 conflicted files.

6 verification checks passed.

@efraespada
efraespada merged commit 149fa04 into develop Oct 20, 2026
12 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in vypdev Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

85% Progress: 85% size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. state:verified

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

🐛🧑‍💻 - Bot driven issue closure can fail workflow.stale after successful PR completion

3 participants