Skip to content

[spec 9] Incremental log state in the node engine #5165

Closed

Description

@VaguelySerious

(AI) Follow-up from #4661 (spec 9, the experimental single-orchestrator runtime, opt-in via WORKFLOW_SPEC_VERSION=9). Tracked as follow-up 6 on the spec 9 changelog.

Each in-band write rescans the whole log (maxEventSlot, appendUniqueEvents, a full sort in mergeReportedEvents, findEventSlotGap), so CPU per step grows with log length, about O(n) per write and O(n²) per delivery. The duplicate slotSnapshot() is gone (b489e7561b). Before default-on: a running max slot, an id Set owned by the log and a dense-prefix watermark, reset on full load and repair, plus a ms-per-step benchmark at 250 against 2000 steps. Spec 8 has the same linear shape at a smaller constant. 4365355561.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions