Skip to content

perf(main): load YAML when parsing or editing documents - #33895

Draft
OrcaWin wants to merge 1 commit into
OrcaWin/mem-04-history-replayfrom
OrcaWin/mem-05-yaml-boundary
Draft

OrcaWin wants to merge 1 commit into
OrcaWin/mem-04-history-replayfrom
OrcaWin/mem-05-yaml-boundary

Conversation

@OrcaWin

@OrcaWin OrcaWin commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Current disposition: deferred for this RAM project; keep draft. YAML remains loaded through required startup config work, so no individual full-idle saving was demonstrated. Evidence #33912 is merged independently into main; its tooling/report provides no reason to merge this implementation.

ELI5

Main-process modules can refer to Orca YAML contracts without loading the parser immediately.

What Changed

Extract the existing parser/normalization into a dependency-injected shared module. Keep the renderer/CLI facade on its existing eager ESM path, and use a main-only synchronous first-use YAML loader for parsing/editing, Hermes config, update feeds, model config, and theme parsing. Preserve text/alias/merge limits and recipe constants.

Why

This separates main-only loading policy from shared browser/CLI behavior. Fresh-profile Hermes setup still legitimately parses YAML during startup; there is no demonstrated full-idle YAML saving in that workload.

Visual Proof

N/A — main-process loading/lifecycle changes; no rendered UI change. Hidden Playwright CDP checks on the complete stack passed, including the rendered SSH add-host/test/refusal flow; see the evidence PR.

Testing

452 relevant parser/Hermes/update/model tests passed (1 skipped); Node typecheck and independent parser/limit parity review passed. Integrated Linux build passed. The combined recommended gate passed 23/24 checks (22,643 tests passed, 3 failed). The three daemon initialization failures also reproduce at the pinned upstream base; the complete gate remains failing. See #33912 for the control and exact cases.

Local runtime evidence is Linux x64/Electron 43.8.1. macOS physical footprint and native Windows/macOS behavior are not measured locally. Remote, folder workspace, mobile and serve contracts remain in scope; there is no wire-protocol change.

Review

Historical experimental stack 4/6. Depends on #33894. Review this PR against its configured base branch.

Evidence and benchmark: #33912. The historical measured stack measures −4.44 MB median idle V8 heap and −5.87 MB median Linux RSS (n=3, 120 seconds, fresh hidden profiles, telemetry/GPU disabled). macOS physical footprint is unverified. M3 is a separate experiment on performance hold; M4/M5 do not make xterm/YAML cold at full idle.

Agent skill upstream boundary

  • Not applicable; no upstream skill-installer content copied.

Checklist

@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-05-yaml-boundary branch from d03bb76 to 2e12f47 Compare October 26, 2026 10:43
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-04-history-replay branch from 8f25712 to 0e7cb2d Compare October 26, 2026 10:43
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-04-history-replay branch from 0e7cb2d to 8be5df9 Compare October 26, 2026 10:52
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-05-yaml-boundary branch from 2e12f47 to 8e98f94 Compare October 26, 2026 10:52
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-05-yaml-boundary branch from 8e98f94 to d012458 Compare October 26, 2026 11:22
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-04-history-replay branch 2 times, most recently from 7483234 to 8be5df9 Compare October 26, 2026 12:01
@OrcaWin
OrcaWin force-pushed the OrcaWin/mem-05-yaml-boundary branch from d012458 to 8e98f94 Compare October 26, 2026 12:01

This branch has not been deployed

No deployments
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