diff --git a/packages/chord/docs/decisions.md b/packages/chord/docs/decisions.md index 57579953d..2d5a97b86 100644 --- a/packages/chord/docs/decisions.md +++ b/packages/chord/docs/decisions.md @@ -2407,6 +2407,18 @@ validation and copies the v2 kernel added around Delta. into p2 (its vitest tests and about 140 imports would need porting); it is deleted in the change that moves p2 to v2. No version bump: Chord is work in progress. Done by a re-runnable script (move, import and link rewrites, generated exports and aliases) on the base that includes slice 11; p2's imports updated in private. +- **p2 moves to Chord v2, then Chord v1 is deleted (owner, 2026-11-03: yes to the plan's eleven points; plan + `/tmp/p2-port/plan.md`):** (1) way (a): p2's kernel, workers and plugin loading move to v2 (`createHost`, + `createWorkers`, `createPlugins`), p2 keeps its own data directory, auth, devices and sharing, so no data migrates + (Chord v1 stored nothing for p2; every file in its data directory is p2's or Durable's); (2) Radius Cloud Brain stays + on its last v1 bundle and moves separately; (3) p2's web UI is p2 code again (brought back from bundled-ui) and is + ported with p2; (4) `createPlugins` replaces p2's own loader (which leaked a module copy per reload); (5) p2 keeps its + own SQLite files (catalog, shares, search, subagents) as natives (the rule against plugin databases is p3's); (6) p2's + terminal uses Chord's child-process sandbox, exported upstream first; (7) `createHttp` for p2 later, optional; (8) + Chord v1 (`src/old`) is deleted right after the switch; (9) p2's v1 plugin tutorial is retired for Chord's guide; + (10) the phone gets it after 1-2 days on slayer, about 10 minutes down, rollback by checkout; (11) a small shim + reloads pages left open across the deploy, removed with v1. Server, workers, the terminal bundle and the web bundle + switch in one deploy (v1 and v2 links do not talk); prep and cleanup steps deploy on their own. - **A plugin's npm dependencies are bundled; external only by opt-in (owner, 2026-10-29: "explicit opt in + (a)"):** a plugin's `dependencies` are installed into its own `node_modules` (`npm install --ignore-scripts`) and bundled into each facet that imports them (host packages, its `peerDependencies`, stay external and are passed in). On Node a