Skip to content

feat: add queue-first collaboration request protocol - #444

Closed
ronak-guliani wants to merge 2 commits into
feat/pr-acceptance-evidencefrom
feat/collaboration-request-protocol
Closed

ronak-guliani wants to merge 2 commits into
feat/pr-acceptance-evidencefrom
feat/collaboration-request-protocol

Conversation

@ronak-guliani

@ronak-guliani ronak-guliani commented Sep 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

Stack PR #444 on the finalized acceptance foundation in PR #443 without merging either PR.

  • Reuse PR Add collaborative acceptance domain and persistence foundation #441's canonical CollaborativeAcceptanceCaseId, CollaborativeAcceptanceCandidateId, CollaborativeAcceptanceExchangeId, and CollaborativeAcceptanceRequestTransportContext; collaboration transport no longer owns a duplicate exchange lifecycle or budget state machine.
  • Keep request identity, typed immutable case/candidate/finding-revision/exchange references, monitor provenance, authority bindings, producing execution generation, payload references, supersession, response correlation, and terminal outcomes durable in orchestration projections.
  • Renumber the collaboration projection migration to 098, preserve canonical migrations 096 and 097, repair skipped projection prerequisites before ALTER TABLE, and add divergent-ledger coverage.
  • Harden response, cancellation, supersession, response deletion/reopen, override, and consumption authorization with bound sender/recipient execution authorities and cross-thread rejection tests.
  • Use notification-delivered plus a terminal outcome for nonblocking requests; schema invariants reject impossible response-ready states.
  • Preserve the existing queued-turn reactor, task-scoped waits, user-authored priority, active-turn non-interruption, generation-fenced response consumption, direct-cycle escalation, and exactly-once queue/projection behavior.

Canonical stack and persistence proof

Validation

  • pnpm fmt:check — passed.
  • pnpm lint — passed with existing repository warnings only.
  • pnpm typecheck — passed.
  • pnpm test — passed: 291 test files passed, 2 skipped; 2,505 tests passed, 9 skipped; server serial suite 102/102 passed.
  • Focused protocol/migration tests — passed: 7/7.
  • Head: 9a06eb7209d88d29a87a9884121f7eec384b87ec.
  • CI was queued/in progress at update time; follow-up CI results are authoritative.

Browser scenarios remain pending parent-owned integrated validation: busy-parent queued delivery, generation-fenced response continuation, retry/supersession/reopen recovery, and direct circular-wait handling. No browser/dev-server validation is claimed here.

Follow-on integration assumptions

  • Coordinator/provider work must create or reference the canonical acceptance exchange before issuing a collaboration request and pass immutable monitor provenance from the PR-monitor adapter; request transport must not infer identity from mutable thread/PR state.
  • Acceptance owns exchange budget/status transitions; request orchestration owns only correlated delivery, task-scoped waits, and generation-fenced consumption.
  • Later automation/UI work should use the existing orchestration dispatch and QueuedTurnReactor, preserve user priority, and treat needs-human as an explicit escalation rather than a retryable wait.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL labels Sep 19, 2026
Reconcile collaboration request transport with canonical acceptance exchanges, harden migration recovery and mutation authorization, and add divergent-ledger and protocol coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions github-actions Bot added size:XXL and removed size:XL labels Sep 19, 2026
@ronak-guliani
ronak-guliani changed the base branch from main to feat/pr-acceptance-evidence September 19, 2026 23:48
@ronak-guliani

Copy link
Copy Markdown
Owner Author

Superseded by the single aggregate PR #447, which contains this PR's changes plus the complete collaborative-acceptance stack and is based directly on main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant