things-api 0.15.0 → 0.16.0
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.
- package/README.md +4 -4
- package/dist/audit/schema.d.ts +8 -0
- package/dist/audit/schema.js.map +1 -1
- package/dist/cli/commands/install-skill.js +9 -2
- package/dist/cli/commands/install-skill.js.map +1 -1
- package/dist/cli/commands/repeat-flags.d.ts +11 -1
- package/dist/cli/commands/repeat-flags.js +23 -0
- package/dist/cli/commands/repeat-flags.js.map +1 -1
- package/dist/cli/commands/todo.js +49 -2
- package/dist/cli/commands/todo.js.map +1 -1
- package/dist/cli/commands/writes.js +182 -61
- package/dist/cli/commands/writes.js.map +1 -1
- package/dist/cli/help.js +14 -11
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/read-driver.d.ts +2 -2
- package/dist/cli/skill.d.ts +24 -0
- package/dist/cli/skill.js +40 -0
- package/dist/cli/skill.js.map +1 -1
- package/dist/client.d.ts +53 -12
- package/dist/client.js +6 -1
- package/dist/client.js.map +1 -1
- package/dist/contracts.d.ts +1 -1
- package/dist/contracts.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.js +132 -31
- package/dist/mcp/server.js.map +1 -1
- package/dist/model/entities.d.ts +35 -0
- package/dist/model/entities.js.map +1 -1
- package/dist/read/detail.js +49 -1
- package/dist/read/detail.js.map +1 -1
- package/dist/read/queries.d.ts +12 -0
- package/dist/read/queries.js +14 -0
- package/dist/read/queries.js.map +1 -1
- package/dist/read/shape.d.ts +25 -22
- package/dist/read/shape.js +81 -55
- package/dist/read/shape.js.map +1 -1
- package/dist/read/stage.d.ts +5 -5
- package/dist/read/stage.js +2 -2
- package/dist/read/views.d.ts +1 -1
- package/dist/read/views.js +4 -4
- package/dist/surface-copy.d.ts +2 -2
- package/dist/surface-copy.js +2 -2
- package/dist/write/batch.d.ts +28 -3
- package/dist/write/batch.js +162 -46
- package/dist/write/batch.js.map +1 -1
- package/dist/write/clone.d.ts +4 -0
- package/dist/write/clone.js +531 -0
- package/dist/write/clone.js.map +1 -0
- package/dist/write/commands.js +90 -4
- package/dist/write/commands.js.map +1 -1
- package/dist/write/guards.d.ts +1 -1
- package/dist/write/guards.js +33 -5
- package/dist/write/guards.js.map +1 -1
- package/dist/write/make-repeating-project.d.ts +2 -3
- package/dist/write/make-repeating-project.js +2 -73
- package/dist/write/make-repeating-project.js.map +1 -1
- package/dist/write/move.js +8 -1
- package/dist/write/move.js.map +1 -1
- package/dist/write/operations.d.ts +131 -9
- package/dist/write/operations.js +4 -1
- package/dist/write/operations.js.map +1 -1
- package/dist/write/pipeline.d.ts +38 -0
- package/dist/write/pipeline.js +68 -3
- package/dist/write/pipeline.js.map +1 -1
- package/dist/write/pre-state.js +7 -1
- package/dist/write/pre-state.js.map +1 -1
- package/dist/write/preserve-modified.d.ts +55 -0
- package/dist/write/preserve-modified.js +106 -0
- package/dist/write/preserve-modified.js.map +1 -0
- package/dist/write/promote-clone.d.ts +32 -0
- package/dist/write/promote-clone.js +620 -0
- package/dist/write/promote-clone.js.map +1 -0
- package/dist/write/resolution-timestamps.js +22 -0
- package/dist/write/resolution-timestamps.js.map +1 -1
- package/dist/write/reversibility.js +27 -14
- package/dist/write/reversibility.js.map +1 -1
- package/dist/write/undo.d.ts +11 -1
- package/dist/write/undo.js +126 -10
- package/dist/write/undo.js.map +1 -1
- package/dist/write/vectors/simulator.js +32 -1
- package/dist/write/vectors/simulator.js.map +1 -1
- package/dist/write/vectors/ui-certification.d.ts +1 -1
- package/dist/write/vectors/ui-certification.js +10 -3
- package/dist/write/vectors/ui-certification.js.map +1 -1
- package/package.json +1 -1
- package/skills/things-cli/SKILL.md +3 -2
- package/skills/things-cli/references/banner.md +1 -1
- package/skills/things-cli/references/contracts.md +17 -9
- package/skills/things-cli/references/data-model.md +2 -1
package/dist/read/shape.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/read/shape.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/read/shape.ts"],"names":[],"mappings":"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"}
|
package/dist/read/stage.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The
|
|
2
|
+
* The RS5 lifecycle taxonomy: ONE derived per-item field, `stage`, that replaces
|
|
3
3
|
* the three former wire fields `start` / `logged` / `trashed`. It names an item's
|
|
4
4
|
* primary lifecycle bucket in the same six words the sidebar and the view cards
|
|
5
5
|
* use, so a consumer reads one word instead of cross-referencing three.
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* A completed/canceled row NOT yet past the boundary has `logged=false` here,
|
|
25
25
|
* so it FALLS THROUGH and keeps its live stage below (Mike's explicit ruling).
|
|
26
26
|
* 2½. a DEADLINE-PULLED undated row (`today` marker set ∧ `startDate IS NULL`) →
|
|
27
|
-
* `anytime` —
|
|
27
|
+
* `anytime` — RS8 (BANNER1 / BANNER1b, law L-A): a due-deadline pull re-files
|
|
28
28
|
* an undated Inbox/Someday row into ANYTIME (the GUI removes it from
|
|
29
29
|
* Someday/Inbox and adds it to Anytime at pull time, even while raw `start`
|
|
30
30
|
* still reads 0/2). It derives its DESTINATION, not its origin. Ordered ABOVE
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
* docs/lab/upcoming-research.md, summarized in docs/things-app-oddities.md
|
|
63
63
|
* §8d–8e). A SOMEDAY or INBOX item with a due/overdue UNsuppressed deadline is
|
|
64
64
|
* PULLED into Today+Anytime, so it too reads `stage: "anytime"` AND `today: true`
|
|
65
|
-
* (
|
|
65
|
+
* (RS8 / BANNER1b — the GUI files a pulled row under Anytime, out of its origin
|
|
66
66
|
* bucket, §8s); the same item once its deadline is SUPPRESSED
|
|
67
67
|
* (`deadlineSuppressionDate` stamped — a side effect of rescheduling an
|
|
68
68
|
* overdue-deadline item, oddities §8e) is NOT pulled: no today marker, so it
|
|
@@ -104,7 +104,7 @@ export interface StageInput {
|
|
|
104
104
|
*/
|
|
105
105
|
export declare function deriveStage(item: StageInput): Stage;
|
|
106
106
|
/**
|
|
107
|
-
* An item's TIME-AXIS POSITION (
|
|
107
|
+
* An item's TIME-AXIS POSITION (RS7) — a presence-keyed value complementary to
|
|
108
108
|
* {@link Stage}. The doctrine line: **`stage` enumerates the sidebar BUCKETS an
|
|
109
109
|
* item lives in; `when` enumerates its TIME POSITIONS (today | evening | a future
|
|
110
110
|
* date).** Someday is deliberately NOT a `when` value — it is a bucket, so it
|
|
@@ -178,7 +178,7 @@ export declare function entityStage(item: EntityDerivable): Stage;
|
|
|
178
178
|
*/
|
|
179
179
|
export declare function entityWhen(item: EntityDerivable): When | undefined;
|
|
180
180
|
/**
|
|
181
|
-
* The
|
|
181
|
+
* The RS8 provisional-marker LAW (BANNER1 L-B) — the ONE predicate the wire emit
|
|
182
182
|
* boundary (`shape.ts`) and the TTY pip (`render.ts` renderToday) share, so a
|
|
183
183
|
* rendered `•` can NEVER disagree with the emitted `provisional`. A Today member
|
|
184
184
|
* (a today/evening `when`) the app has not yet MATERIALIZED: `start != active OR
|
package/dist/read/stage.js
CHANGED
|
@@ -7,7 +7,7 @@ export function deriveStage(item) {
|
|
|
7
7
|
return "trash";
|
|
8
8
|
if (item.logged)
|
|
9
9
|
return "logbook";
|
|
10
|
-
//
|
|
10
|
+
// RS8 (BANNER1 / BANNER1b, law L-A): a due-deadline PULL re-files an undated
|
|
11
11
|
// row (Inbox or Someday origin) into ANYTIME — the GUI removes it from the
|
|
12
12
|
// Someday/Inbox lists and adds it to the Anytime list at pull time, even while
|
|
13
13
|
// its raw `start` still reads 0/2 (Anytime ⊇ Today's to-dos). The row carries
|
|
@@ -96,7 +96,7 @@ export function entityWhen(item) {
|
|
|
96
96
|
});
|
|
97
97
|
}
|
|
98
98
|
/**
|
|
99
|
-
* The
|
|
99
|
+
* The RS8 provisional-marker LAW (BANNER1 L-B) — the ONE predicate the wire emit
|
|
100
100
|
* boundary (`shape.ts`) and the TTY pip (`render.ts` renderToday) share, so a
|
|
101
101
|
* rendered `•` can NEVER disagree with the emitted `provisional`. A Today member
|
|
102
102
|
* (a today/evening `when`) the app has not yet MATERIALIZED: `start != active OR
|
package/dist/read/views.d.ts
CHANGED
|
@@ -439,7 +439,7 @@ export interface DeadlinesFilter extends ViewFilter {
|
|
|
439
439
|
* deadline is strictly future; a deadline-less template, an undecodable rule, an
|
|
440
440
|
* after-completion/paused template with no set next occurrence, and any
|
|
441
441
|
* non-future derived deadline are EXCLUDED (never a guessed date). A projected
|
|
442
|
-
* row discloses its projection-ness through the
|
|
442
|
+
* row discloses its projection-ness through the RS6 `repeating` presence (it IS
|
|
443
443
|
* the template row, carrying the projected value in `deadline`). No double count:
|
|
444
444
|
* the already-materialized instance is a concrete row under the base query and
|
|
445
445
|
* the next-instance cursor points PAST it, so the projection lands on a strictly
|
package/dist/read/views.js
CHANGED
|
@@ -183,7 +183,7 @@ export function inboxView(db, now, filter, zone) {
|
|
|
183
183
|
where.push("t.creationDate <= ?");
|
|
184
184
|
binds.push(filter.until.getTime() / 1000);
|
|
185
185
|
}
|
|
186
|
-
//
|
|
186
|
+
// RS8 (BANNER1 Q1b, law L-A): a due/overdue un-dismissed deadline pulls an
|
|
187
187
|
// undated Inbox row into Today AND removes it from the GUI Inbox list — even
|
|
188
188
|
// while its raw `start` still reads 0. EXCLUDE the pulled rows so the flat
|
|
189
189
|
// inbox view stays GUI-faithful; reuse the Today deadline arm verbatim so the
|
|
@@ -207,7 +207,7 @@ export function anytimeView(db, now, filter, zone) {
|
|
|
207
207
|
// cascade-excluded — the checked project row represents them. The boundary is
|
|
208
208
|
// threaded into the SQL filter and materialize so presence and `logged` agree.
|
|
209
209
|
//
|
|
210
|
-
//
|
|
210
|
+
// RS8 (BANNER1b, law L-A): Anytime is a SUPERSET of Today's to-dos — a
|
|
211
211
|
// due-deadline pull re-files an undated Inbox/Someday row into Anytime (out of
|
|
212
212
|
// its origin bucket) even while its raw `start` still reads 0/2. So the
|
|
213
213
|
// membership arm is ANYTIME_SELF *OR* the Today deadline-pull arm (reused
|
|
@@ -394,7 +394,7 @@ export function somedayView(db, now, filter, zone) {
|
|
|
394
394
|
? `EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT}
|
|
395
395
|
AND p.trashed = 0 AND p.status = 0 AND ${ANYTIME_SELF("p")})`
|
|
396
396
|
: "0";
|
|
397
|
-
//
|
|
397
|
+
// RS8 (BANNER1 Q1b, law L-A): a due/overdue un-dismissed deadline pulls an
|
|
398
398
|
// undated Someday row into Today AND removes it from the GUI Someday list —
|
|
399
399
|
// even while its raw `start` still reads 2. EXCLUDE the pulled rows so the flat
|
|
400
400
|
// someday view stays GUI-faithful; reuse the Today deadline arm verbatim so the
|
|
@@ -844,7 +844,7 @@ export function searchView(db, query, options, now, zone) {
|
|
|
844
844
|
* deadline is strictly future; a deadline-less template, an undecodable rule, an
|
|
845
845
|
* after-completion/paused template with no set next occurrence, and any
|
|
846
846
|
* non-future derived deadline are EXCLUDED (never a guessed date). A projected
|
|
847
|
-
* row discloses its projection-ness through the
|
|
847
|
+
* row discloses its projection-ness through the RS6 `repeating` presence (it IS
|
|
848
848
|
* the template row, carrying the projected value in `deadline`). No double count:
|
|
849
849
|
* the already-materialized instance is a concrete row under the base query and
|
|
850
850
|
* the next-instance cursor points PAST it, so the projection lands on a strictly
|
package/dist/surface-copy.d.ts
CHANGED
|
@@ -33,10 +33,10 @@ export declare const LIMIT_DESC = "maximum items to show (default 50)";
|
|
|
33
33
|
/** Shared `--all`/`all` description (lift the row limit). */
|
|
34
34
|
export declare const ALL_DESC = "show every matching item, no limit";
|
|
35
35
|
/**
|
|
36
|
-
* Shared `--full`/`full` description — the
|
|
36
|
+
* Shared `--full`/`full` description — the RS2 tier escape hatch. List views
|
|
37
37
|
* default to a compact line-item; this forces the full per-row record
|
|
38
38
|
* (`created`/`modified`, the full repeat block, full notes, default-valued
|
|
39
|
-
* fields). The no-redundant-ancestry pruning (
|
|
39
|
+
* fields). The no-redundant-ancestry pruning (RS1) still applies.
|
|
40
40
|
*/
|
|
41
41
|
export declare const FULL_DESC = "full detail per row (default is a compact line-item)";
|
|
42
42
|
/** Default per-project preview cap in the grouped catalogues (anytime). */
|
package/dist/surface-copy.js
CHANGED
|
@@ -33,10 +33,10 @@ export const LIMIT_DESC = `maximum items to show (default ${DEFAULT_LIST_LIMIT})
|
|
|
33
33
|
/** Shared `--all`/`all` description (lift the row limit). */
|
|
34
34
|
export const ALL_DESC = "show every matching item, no limit";
|
|
35
35
|
/**
|
|
36
|
-
* Shared `--full`/`full` description — the
|
|
36
|
+
* Shared `--full`/`full` description — the RS2 tier escape hatch. List views
|
|
37
37
|
* default to a compact line-item; this forces the full per-row record
|
|
38
38
|
* (`created`/`modified`, the full repeat block, full notes, default-valued
|
|
39
|
-
* fields). The no-redundant-ancestry pruning (
|
|
39
|
+
* fields). The no-redundant-ancestry pruning (RS1) still applies.
|
|
40
40
|
*/
|
|
41
41
|
export const FULL_DESC = "full detail per row (default is a compact line-item)";
|
|
42
42
|
/** Default per-project preview cap in the grouped catalogues (anytime). */
|
package/dist/write/batch.d.ts
CHANGED
|
@@ -66,6 +66,21 @@ export interface BatchItemResult {
|
|
|
66
66
|
/** Echoed when the op carried a client idempotency id (ADDITIVE). */
|
|
67
67
|
opId?: string;
|
|
68
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Resume guidance after a stop-on-failure halt (Change 2). Present only when a
|
|
71
|
+
* runtime failure halted the batch with lines left not-run. Tells the caller
|
|
72
|
+
* whether the SAME batch can be resubmitted verbatim to resume.
|
|
73
|
+
*/
|
|
74
|
+
export interface BatchResumption {
|
|
75
|
+
/** How many lines were reported not-run after the halt. */
|
|
76
|
+
notRun: number;
|
|
77
|
+
/** True iff every line that COMMITTED a change carried an opId (safe verbatim rerun). */
|
|
78
|
+
verbatimSafe: boolean;
|
|
79
|
+
/** Indices of committed lines that lacked an opId — a verbatim rerun would RE-RUN these. */
|
|
80
|
+
nonIdempotentIndices: number[];
|
|
81
|
+
/** Human-readable resume story (mirrored into the CLI/MCP summary). */
|
|
82
|
+
detail: string;
|
|
83
|
+
}
|
|
69
84
|
/** The whole-batch result: the per-op stream plus the batch-level additions. */
|
|
70
85
|
export interface BatchResult {
|
|
71
86
|
results: BatchItemResult[];
|
|
@@ -77,14 +92,24 @@ export interface BatchResult {
|
|
|
77
92
|
* all-rejected batch, or one where no leg reached the pipeline.
|
|
78
93
|
*/
|
|
79
94
|
undoToken?: string;
|
|
95
|
+
/**
|
|
96
|
+
* Resume guidance — present only when a runtime failure HALTED the batch
|
|
97
|
+
* (stop-on-failure default) leaving lines not-run (ADDITIVE).
|
|
98
|
+
*/
|
|
99
|
+
resumption?: BatchResumption;
|
|
80
100
|
}
|
|
81
101
|
export interface BatchOptions {
|
|
82
|
-
/**
|
|
83
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Run PAST a runtime per-line failure instead of halting. The default is
|
|
104
|
+
* stop-on-failure (Change 2): a runtime failure halts the batch and every
|
|
105
|
+
* later line is reported not-run. Set this to restore the old proceed-past
|
|
106
|
+
* behavior (every line runs regardless of earlier failures).
|
|
107
|
+
*/
|
|
108
|
+
continueOnError?: boolean;
|
|
84
109
|
/** Plan every op without executing (each result is its dry-run plan). */
|
|
85
110
|
dryRun?: boolean;
|
|
86
111
|
actor?: string;
|
|
87
112
|
}
|
|
88
|
-
/** True when an outcome should be treated as a failure
|
|
113
|
+
/** True when an outcome should be treated as a failure (halt / exit code). */
|
|
89
114
|
export declare function outcomeFailed(outcome: BatchItemOutcome): boolean;
|
|
90
115
|
export declare function runBatch(deps: WriteDeps, ops: BatchOp[], options?: BatchOptions, onResult?: (result: BatchItemResult) => void): Promise<BatchResult>;
|
package/dist/write/batch.js
CHANGED
|
@@ -4,6 +4,21 @@ import { fingerprintLabel, runMutation } from "./pipeline.js";
|
|
|
4
4
|
import { runReorder } from "./reorder.js";
|
|
5
5
|
import { readAuditRecords } from "./undo.js";
|
|
6
6
|
const KNOWN_OPS = new Set(OPERATION_KINDS);
|
|
7
|
+
/**
|
|
8
|
+
* The promote COMPOUNDS — each is a multi-leg orchestration (make-repeating:
|
|
9
|
+
* clone → native GUI promote → trash; add-repeating: add → native GUI promote),
|
|
10
|
+
* delivered only by its dedicated orchestrator and NOT dispatchable through the
|
|
11
|
+
* pipeline as one atomic op, so none can be a batch leg. Refused per-line with a
|
|
12
|
+
* pointer to the standalone command. (make-repeating joined this set with the
|
|
13
|
+
* promote-via-clone rewrite — ruling 2026-08-13; the old batch path ran the
|
|
14
|
+
* destructive native promote, which is deleted per ALPHA-CONTRACT.)
|
|
15
|
+
*/
|
|
16
|
+
const BATCH_UNSUPPORTED_COMPOUND = new Set([
|
|
17
|
+
"todo.make-repeating",
|
|
18
|
+
"project.make-repeating",
|
|
19
|
+
"todo.add-repeating",
|
|
20
|
+
"project.add-repeating",
|
|
21
|
+
]);
|
|
7
22
|
/**
|
|
8
23
|
* Ops that MINT a uuid, so may declare a `tempId` — the ratified rule is
|
|
9
24
|
* "anything that creates a new uuid". NB: `tag.add` is deliberately absent (tags
|
|
@@ -12,7 +27,6 @@ const KNOWN_OPS = new Set(OPERATION_KINDS);
|
|
|
12
27
|
const UUID_MINTING_OPS = new Set([
|
|
13
28
|
"todo.add",
|
|
14
29
|
"project.add",
|
|
15
|
-
"project.add-repeating",
|
|
16
30
|
"area.add",
|
|
17
31
|
"project.add-heading",
|
|
18
32
|
"todo.duplicate",
|
|
@@ -21,6 +35,12 @@ const UUID_MINTING_OPS = new Set([
|
|
|
21
35
|
"project.make-repeating",
|
|
22
36
|
"todo.convert-to-project",
|
|
23
37
|
"project.promote-heading",
|
|
38
|
+
// NB: `*.make-repeating` mints a uuid but is REFUSED as a batch leg
|
|
39
|
+
// (BATCH_UNSUPPORTED_COMPOUND) — it stays listed here so a tempId on it clears
|
|
40
|
+
// the tempId-declaration pre-flight and is then caught by the static compound
|
|
41
|
+
// check (which now refuses the WHOLE batch, Change 1) with the informative
|
|
42
|
+
// compound detail rather than a bare "tempId not valid here". The add-repeating
|
|
43
|
+
// COMPOUNDS mint uuids too but are likewise refused standalone.
|
|
24
44
|
]);
|
|
25
45
|
const TEMP_ID_RE = /^[A-Za-z0-9_-]{1,32}$/;
|
|
26
46
|
/**
|
|
@@ -41,20 +61,27 @@ const REF_KEYS = new Set([
|
|
|
41
61
|
"heading",
|
|
42
62
|
"headings",
|
|
43
63
|
]);
|
|
44
|
-
/** True when an outcome should be treated as a failure
|
|
64
|
+
/** True when an outcome should be treated as a failure (halt / exit code). */
|
|
45
65
|
export function outcomeFailed(outcome) {
|
|
46
66
|
return outcome.kind !== "ok" && outcome.kind !== "dry-run" && outcome.kind !== "already-applied";
|
|
47
67
|
}
|
|
48
68
|
/**
|
|
49
|
-
*
|
|
50
|
-
* name→line index of valid declarations and, per
|
|
51
|
-
* detail.
|
|
52
|
-
* a
|
|
53
|
-
*
|
|
69
|
+
* STATIC preflight over EVERY line, BEFORE any leg runs (Change 1). Returns the
|
|
70
|
+
* name→line index of valid tempId declarations and, per statically-invalid line,
|
|
71
|
+
* the usage detail. "Statically detectable" means checkable with NO DB/app state:
|
|
72
|
+
* a torn/non-object line, missing/unknown op, a BATCH_UNSUPPORTED_COMPOUND op,
|
|
73
|
+
* non-object params, a malformed opId, a malformed/misplaced/duplicate tempId
|
|
74
|
+
* declaration, and a `$ref` naming a tempId that NO EARLIER line declares
|
|
75
|
+
* (unresolved or forward). ANY hit rejects the WHOLE batch (nothing executes) —
|
|
76
|
+
* a script with a structural error is refused as a unit. RUNTIME failures
|
|
77
|
+
* (verify-failed, guards, param-shape throws, a ref to a leg that BOUND NOTHING)
|
|
78
|
+
* are not detectable here and keep their per-line semantics in `runLine`.
|
|
54
79
|
*/
|
|
55
|
-
function
|
|
80
|
+
function preflightBatch(ops) {
|
|
56
81
|
const declIndex = new Map();
|
|
57
82
|
const errors = new Map();
|
|
83
|
+
// Pass 1 — validate every tempId DECLARATION and index the valid ones (so the
|
|
84
|
+
// ref check below can tell "declared earlier" from "unresolved"/"forward").
|
|
58
85
|
for (let i = 0; i < ops.length; i++) {
|
|
59
86
|
const entry = ops[i];
|
|
60
87
|
if (typeof entry !== "object" || entry === null)
|
|
@@ -81,8 +108,83 @@ function validateDeclarations(ops) {
|
|
|
81
108
|
}
|
|
82
109
|
declIndex.set(tempId, i);
|
|
83
110
|
}
|
|
111
|
+
// Pass 2 — per-line STATIC shape + static ref checks (skip lines already
|
|
112
|
+
// flagged by a declaration error; one detail per line is enough to refuse).
|
|
113
|
+
for (let i = 0; i < ops.length; i++) {
|
|
114
|
+
if (errors.has(i))
|
|
115
|
+
continue;
|
|
116
|
+
const detail = staticLineError(ops[i], i, declIndex);
|
|
117
|
+
if (detail !== undefined)
|
|
118
|
+
errors.set(i, detail);
|
|
119
|
+
}
|
|
84
120
|
return { declIndex, errors };
|
|
85
121
|
}
|
|
122
|
+
/** One line's STATIC shape/ref error (no DB/app state), or undefined when clean. */
|
|
123
|
+
function staticLineError(entry, index, declIndex) {
|
|
124
|
+
if (typeof entry !== "object" || entry === null || typeof entry.op !== "string") {
|
|
125
|
+
return "each op needs {op, params}";
|
|
126
|
+
}
|
|
127
|
+
if (!KNOWN_OPS.has(entry.op)) {
|
|
128
|
+
return `unknown op "${entry.op}" — see \`things capabilities\``;
|
|
129
|
+
}
|
|
130
|
+
if (BATCH_UNSUPPORTED_COMPOUND.has(entry.op)) {
|
|
131
|
+
return (`"${entry.op}" is a promote-via-clone COMPOUND (clone/add → GUI promote → trash), not a ` +
|
|
132
|
+
"single atomic op — it does not compose inside a batch. Run it as a standalone command " +
|
|
133
|
+
"(`things todo|project make-repeating` / `add-repeating`)");
|
|
134
|
+
}
|
|
135
|
+
if (typeof entry.params !== "object" || entry.params === null) {
|
|
136
|
+
return "params must be an object";
|
|
137
|
+
}
|
|
138
|
+
if (entry.opId !== undefined && !OP_ID_RE.test(entry.opId)) {
|
|
139
|
+
return "opId must match [A-Za-z0-9_-] and be 1–64 characters";
|
|
140
|
+
}
|
|
141
|
+
return staticRefError(entry.params, declIndex, index);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* STATIC `$ref` check for one line's ref-accepting params: a `$name` that names
|
|
145
|
+
* a tempId NO EARLIER line declares — either declared nowhere (unresolved) or
|
|
146
|
+
* declared on this/a later line (forward). Both are structural and refuse the
|
|
147
|
+
* whole batch. A ref to a tempId declared EARLIER is fine here (whether the leg
|
|
148
|
+
* actually bound a uuid is a RUNTIME question, resolved in `runLine`).
|
|
149
|
+
*/
|
|
150
|
+
function staticRefError(params, declIndex, currentIndex) {
|
|
151
|
+
const check = (value) => {
|
|
152
|
+
if (!isRef(value))
|
|
153
|
+
return undefined;
|
|
154
|
+
const { name } = parseRef(value);
|
|
155
|
+
const declaredAt = declIndex.get(name);
|
|
156
|
+
if (declaredAt === undefined) {
|
|
157
|
+
return `unresolved-temp-ref: "${value}" names no tempId declared in this batch`;
|
|
158
|
+
}
|
|
159
|
+
if (declaredAt > currentIndex) {
|
|
160
|
+
return `unresolved-temp-ref: "${value}" is a forward reference — tempId "${name}" is declared later (line ${declaredAt + 1})`;
|
|
161
|
+
}
|
|
162
|
+
return undefined;
|
|
163
|
+
};
|
|
164
|
+
for (const key of Object.keys(params)) {
|
|
165
|
+
if (!REF_KEYS.has(key))
|
|
166
|
+
continue;
|
|
167
|
+
const value = params[key];
|
|
168
|
+
if (isRef(value)) {
|
|
169
|
+
const e = check(value);
|
|
170
|
+
if (e !== undefined)
|
|
171
|
+
return e;
|
|
172
|
+
}
|
|
173
|
+
else if (Array.isArray(value)) {
|
|
174
|
+
for (const el of value) {
|
|
175
|
+
const e = check(el);
|
|
176
|
+
if (e !== undefined)
|
|
177
|
+
return e;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
else if (typeof value === "object" && value !== null) {
|
|
181
|
+
const e = check(value["uuid"]);
|
|
182
|
+
if (e !== undefined)
|
|
183
|
+
return e;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return undefined;
|
|
187
|
+
}
|
|
86
188
|
/** Parse a `"$name"` / `"$name.instance"` token into its handle + accessor. */
|
|
87
189
|
function parseRef(value) {
|
|
88
190
|
const body = value.slice(1); // drop the leading "$"
|
|
@@ -241,18 +343,21 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
241
343
|
const actor = options.actor ?? deps.config.actor;
|
|
242
344
|
const bindings = new Map();
|
|
243
345
|
const tempIdMapping = {};
|
|
244
|
-
//
|
|
245
|
-
|
|
246
|
-
|
|
346
|
+
// STATIC preflight (Change 1): scan EVERY line for a structural error BEFORE
|
|
347
|
+
// any leg runs — dry-run takes the same pass. On any hit the WHOLE batch is
|
|
348
|
+
// refused: the offending lines report `invalid` (enumerating every one), all
|
|
349
|
+
// others report `skipped`, and nothing is dispatched.
|
|
350
|
+
const { declIndex, errors: staticErrors } = preflightBatch(ops);
|
|
351
|
+
if (staticErrors.size > 0) {
|
|
247
352
|
const results = ops.map((entry, index) => {
|
|
248
353
|
const op = String(entry?.op);
|
|
249
|
-
const detail =
|
|
354
|
+
const detail = staticErrors.get(index);
|
|
250
355
|
const outcome = detail !== undefined
|
|
251
356
|
? { kind: "invalid", op, detail }
|
|
252
357
|
: {
|
|
253
358
|
kind: "skipped",
|
|
254
359
|
op,
|
|
255
|
-
detail: "not run — the batch
|
|
360
|
+
detail: "not run — the batch was refused before executing (a line is statically invalid; see the invalid line(s))",
|
|
256
361
|
};
|
|
257
362
|
const result = { index, op, outcome };
|
|
258
363
|
onResult?.(result);
|
|
@@ -267,6 +372,7 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
267
372
|
const results = [];
|
|
268
373
|
let halted = false;
|
|
269
374
|
let legsDispatched = 0;
|
|
375
|
+
let notRun = 0;
|
|
270
376
|
/** Bind (or rebind) a temp id to a discovered uuid so later `$refs` resolve. */
|
|
271
377
|
const bind = (tempId, binding) => {
|
|
272
378
|
bindings.set(tempId, binding);
|
|
@@ -274,36 +380,9 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
274
380
|
};
|
|
275
381
|
/** Compute one line's outcome + bound uuid; mutates bindings/dispatch counter. */
|
|
276
382
|
const runLine = async (entry, index, tempId, opId) => {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
kind: "invalid",
|
|
281
|
-
op: String(entry?.op),
|
|
282
|
-
detail: "each op needs {op, params}",
|
|
283
|
-
},
|
|
284
|
-
};
|
|
285
|
-
}
|
|
286
|
-
if (!KNOWN_OPS.has(entry.op)) {
|
|
287
|
-
return {
|
|
288
|
-
outcome: {
|
|
289
|
-
kind: "invalid",
|
|
290
|
-
op: entry.op,
|
|
291
|
-
detail: `unknown op "${entry.op}" — see \`things capabilities\``,
|
|
292
|
-
},
|
|
293
|
-
};
|
|
294
|
-
}
|
|
295
|
-
if (typeof entry.params !== "object" || entry.params === null) {
|
|
296
|
-
return { outcome: { kind: "invalid", op: entry.op, detail: "params must be an object" } };
|
|
297
|
-
}
|
|
298
|
-
if (opId !== undefined && !OP_ID_RE.test(opId)) {
|
|
299
|
-
return {
|
|
300
|
-
outcome: {
|
|
301
|
-
kind: "invalid",
|
|
302
|
-
op: entry.op,
|
|
303
|
-
detail: "opId must match [A-Za-z0-9_-] and be 1–64 characters",
|
|
304
|
-
},
|
|
305
|
-
};
|
|
306
|
-
}
|
|
383
|
+
// Every STATIC shape/op/opId/ref check already passed the whole-batch
|
|
384
|
+
// preflight above (a hit there refuses the batch and this loop never runs),
|
|
385
|
+
// so `entry` is a well-formed op with object params and a valid opId here.
|
|
307
386
|
// opId idempotency: an earlier submission already applied this line — skip,
|
|
308
387
|
// report already-applied with the recorded uuid, and rebind it so later
|
|
309
388
|
// $refs still resolve.
|
|
@@ -416,10 +495,12 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
416
495
|
let outcome;
|
|
417
496
|
let boundUuid;
|
|
418
497
|
if (halted) {
|
|
498
|
+
notRun += 1;
|
|
419
499
|
outcome = {
|
|
420
500
|
kind: "skipped",
|
|
421
501
|
op: String(entry?.op),
|
|
422
|
-
detail: "
|
|
502
|
+
detail: "not run — a preceding line failed and the batch stops on failure by default " +
|
|
503
|
+
"(pass --continue-on-error / continueOnError to run past failures)",
|
|
423
504
|
};
|
|
424
505
|
}
|
|
425
506
|
else {
|
|
@@ -435,8 +516,16 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
435
516
|
};
|
|
436
517
|
results.push(result);
|
|
437
518
|
onResult?.(result);
|
|
438
|
-
|
|
519
|
+
// Stop-on-failure is the DEFAULT (Change 2): a runtime failure halts the
|
|
520
|
+
// batch so every later line is reported not-run. `continueOnError` restores
|
|
521
|
+
// the old proceed-past behavior. Dry-run never halts — a preview shows the
|
|
522
|
+
// WHOLE plan.
|
|
523
|
+
if (options.dryRun !== true &&
|
|
524
|
+
options.continueOnError !== true &&
|
|
525
|
+
!halted &&
|
|
526
|
+
outcomeFailed(outcome)) {
|
|
439
527
|
halted = true;
|
|
528
|
+
}
|
|
440
529
|
}
|
|
441
530
|
// Write the batch summary (and mint the batch undo token) when at least one
|
|
442
531
|
// leg actually reached the pipeline. Skipped for dry-run and all-rejected
|
|
@@ -446,6 +535,33 @@ export async function runBatch(deps, ops, options = {}, onResult) {
|
|
|
446
535
|
auditBatchSummary(deps, startedAt, txnId, legsDispatched, tempIdMapping, actor);
|
|
447
536
|
undoToken = txnId;
|
|
448
537
|
}
|
|
449
|
-
|
|
538
|
+
// Resume guidance (Change 2): only when a runtime failure HALTED the batch
|
|
539
|
+
// with lines left not-run. A verbatim rerun is SAFE iff every COMMITTED line
|
|
540
|
+
// (kind "ok") carried an opId — those replay as already-applied (skipped),
|
|
541
|
+
// while the failed line is retried and the not-run lines run for the first
|
|
542
|
+
// time. A committed line without an opId would RE-RUN (e.g. a duplicate
|
|
543
|
+
// create), so it is named.
|
|
544
|
+
let resumption;
|
|
545
|
+
if (options.dryRun !== true && halted && notRun > 0) {
|
|
546
|
+
const nonIdempotentIndices = results
|
|
547
|
+
.filter((r) => r.outcome.kind === "ok" && r.opId === undefined)
|
|
548
|
+
.map((r) => r.index);
|
|
549
|
+
const verbatimSafe = nonIdempotentIndices.length === 0;
|
|
550
|
+
const detail = verbatimSafe
|
|
551
|
+
? `${notRun} line(s) did not run after the batch stopped on a failure. Every committed ` +
|
|
552
|
+
"line carried an opId, so the SAME batch can be resubmitted verbatim to resume — " +
|
|
553
|
+
"already-applied lines are skipped and the run continues past the failure."
|
|
554
|
+
: `${notRun} line(s) did not run after the batch stopped on a failure. Resubmitting the ` +
|
|
555
|
+
`SAME batch verbatim would RE-RUN line(s) ${nonIdempotentIndices.join(", ")} (they ` +
|
|
556
|
+
"committed a change but carry no opId, so they are not idempotent) — add an opId to " +
|
|
557
|
+
"every line before resubmitting, or drop the already-applied lines.";
|
|
558
|
+
resumption = { notRun, verbatimSafe, nonIdempotentIndices, detail };
|
|
559
|
+
}
|
|
560
|
+
return {
|
|
561
|
+
results,
|
|
562
|
+
tempIdMapping,
|
|
563
|
+
...(undoToken !== undefined && { undoToken }),
|
|
564
|
+
...(resumption !== undefined && { resumption }),
|
|
565
|
+
};
|
|
450
566
|
}
|
|
451
567
|
//# sourceMappingURL=batch.js.map
|