Skip to content

feat(core): Let a durable event tail re-read on a tick. - #13

Closed
moetemp wants to merge 1 commit into
moe/fork-cifrom
moe/event-tick
Closed

moetemp wants to merge 1 commit into
moe/fork-cifrom
moe/event-tick

Conversation

@moetemp

@moetemp moetemp commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

This PR lets a durable event subscriber re-read the log on a tick, for events another process appended.

A commit publishes its wake in-process, so a live tail on the serve process cannot see what a standalone worker appended: it shows the prompt admitted and then silence. The tick catches what the wake cannot see while in-process commits still wake the tail instantly. It is off unless a composition root asks for it (EventV2.pollingNode), because a deployment that runs in one process wakes its own subscribers and would pay a query per second per subscribed session for events that cannot exist. OPENCODE_EVENT_POLL_MS overrides either way, and 0 turns it off.

Nothing wires the polling layer in yet. The Temporal executor PR on top of this one does, in its composition root.

@github-actions

Copy link
Copy Markdown

This PR doesn't fully meet our contributing guidelines and PR template.

What needs to be fixed:

  • PR description is missing required template sections. Please use the PR template.

Please edit this PR description to address the above within 2 hours, or it will be automatically closed.

If you believe this was flagged incorrectly, please let a maintainer know.

…process writes past.

The wake that follows a commit is published in-process, so a tail on one process never sees events a second process appended to the same log. The tick is off unless a composition root asks for it, and OPENCODE_EVENT_POLL_MS overrides either way.
@github-actions

Copy link
Copy Markdown

This pull request has been automatically closed because it was not updated to meet our contributing guidelines within the 2-hour window.

Feel free to open a new pull request that follows our guidelines.

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