Skip to content

feat: native unfinished-Issue event continuation through Oracle Task queue (CCY1-2746) - #10053

Closed
fuhao6539-ship-it wants to merge 1 commit into
multica-ai:mainfrom
fuhao6539-ship-it:ccy1-2746-native-event-continuation-r7-20261106
Closed

fuhao6539-ship-it wants to merge 1 commit into
multica-ai:mainfrom
fuhao6539-ship-it:ccy1-2746-native-event-continuation-r7-20261106

Conversation

@fuhao6539-ship-it

Copy link
Copy Markdown

CCY1-2746 — Native unfinished Issue event continuation (Draft review)

Problem

  • Existing TaskService.NotifyTaskFinished only wakes the daemon to reclaim tasks already queued; unfinished todo / in_progress Issues without an active Task are not always requeued.
  • CCY needs original Task terminal event -> existing Issue/Agent eligibility -> native Task queue -> existing Oracle daemon Claim. Oracle owns its concurrency slots; no second task database or capacity allocator.

Changes

  • Opt-in original Workspace configuration (oracle_issue_events) and exact already registered Agent/Runtime identities. Disabled by default; no runtime/Agent/Browser changes.
  • Existing NotifyTaskFinished requests a same-Issue successor after a completed Task. Original agent_task_queue and daemon notification are reused. The existing leased Wakeup Tick recovers missed events after restart.
  • Honor direct Issue assignee, native Agent readiness, normal effective status and triage rules. Only todo/in_progress with original assigned permitted agent auto-execute. done, cancelled, backlog, blocked/Triage and member-owned Issues remain events but do not automatically launch Oracle.
  • Preserve native Task retry/exhaustion: latest failed attempt prevents fresh attempt-1 loop. Original existing pending/dispatched/running tasks suppress double enqueue.
  • Isolated database safety: partial unique active native-event index; lock/claim fence, normal close and workspace opt-out cleanup, bounded recovery of abandoned unstarted event Tasks.
  • Migration numbers use 617/618 because official upstream now uses 615/616 for unrelated features.

Provenance and checks

  • Rebased on official multica-ai/multica main 164290e (2026-11-06). Fork commit fae1620.
  • VN WebCodex original project Go tests: go test ./internal/service -run TestNativeEvent|TestNativeIssueEvent|TestNativeEventQueue -count=1 PASS.
  • go test ./cmd/migrate -run TestEveryConcurrent -count=1, go vet ./internal/service ./cmd/migrate ./pkg/db/generated, git diff --check PASS.
  • Previous isolated R3 and R4 source revisions passed PostgreSQL16 concurrency and lifecycle tests; those tests were not yet repeated on this exact R7 commit and are not production E2E.

Required review before merge or rollout

  • Verify exact native EnqueueTaskForIssue attribution/originator/owner and WillEnqueueRun eligibility equivalence. This draft currently uses a specialized original CreateAgentTask transaction and must not bypass existing business policies.
  • PostgreSQL16 multi-connection migrations 617/618, rollback, concurrency and close/reopen repeat on this exact commit.
  • Confirm original Task status transitions (NotifyTaskFinished receives completed), retry exhausted/UNKNOWN, latest failure fencing, event termination and no duplicate run under two Oracle daemons.
  • Genuine production Canary: original Task/Run/Lease and VN/Mac Oracle ChatGPT browser session and real terminal event -> successor; no second Scheduler/Queue/Agent. Keep workspace opt-in disabled until approved.

Do not merge/deploy solely on unit-test PASS. Source Owner, independent reviewer, production release owner must validate. CCY original issue: CCY1-2746, UUID 01a1629c-7ca9-7aef-bd38-ee469ff158cb.

…al events

Reuse Oracle daemon task queue and ownership, add opt-in recovery, protect Issue terminal and workspace revoke, and serialize same-Issue claims. Source baseline multica-ai/multica 164290e. CCY1-2746 draft for independent review.
@vercel

vercel Bot commented Nov 6, 2026

Copy link
Copy Markdown

@fuhao6539-ship-it is attempting to deploy a commit to the IndexLabs Team on Vercel.

A member of the Team first needs to authorize it.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant