pm-csv 2026.11.4 → 2026.11.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +25 -3
  2. package/README.md +8 -10
  3. package/dist/admission.d.ts +12 -2
  4. package/dist/admission.d.ts.map +1 -1
  5. package/dist/admission.js +23 -7
  6. package/dist/admission.js.map +1 -1
  7. package/dist/atomic-update.d.ts +3 -3
  8. package/dist/atomic-update.d.ts.map +1 -1
  9. package/dist/atomic-update.js +25 -26
  10. package/dist/atomic-update.js.map +1 -1
  11. package/dist/extension-scope.d.ts +3 -0
  12. package/dist/extension-scope.d.ts.map +1 -0
  13. package/dist/extension-scope.js +12 -0
  14. package/dist/extension-scope.js.map +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +17 -14
  17. package/dist/index.js.map +1 -1
  18. package/dist/join-plans.d.ts.map +1 -1
  19. package/dist/join-plans.js +62 -24
  20. package/dist/join-plans.js.map +1 -1
  21. package/dist/lineage.d.ts.map +1 -1
  22. package/dist/lineage.js +6 -4
  23. package/dist/lineage.js.map +1 -1
  24. package/dist/mutation-intent.js +4 -4
  25. package/dist/mutation-intent.js.map +1 -1
  26. package/dist/roundtrip.d.ts.map +1 -1
  27. package/dist/roundtrip.js +13 -12
  28. package/dist/roundtrip.js.map +1 -1
  29. package/dist/settings-snapshot.d.ts.map +1 -1
  30. package/dist/settings-snapshot.js +6 -9
  31. package/dist/settings-snapshot.js.map +1 -1
  32. package/docs/atomic-compensation.md +10 -2
  33. package/docs/import-admission.md +16 -0
  34. package/docs/join-plans.md +18 -0
  35. package/docs/row-lineage.md +5 -0
  36. package/docs/spreadsheet-roundtrip.md +32 -26
  37. package/manifest.json +2 -2
  38. package/package.json +7 -6
  39. package/dist/lease-guard.d.ts +0 -14
  40. package/dist/lease-guard.d.ts.map +0 -1
  41. package/dist/lease-guard.js +0 -25
  42. package/dist/lease-guard.js.map +0 -1
package/dist/roundtrip.js CHANGED
@@ -1,10 +1,10 @@
1
+ import { withWorkspaceExtensions } from "./extension-scope.js";
1
2
  import { assertCanonicalMutationIds, explicitDocumentMutation } from "./mutation-intent.js";
2
3
  import { createHash, randomUUID } from "node:crypto";
3
4
  import { basename, resolve } from "node:path";
4
- import { acquireLock, canonicalDocument, commitWorkspaceTransaction, getHistoryPath, mutateItem, readHistoryEntries, verifyHistoryEntries, runWorkspaceTransactionGc, } from "@unbrained/pm-cli/sdk";
5
+ import { PmCliError, getActiveExtensionRegistrations, collectRegisteredItemFieldNames, resolveItemTypeRegistry, acquireLockLease, canonicalDocument, commitWorkspaceTransaction, getHistoryPath, mutateItem, readHistoryEntries, verifyHistoryEntries, runWorkspaceTransactionGc, } from "@unbrained/pm-cli/sdk";
5
6
  import { captureSettings, inSettingsTransaction, readPinnedSettings as readSettings, rethrowSettingsChange, useSettings, verifySettings, withSettings, withSettingsFence } from "./settings-snapshot.js";
6
7
  import { EditRefusal } from "./edit-refusal.js";
7
- import { assertEditLease, guardEditMutation } from "./lease-guard.js";
8
8
  export { EditRefusal } from "./edit-refusal.js";
9
9
  import { captureUpdateCompensation, compensateUpdate, inspectUpdate, readUpdateDocument } from "./atomic-update.js";
10
10
  /** Versioned, deliberately scalar spreadsheet patch surface; status is read-only. */
@@ -20,23 +20,22 @@ function cells(document) {
20
20
  /** Read an item and its verified history while holding its native SDK lock. */
21
21
  async function snapshot(pmRoot, id) {
22
22
  const settings = await readSettings(pmRoot);
23
- const release = await acquireLock(pmRoot, id, settings.locks.ttl_seconds, "pm-csv", false, false, settings.locks.wait_ms);
24
- const startedAt = performance.now();
23
+ const lease = await acquireLockLease(pmRoot, id, settings.locks.ttl_seconds, "pm-csv", false, false, settings.locks.wait_ms);
25
24
  let row;
26
25
  try {
27
26
  const document = await readUpdateDocument(pmRoot, id);
28
27
  row = await documentRow(pmRoot, id, document);
29
- assertEditLease(performance.now() - startedAt, settings.locks.ttl_seconds);
28
+ await lease.fence(async () => { });
30
29
  }
31
30
  catch (error) {
32
- if (error instanceof EditRefusal)
31
+ if (error instanceof EditRefusal || (error instanceof PmCliError && error.code === "lock_lost"))
33
32
  throw error;
34
33
  const refusal = new EditRefusal("csv_session_invalid", "Verify that every exported item still exists and is readable; export a fresh session after resolving missing items.", [{ id, fields: ["item"] }]);
35
34
  refusal.cause = error;
36
35
  throw refusal;
37
36
  }
38
37
  finally {
39
- await release();
38
+ await lease.release();
40
39
  }
41
40
  return row;
42
41
  }
@@ -88,7 +87,7 @@ async function exportEditSessionInternal(pmRoot, ids) {
88
87
  export async function exportEditSession(pmRoot, ids) {
89
88
  pmRoot = resolve(pmRoot);
90
89
  const captured = [...ids];
91
- return withSettings(pmRoot, settingsChanged, () => exportEditSessionInternal(pmRoot, captured));
90
+ return withWorkspaceExtensions(pmRoot, () => withSettings(pmRoot, settingsChanged, () => exportEditSessionInternal(pmRoot, captured)));
92
91
  }
93
92
  /** Validate an untrusted sidecar structurally as well as by its content digest. */
94
93
  export function parseEditSession(input) {
@@ -154,12 +153,14 @@ function plans(session, table, schema) {
154
153
  function conflicts(plan, current) {
155
154
  return plan.fields.filter(field => current.values[field] !== plan.base.values[field] && current.values[field] !== plan.desired[field]);
156
155
  }
157
- /** Check and apply a field patch under the host item lease; write-time fencing remains a host prerequisite. */
156
+ /** Check and apply a field patch under the host item lease; the SDK fences persistence. */
158
157
  async function applyPlan(pmRoot, plan, marker, author) {
159
158
  const settings = await readSettings(pmRoot);
160
159
  const result = await withSettingsFence(pmRoot, () => mutateItem({ pmRoot, settings, id: plan.base.id, op: "update", author,
161
160
  message: `${marker}:apply`, skipNoop: true,
162
- mutate: explicitDocumentMutation(guardEditMutation(settings.locks.ttl_seconds, async (document) => {
161
+ typeToFolder: resolveItemTypeRegistry(settings, getActiveExtensionRegistrations()).type_to_folder,
162
+ extensionFieldNames: collectRegisteredItemFieldNames(getActiveExtensionRegistrations()),
163
+ mutate: explicitDocumentMutation(async (document) => {
163
164
  const current = await documentRow(pmRoot, plan.base.id, document);
164
165
  const divergent = conflicts(plan, current);
165
166
  if (divergent.length)
@@ -182,7 +183,7 @@ async function applyPlan(pmRoot, plan, marker, author) {
182
183
  changedFields.push(field);
183
184
  }
184
185
  return { changedFields };
185
- })),
186
+ }),
186
187
  }));
187
188
  return result.changedFields.length > 0;
188
189
  }
@@ -300,7 +301,7 @@ export async function applyEditSession(pmRoot, input, table, options) {
300
301
  throw new EditRefusal("csv_edit_invalid", "Provide a table of CSV string cells, including the checkout header.");
301
302
  }
302
303
  const session = parseEditSession(input), captured = table.map(row => [...row]), configuration = { ...options };
303
- return withSettings(pmRoot, settingsChanged, () => applyEditSessionInternal(pmRoot, session, captured, configuration));
304
+ return withWorkspaceExtensions(pmRoot, () => withSettings(pmRoot, settingsChanged, () => applyEditSessionInternal(pmRoot, session, captured, configuration)));
304
305
  }
305
306
  /** Preserve the edit API refusal taxonomy for changing schema/settings. */
306
307
  function settingsChanged() {
@@ -1 +1 @@
1
- {"version":3,"file":"roundtrip.js","sourceRoot":"","sources":["../roundtrip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roundtrip.js","sourceRoot":"","sources":["../roundtrip.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-snapshot.d.ts","sourceRoot":"","sources":["../settings-snapshot.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGhE,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,KAAK,CAAC;CACrB;AAKD,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAE3D;AAKD,sFAAsF;AACtF,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGpG;AACD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG5G;AACD,0FAA0F;AAC1F,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG1F;AACD,0FAA0F;AAC1F,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAE5E;AACD,wGAAwG;AACxG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGvE;AACD,uFAAuF;AACvF,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;AACD,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAazD;AACD,wFAAwF;AACxF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,IAAI,CAE/E;AACD,2FAA2F;AAC3F,wBAAsB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAI5G;AACD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAsB5F;AAED,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAUrJ"}
1
+ {"version":3,"file":"settings-snapshot.d.ts","sourceRoot":"","sources":["../settings-snapshot.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEhE,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,KAAK,CAAC;CACrB;AAKD,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAE3D;AAKD,sFAAsF;AACtF,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGpG;AACD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG5G;AACD,0FAA0F;AAC1F,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG1F;AACD,0FAA0F;AAC1F,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAE5E;AACD,wGAAwG;AACxG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGvE;AACD,uFAAuF;AACvF,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;AACD,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAazD;AACD,wFAAwF;AACxF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,IAAI,CAE/E;AACD,2FAA2F;AAC3F,wBAAsB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAI5G;AACD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAoB5F;AAED,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAUrJ"}
@@ -1,8 +1,7 @@
1
1
  import { AsyncLocalStorage } from "node:async_hooks";
2
2
  import { createHash } from "node:crypto";
3
3
  import { resolve } from "node:path";
4
- import { acquireLock, readSettings, normalizeStatusInput, resolveItemTypeRegistry, resolveRuntimeStatusRegistry, PmCliError } from "@unbrained/pm-cli/sdk";
5
- import { assertEditLease } from "./lease-guard.js";
4
+ import { acquireLockLease, readSettings, normalizeStatusInput, resolveItemTypeRegistry, getActiveExtensionRegistrations, resolveRuntimeStatusRegistry, PmCliError } from "@unbrained/pm-cli/sdk";
6
5
  const scopes = new AsyncLocalStorage();
7
6
  /** Match the reviewed settings digest, including hydrated schema and type definitions. */
8
7
  export function settingsDigest(settings) {
@@ -98,24 +97,22 @@ export async function withSettingsFence(pmRoot, run) {
98
97
  return run();
99
98
  }
100
99
  const settings = current.snapshot.settings;
101
- const release = await acquireLock(pmRoot, "workspace-history", settings.locks.ttl_seconds, "pm-csv", false, false, settings.locks.wait_ms);
102
- const started = performance.now();
100
+ const lease = await acquireLockLease(pmRoot, "workspace-history", settings.locks.ttl_seconds, "pm-csv", false, false, settings.locks.wait_ms);
103
101
  try {
104
- return await scopes.run({ ...current, locked: true, parent: scopes.getStore() }, async () => {
102
+ return await lease.fence(() => scopes.run({ ...current, locked: true, parent: scopes.getStore() }, async () => {
105
103
  await verifySettings(pmRoot);
106
104
  const result = await run();
107
- assertEditLease(performance.now() - started, settings.locks.ttl_seconds);
108
105
  await verifySettings(pmRoot);
109
106
  return result;
110
- });
107
+ }));
111
108
  }
112
109
  finally {
113
- await release();
110
+ await lease.release();
114
111
  }
115
112
  }
116
113
  /** Resolve create type/status defaults using only the snapshot's native registries. */
117
114
  export function pinCreateDefaults(options, settings) {
118
- const registry = resolveItemTypeRegistry(settings);
115
+ const registry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());
119
116
  const aliases = new Map(Object.entries(registry.alias_to_type));
120
117
  const types = new Map(Object.entries(registry.by_type));
121
118
  const configured = settings.governance.create_default_type;
@@ -1 +1 @@
1
- {"version":3,"file":"settings-snapshot.js","sourceRoot":"","sources":["../settings-snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-snapshot.js","sourceRoot":"","sources":["../settings-snapshot.ts"],"names":[],"mappings":"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"}
@@ -33,9 +33,17 @@ and appends a `:restore` event; then an item-locked write restores original
33
33
  physical values with the same canonical hash and appends a `:compensate`
34
34
  completion receipt. Only that final receipt marks the step compensated. A crash
35
35
  between either write and its receipt resumes with the original prior data.
36
- The raw write uses the SDK atomic file and history primitives, preserves the
36
+ The raw write uses the SDK atomic file and history primitives inside one
37
+ `acquireLockLease().fence()` spanning both writes. The fence prevents takeover
38
+ between representation and receipt, including after the TTL. It preserves the
37
39
  SDK's canonical derived-index values, and refuses an intervening writer before
38
- changing the representation. JSON Markdown snapshots migrate to the SDK's
40
+ changing the representation. The SDK's `mutateItem` options have no raw
41
+ representation override; this second phase retains empty scalar/collection
42
+ values that native canonicalization omits. Item bytes and history remain two
43
+ separate durable writes: process termination can interrupt them, and the
44
+ existing history-prefix-verified replay completes the receipt. The fence is
45
+ concurrency protection, not a multi-file crash-atomic commit. Extension lock
46
+ providers own fencing of overrides under the SDK contract. JSON Markdown snapshots migrate to the SDK's
39
47
  normal TOON output while preserving field values. A completed compensation is
40
48
  a no-op on replay, including when another writer edits the item afterwards.
41
49
 
@@ -197,3 +197,19 @@ SDK explicit-unset audit suffixes do not turn an own write into a foreign one.
197
197
  Single-target updates use the same verified retry checkpoints. Dry-run refuses
198
198
  a pending compensation journal instead of reporting restored rows as unchanged.
199
199
  The existing first-row-wins rule for duplicate *new* keys is unchanged.
200
+
201
+ Admission activates the explicitly selected workspace through
202
+ `runWithActiveExtensions`. Type aliases and folders come from
203
+ `resolveItemTypeRegistry(settings, getActiveExtensionRegistrations())`;
204
+ authoritative item/revision and compensation reads use
205
+ `collectRegisteredItemFieldNames` alongside the native schema. Direct SDK calls
206
+ and host-injected command calls use the same path. Installed schema fields are
207
+ preserved during built-in CSV updates, including strict unknown-field policy;
208
+ this does not expand the CSV column vocabulary. Unregistered types still refuse
209
+ before any row is applied.
210
+
211
+ Atomic imports lend target-check callbacks from one SDK extension activation to
212
+ all planning, inspection and write boundaries. Target checks reread native state
213
+ and history every time, without reloading extensions for every row. Standalone
214
+ revision and sequence APIs still activate their explicitly selected workspace.
215
+ This also covers direct atomic imports without the admission option.
@@ -71,6 +71,16 @@ cell; use multiple declared dependency columns for multiple edges. Coordinates
71
71
  are one-based logical CSV records and columns, with the header as record 1;
72
72
  embedded newlines do not add logical records.
73
73
 
74
+ Dependency item leases remain fenced from the final dependency revision check
75
+ through native child creation. Cleanup attempts every acquired dependency lease
76
+ in reverse acquisition order, then reports the first release failure if any.
77
+ A dependency edited before those leases are held
78
+ refuses the child write; a competing native writer cannot enter during creation.
79
+ The coordinator checks every target again at its `committing` transition, so a
80
+ precommit conflict runs reverse compensation instead of committing a journal
81
+ whose targets already fail validation. Compensation preserves foreign edits and
82
+ retains tombstone history; a blocked cleanup remains explicit in the journal.
83
+
74
84
  Plans bind exact SHA-256 source-byte digests, tracker settings, generated native
75
85
  IDs and explicit `expected: "absent"` target revisions. Sources are captured inline, so
76
86
  apply never rereads external files. Any source or artifact edit invalidates the
@@ -199,3 +209,11 @@ quoting, ragged records and inconsistent line endings are wrapped from the table
199
209
  parser, retaining its `sourceCode`, actionable `remedy` and original `cause`.
200
210
  The CLI does the same for invalid UTF-8/JSON and file errors. Expected lower-level
201
211
  failures are not leaked as another API's refusal family.
212
+
213
+ Joined preview, apply, replay and compensation activate the selected workspace's
214
+ extensions. Native type registries supply installed types, folders and defaults;
215
+ authoritative reads and scope normalization include registered extension fields,
216
+ including under strict unknown-field policy. SDK field defaults remain intact.
217
+ The existing CSV field vocabulary and history-based ownership rules still apply:
218
+ an independent edit to any field refuses compensation rather than deleting the
219
+ peer's item.
@@ -85,3 +85,8 @@ and explicit IDs own tracker behavior. Keep the output directory private. The
85
85
  CLI reserves a new directory before mutation, refuses existing directories, and
86
86
  never overwrites artifacts. If final writes fail, retain partial files and rerun
87
87
  unchanged input into a fresh directory; stable keys recover committed rows.
88
+
89
+ Direct `importLineage` calls keep the selected workspace's extensions active
90
+ through creation, native reads and receipt construction. Replay resolves item
91
+ folders through the same SDK type registry. Installed opaque fields remain
92
+ native item data; only explicitly selected lineage columns enter the manifest.
@@ -79,27 +79,21 @@ Preflight validates the complete table and all selected items before starting a
79
79
  transaction. A malformed, changed or conflicting digest causes zero item/history
80
80
  writes and creates no transaction journal. A successful dry run is a preview,
81
81
  not a reservation: a native writer can change state immediately afterward.
82
- The patch rechecks each item while holding the SDK item lock. Every native
83
- mutation callback used by apply and compensation records a monotonic start time
84
- and the effective `locks.ttl_seconds`. Before returning (including no-op returns),
85
- it refuses with typed `csv_lease_expired` when elapsed time reaches the TTL minus
86
- ten percent, capped at a one-second safety margin. Checkout, prior-document
87
- capture and representation restoration also check this budget before returning
88
- or writing. The remedy is: re-run apply; another writer may have changed the item.
89
-
90
- Run `node --test test/repros/sdk-lease-overrun.ts` for two passing real-SDK
91
- regressions. A disposable non-git tracker uses a real one-second lease; a newer
92
- native SDK writer or separate CLI writer takes over while the first callback is
93
- suspended. The package guard refuses the stale callback and preserves the newer
94
- value. These cases also run in the normal release suite through
95
- `test/lease-guard.test.ts`, alongside actual apply and compensation wiring cases.
96
-
97
- The deadline is a package mitigation, not atomic persistence fencing. The SDK
98
- reads before entering the callback and persists after its return; arbitrary host
99
- delays in those windows can exhaust the lease despite the margin. A callback
100
- check cannot atomically close that later write window. The root fix belongs
101
- upstream in [pm-cli issue 1549](https://github.com/unbraind/pm-cli/issues/1549),
102
- verified by the owner on SDK 2026.10.22; the package dependency pin is unchanged.
82
+ The patch rechecks each item while holding the SDK item lease. Native
83
+ `mutateItem` fences persistence after callbacks and host hooks, refusing
84
+ `lock_lost` on takeover or `stale_revision` on changed bytes. Read snapshots
85
+ verify their lease generation before returning. Elapsed TTL alone does not
86
+ prove takeover: a slow owner may complete while its generation is still held.
87
+
88
+ Run `node --test --test-concurrency=2 test/lease-guard.test.ts` for real non-git
89
+ tracker regressions, including SDK and CLI writers in separate OS processes,
90
+ delay after callback return, and takeover attempts between raw representation
91
+ restoration and completion history. Both representation writes share a public
92
+ SDK lease fence. Prior-state/history-prefix checks and resumable compensation
93
+ remain CSV domain rules. SDK 2026.11.5 is the declared and tested floor;
94
+ [pm-cli issue 1549](https://github.com/unbraind/pm-cli/issues/1549) is closed.
95
+ Extension-provided lock overrides retain responsibility for their own fencing,
96
+ as specified by the SDK `LockLease` contract.
103
97
 
104
98
  Ordinary failures trigger the existing SDK transaction coordinator and CSV
105
99
  full-document compensation; compensation checks for intervening writers before
@@ -120,12 +114,19 @@ Successful command results are compact TOON by default or JSON with `--json`:
120
114
  Counts are per row. `changed` is the preflight plan and `applied` counts actual
121
115
  mutations in this attempt; convergence after preflight can reduce `applied`.
122
116
  `concurrent` includes unedited and convergent concurrent
123
- changes. An applied batch also returns its transaction ID. Refusals have stable
117
+ changes. An applied batch also returns its transaction ID. CSV refusals have stable
124
118
  codes (`csv_session_invalid`, `csv_edit_invalid`, `csv_edit_conflict`,
125
- `csv_edit_apply_failed`, `csv_lease_expired`) and remedies. SDK `EditRefusal` exposes `code`, `remedy`,
126
- `conflicts` and `conflictCount`. Transaction refusals retain nested conflict keys
127
- and expose the original error as `cause`, including lease expiration, interruption
128
- and compensation failures. Checkout/apply IO and snapshot read refusals also retain their causes.
119
+ `csv_edit_apply_failed`) and remedies. SDK `EditRefusal` exposes `code`, `remedy`,
120
+ `conflicts` and `conflictCount`.
121
+
122
+ Snapshot lease loss can escape as a top-level native `PmCliError` with
123
+ `code: "lock_lost"` during export or apply preflight. Inside an apply transaction,
124
+ native `lock_lost` or `stale_revision` errors can instead be nested under the
125
+ outer `csv_edit_apply_failed` refusal. Callers must inspect `cause` and any
126
+ `AggregateError.errors` recursively as well as the top-level `error.code`;
127
+ checking only the outer code misses these native outcomes. Transaction refusals
128
+ retain nested conflict keys and causes for interruption and compensation
129
+ failures. Checkout/apply IO and snapshot read refusals retain their causes too.
129
130
  Diagnostics show at most twenty item/field keys,
130
131
  with the total count, and never include cell values. Command error messages carry
131
132
  the same code, remedy and bounded conflicts; the host controls error rendering.
@@ -159,3 +160,8 @@ with `pm init`, including with no `git` executable on PATH. This protocol neithe
159
160
  invokes Git nor needs branches. It uses the SDK's existing tracker storage,
160
161
  ownership checks, item locks, immutable history and transaction journal. Tests
161
162
  use real non-git trackers; hosted backend acceptance is separate evidence.
163
+
164
+ Direct `exportEditSession` and `applyEditSession` calls activate the selected
165
+ workspace's installed extensions. Snapshot reads and native mutations receive
166
+ its complete type/folder and field registries, preserving opaque fields under
167
+ strict unknown-field policy. The editable spreadsheet columns remain unchanged.
package/manifest.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "pm-csv",
3
- "version": "2026.11.4",
3
+ "version": "2026.11.11",
4
4
  "description": "CSV importer and exporter for pm-cli",
5
5
  "author": "@unbraind",
6
6
  "entry": "./dist/index.js",
7
7
  "priority": 50,
8
- "pm_min_version": "2026.8.20",
8
+ "pm_min_version": "2026.11.5",
9
9
  "capabilities": [
10
10
  "commands",
11
11
  "importers",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pm-csv",
3
- "version": "2026.11.4",
3
+ "version": "2026.11.11",
4
4
  "description": "CSV importer and exporter for pm-cli",
5
5
  "repository": {
6
6
  "type": "git",
@@ -49,7 +49,8 @@
49
49
  "coverageGate": {
50
50
  "sources": [
51
51
  ".",
52
- "scripts/docstring-gate.ts"
52
+ "scripts/docstring-gate.ts",
53
+ "scripts/packed-scenarios.ts"
53
54
  ],
54
55
  "tests": [
55
56
  "test/*.test.ts"
@@ -62,18 +63,18 @@
62
63
  "ignore": []
63
64
  },
64
65
  "peerDependencies": {
65
- "@unbrained/pm-cli": ">=2026.8.20"
66
+ "@unbrained/pm-cli": ">=2026.11.5"
66
67
  },
67
68
  "devDependencies": {
68
69
  "@babel/eslint-parser": "8.0.7",
69
70
  "@babel/plugin-syntax-typescript": "8.0.3",
70
71
  "@types/node": "26.6.6",
71
- "@unbrained/pm-cli": "2026.10.30",
72
+ "@unbrained/pm-cli": "2026.11.7",
72
73
  "eslint": "10.14.0",
73
74
  "jiti": "2.7.0",
74
75
  "jscpd": "5.4.2",
75
- "pm-changelog": "2026.10.28",
76
- "pm-ops": "2026.10.29",
76
+ "pm-changelog": "2026.11.7",
77
+ "pm-ops": "2026.11.6",
77
78
  "typescript": "7.0.2",
78
79
  "yaml": "2.9.1"
79
80
  },
@@ -1,14 +0,0 @@
1
- import type { mutateItem } from "@unbrained/pm-cli/sdk";
2
- /** Native SDK callback contract, including its optional warning receipt. */
3
- type ItemMutation = Parameters<typeof mutateItem>[0]["mutate"];
4
- /**
5
- * Refuse an exhausted callback/read budget before releasing control to the host.
6
- * Reserve ten percent of the effective TTL, capped at one second, for SDK work
7
- * after callback return. This deadline is not atomic persistence fencing;
8
- * arbitrary host delays after this check still require pm-cli issue 1549.
9
- */
10
- export declare function assertEditLease(elapsedMs: number, ttlSeconds: number): void;
11
- /** Measure every native mutation callback, including no-op compensation returns. */
12
- export declare function guardEditMutation(ttlSeconds: number, mutate: ItemMutation): ItemMutation;
13
- export {};
14
- //# sourceMappingURL=lease-guard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lease-guard.d.ts","sourceRoot":"","sources":["../lease-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,4EAA4E;AAC5E,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAM3E;AAED,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,YAAY,CAQxF"}
@@ -1,25 +0,0 @@
1
- import { EditRefusal } from "./edit-refusal.js";
2
- /**
3
- * Refuse an exhausted callback/read budget before releasing control to the host.
4
- * Reserve ten percent of the effective TTL, capped at one second, for SDK work
5
- * after callback return. This deadline is not atomic persistence fencing;
6
- * arbitrary host delays after this check still require pm-cli issue 1549.
7
- */
8
- export function assertEditLease(elapsedMs, ttlSeconds) {
9
- const ttlMs = ttlSeconds * 1000;
10
- const marginMs = Math.min(1000, ttlMs / 10);
11
- if (!Number.isFinite(ttlMs) || ttlMs <= 0 || elapsedMs >= ttlMs - marginMs) {
12
- throw new EditRefusal("csv_lease_expired", "Re-run apply; another writer may have changed the item.");
13
- }
14
- }
15
- /** Measure every native mutation callback, including no-op compensation returns. */
16
- export function guardEditMutation(ttlSeconds, mutate) {
17
- return async (document) => {
18
- const startedAt = performance.now();
19
- const effectiveTtlSeconds = ttlSeconds;
20
- const result = await mutate(document);
21
- assertEditLease(performance.now() - startedAt, effectiveTtlSeconds);
22
- return result;
23
- };
24
- }
25
- //# sourceMappingURL=lease-guard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lease-guard.js","sourceRoot":"","sources":["../lease-guard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKhD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,UAAkB;IACnE,MAAM,KAAK,GAAG,UAAU,GAAG,IAAI,CAAC;IAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,SAAS,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;QAC3E,MAAM,IAAI,WAAW,CAAC,mBAAmB,EAAE,yDAAyD,CAAC,CAAC;IACxG,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,iBAAiB,CAAC,UAAkB,EAAE,MAAoB;IACxE,OAAO,KAAK,EAAC,QAAQ,EAAC,EAAE;QACtB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,mBAAmB,GAAG,UAAU,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtC,eAAe,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,mBAAmB,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC"}