things-api 0.11.0 → 0.13.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.
Files changed (208) hide show
  1. package/README.md +16 -5
  2. package/dist/audit/schema.d.ts +7 -0
  3. package/dist/audit/schema.js.map +1 -1
  4. package/dist/cli/canonical-ref.d.ts +21 -0
  5. package/dist/cli/canonical-ref.js +23 -0
  6. package/dist/cli/canonical-ref.js.map +1 -0
  7. package/dist/cli/commands/area.d.ts +18 -11
  8. package/dist/cli/commands/area.js +81 -77
  9. package/dist/cli/commands/area.js.map +1 -1
  10. package/dist/cli/commands/doctor.d.ts +1 -2
  11. package/dist/cli/commands/doctor.js +11 -1
  12. package/dist/cli/commands/doctor.js.map +1 -1
  13. package/dist/cli/commands/install-skill.d.ts +19 -4
  14. package/dist/cli/commands/install-skill.js +130 -52
  15. package/dist/cli/commands/install-skill.js.map +1 -1
  16. package/dist/cli/commands/mcp.js +21 -1
  17. package/dist/cli/commands/mcp.js.map +1 -1
  18. package/dist/cli/commands/project.d.ts +1 -0
  19. package/dist/cli/commands/project.js +92 -48
  20. package/dist/cli/commands/project.js.map +1 -1
  21. package/dist/cli/commands/reads.d.ts +5 -1
  22. package/dist/cli/commands/reads.js +110 -31
  23. package/dist/cli/commands/reads.js.map +1 -1
  24. package/dist/cli/commands/setup.js +11 -4
  25. package/dist/cli/commands/setup.js.map +1 -1
  26. package/dist/cli/commands/show.js +75 -36
  27. package/dist/cli/commands/show.js.map +1 -1
  28. package/dist/cli/commands/todo.js +2 -2
  29. package/dist/cli/commands/todo.js.map +1 -1
  30. package/dist/cli/commands/writes.js +795 -144
  31. package/dist/cli/commands/writes.js.map +1 -1
  32. package/dist/cli/did-you-mean.d.ts +14 -3
  33. package/dist/cli/did-you-mean.js +44 -7
  34. package/dist/cli/did-you-mean.js.map +1 -1
  35. package/dist/cli/dry-run.d.ts +55 -0
  36. package/dist/cli/dry-run.js +92 -0
  37. package/dist/cli/dry-run.js.map +1 -0
  38. package/dist/cli/glyphs.d.ts +16 -2
  39. package/dist/cli/glyphs.js +60 -12
  40. package/dist/cli/glyphs.js.map +1 -1
  41. package/dist/cli/help.js +69 -13
  42. package/dist/cli/help.js.map +1 -1
  43. package/dist/cli/main.js +8 -1
  44. package/dist/cli/main.js.map +1 -1
  45. package/dist/cli/move-hint.d.ts +3 -2
  46. package/dist/cli/move-hint.js +2 -2
  47. package/dist/cli/move-hint.js.map +1 -1
  48. package/dist/cli/read-driver.d.ts +53 -5
  49. package/dist/cli/read-driver.js +82 -15
  50. package/dist/cli/read-driver.js.map +1 -1
  51. package/dist/cli/ref-render.d.ts +14 -0
  52. package/dist/cli/ref-render.js +9 -0
  53. package/dist/cli/ref-render.js.map +1 -0
  54. package/dist/cli/render.d.ts +40 -14
  55. package/dist/cli/render.js +128 -55
  56. package/dist/cli/render.js.map +1 -1
  57. package/dist/cli/resolve-invocation.d.ts +7 -5
  58. package/dist/cli/resolve-invocation.js +16 -7
  59. package/dist/cli/resolve-invocation.js.map +1 -1
  60. package/dist/cli/skill-check.d.ts +12 -6
  61. package/dist/cli/skill-check.js +31 -14
  62. package/dist/cli/skill-check.js.map +1 -1
  63. package/dist/cli/skill.d.ts +8 -0
  64. package/dist/cli/skill.js +10 -0
  65. package/dist/cli/skill.js.map +1 -1
  66. package/dist/cli/verb-hint.js +1 -1
  67. package/dist/cli/verb-hint.js.map +1 -1
  68. package/dist/client.d.ts +158 -26
  69. package/dist/client.js +254 -38
  70. package/dist/client.js.map +1 -1
  71. package/dist/config.d.ts +66 -2
  72. package/dist/config.js +120 -12
  73. package/dist/config.js.map +1 -1
  74. package/dist/contracts.d.ts +187 -28
  75. package/dist/contracts.js +22 -1
  76. package/dist/contracts.js.map +1 -1
  77. package/dist/db/baselines/db-v26.js +4 -1
  78. package/dist/db/baselines/db-v26.js.map +1 -1
  79. package/dist/diagnose.d.ts +34 -2
  80. package/dist/diagnose.js +36 -1
  81. package/dist/diagnose.js.map +1 -1
  82. package/dist/index.d.ts +21 -8
  83. package/dist/index.js +26 -3
  84. package/dist/index.js.map +1 -1
  85. package/dist/mcp/server.d.ts +9 -0
  86. package/dist/mcp/server.js +790 -322
  87. package/dist/mcp/server.js.map +1 -1
  88. package/dist/model/entities.d.ts +57 -4
  89. package/dist/model/entities.js.map +1 -1
  90. package/dist/model/mappers.d.ts +2 -0
  91. package/dist/model/mappers.js +44 -2
  92. package/dist/model/mappers.js.map +1 -1
  93. package/dist/model/recurrence.d.ts +8 -1
  94. package/dist/model/recurrence.js.map +1 -1
  95. package/dist/model/serialize.js +15 -3
  96. package/dist/model/serialize.js.map +1 -1
  97. package/dist/read/area-filter.d.ts +76 -0
  98. package/dist/read/area-filter.js +58 -0
  99. package/dist/read/area-filter.js.map +1 -0
  100. package/dist/read/area-view.d.ts +22 -11
  101. package/dist/read/area-view.js +54 -28
  102. package/dist/read/area-view.js.map +1 -1
  103. package/dist/read/detail.js +15 -8
  104. package/dist/read/detail.js.map +1 -1
  105. package/dist/read/predicates.d.ts +18 -0
  106. package/dist/read/predicates.js +19 -0
  107. package/dist/read/predicates.js.map +1 -1
  108. package/dist/read/project-view.d.ts +91 -15
  109. package/dist/read/project-view.js +135 -37
  110. package/dist/read/project-view.js.map +1 -1
  111. package/dist/read/pseudo-area.d.ts +29 -0
  112. package/dist/read/pseudo-area.js +27 -0
  113. package/dist/read/pseudo-area.js.map +1 -0
  114. package/dist/read/queries.d.ts +175 -19
  115. package/dist/read/queries.js +376 -32
  116. package/dist/read/queries.js.map +1 -1
  117. package/dist/read/scope.d.ts +126 -0
  118. package/dist/read/scope.js +161 -0
  119. package/dist/read/scope.js.map +1 -0
  120. package/dist/read/search-rank.d.ts +2 -5
  121. package/dist/read/shape.d.ts +181 -0
  122. package/dist/read/shape.js +737 -0
  123. package/dist/read/shape.js.map +1 -0
  124. package/dist/read/show-target.d.ts +9 -1
  125. package/dist/read/show-target.js +77 -17
  126. package/dist/read/show-target.js.map +1 -1
  127. package/dist/read/stage.d.ts +199 -0
  128. package/dist/read/stage.js +125 -0
  129. package/dist/read/stage.js.map +1 -0
  130. package/dist/read/truncation.d.ts +7 -12
  131. package/dist/read/truncation.js +56 -21
  132. package/dist/read/truncation.js.map +1 -1
  133. package/dist/read/views.d.ts +68 -16
  134. package/dist/read/views.js +206 -52
  135. package/dist/read/views.js.map +1 -1
  136. package/dist/surface-copy.d.ts +16 -0
  137. package/dist/surface-copy.js +16 -0
  138. package/dist/surface-copy.js.map +1 -1
  139. package/dist/write/batch.d.ts +49 -10
  140. package/dist/write/batch.js +423 -71
  141. package/dist/write/batch.js.map +1 -1
  142. package/dist/write/commands.js +268 -55
  143. package/dist/write/commands.js.map +1 -1
  144. package/dist/write/guards.d.ts +1 -1
  145. package/dist/write/guards.js +71 -10
  146. package/dist/write/guards.js.map +1 -1
  147. package/dist/write/heading.d.ts +10 -1
  148. package/dist/write/heading.js +35 -5
  149. package/dist/write/heading.js.map +1 -1
  150. package/dist/write/make-repeating-project.d.ts +2 -2
  151. package/dist/write/make-repeating-project.js +9 -9
  152. package/dist/write/make-repeating-project.js.map +1 -1
  153. package/dist/write/move.d.ts +134 -0
  154. package/dist/write/move.js +1874 -0
  155. package/dist/write/move.js.map +1 -0
  156. package/dist/write/operations.d.ts +105 -19
  157. package/dist/write/operations.js +56 -7
  158. package/dist/write/operations.js.map +1 -1
  159. package/dist/write/opid.d.ts +31 -0
  160. package/dist/write/opid.js +30 -0
  161. package/dist/write/opid.js.map +1 -0
  162. package/dist/write/pipeline.d.ts +70 -3
  163. package/dist/write/pipeline.js +198 -33
  164. package/dist/write/pipeline.js.map +1 -1
  165. package/dist/write/pre-state.d.ts +172 -8
  166. package/dist/write/pre-state.js +467 -25
  167. package/dist/write/pre-state.js.map +1 -1
  168. package/dist/write/reorder.d.ts +23 -3
  169. package/dist/write/reorder.js +2106 -86
  170. package/dist/write/reorder.js.map +1 -1
  171. package/dist/write/reversibility.js +19 -7
  172. package/dist/write/reversibility.js.map +1 -1
  173. package/dist/write/scope-guard.d.ts +31 -0
  174. package/dist/write/scope-guard.js +162 -0
  175. package/dist/write/scope-guard.js.map +1 -0
  176. package/dist/write/undo.js +120 -13
  177. package/dist/write/undo.js.map +1 -1
  178. package/dist/write/vectors/applescript.js +16 -7
  179. package/dist/write/vectors/applescript.js.map +1 -1
  180. package/dist/write/vectors/shortcuts.js +1 -1
  181. package/dist/write/vectors/shortcuts.js.map +1 -1
  182. package/dist/write/vectors/simulator.js +83 -27
  183. package/dist/write/vectors/simulator.js.map +1 -1
  184. package/dist/write/vectors/types.d.ts +11 -0
  185. package/dist/write/vectors/ui-certification.d.ts +3 -3
  186. package/dist/write/vectors/ui-certification.js +41 -5
  187. package/dist/write/vectors/ui-certification.js.map +1 -1
  188. package/dist/write/vectors/ui-drag.d.ts +21 -1
  189. package/dist/write/vectors/ui-drag.js +138 -27
  190. package/dist/write/vectors/ui-drag.js.map +1 -1
  191. package/dist/write/vectors/ui-recipes.d.ts +21 -1
  192. package/dist/write/vectors/ui-recipes.js +166 -7
  193. package/dist/write/vectors/ui-recipes.js.map +1 -1
  194. package/dist/write/vectors/ui.d.ts +25 -1
  195. package/dist/write/vectors/ui.js +142 -33
  196. package/dist/write/vectors/ui.js.map +1 -1
  197. package/dist/write/verify/delta.d.ts +17 -1
  198. package/dist/write/verify/delta.js +106 -29
  199. package/dist/write/verify/delta.js.map +1 -1
  200. package/package.json +7 -1
  201. package/schema/envelope.schema.json +397 -0
  202. package/skills/things-cli/SKILL.md +36 -17
  203. package/skills/things-cli/references/banner.md +35 -0
  204. package/skills/things-cli/references/contracts.md +32 -9
  205. package/skills/things-cli/references/errors.md +57 -0
  206. package/skills/things-cli/references/gui.md +1 -1
  207. package/skills/things-cli/references/model.md +18 -7
  208. package/skills/things-cli/references/ordering.md +88 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../src/write/move.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * per-vector matrices (data, produced by the lab), not here.
5
5
  */
6
6
  import type { IsoDate, ReminderTime } from "../model/dates.ts";
7
- export declare const OPERATION_KINDS: readonly ["todo.add", "todo.update", "todo.complete", "todo.cancel", "todo.reopen", "todo.move", "todo.set-tags", "todo.replace-checklist", "todo.edit-checklist-item", "todo.delete", "project.add", "project.update", "project.complete", "project.delete", "area.add", "area.delete", "tag.add", "tag.delete", "trash.empty", "reorder", "todo.duplicate", "area.update", "tag.update", "project.move", "todo.restore", "project.duplicate", "project.cancel", "project.reopen", "project.restore", "project.set-tags", "todo.backdate", "todo.add-logged", "heading.rename", "heading.archive", "heading.unarchive", "heading.create", "todo.clear-dated-reminder", "todo.make-repeating", "todo.reschedule-repeat", "todo.pause-repeat", "todo.resume-repeat", "todo.convert-to-project", "heading.convert-to-project", "project.reschedule-repeat", "project.pause-repeat", "project.resume-repeat", "area.reorder", "project.make-repeating", "project.create-repeating"];
7
+ export declare const OPERATION_KINDS: readonly ["todo.add", "todo.update", "todo.complete", "todo.cancel", "todo.reopen", "todo.move", "todo.set-tags", "todo.replace-checklist", "todo.edit-checklist-item", "todo.delete", "project.add", "project.update", "project.complete", "project.delete", "area.add", "area.delete", "tag.add", "tag.delete", "trash.empty", "reorder", "todo.duplicate", "area.update", "tag.update", "project.move", "todo.restore", "project.duplicate", "project.cancel", "project.reopen", "project.restore", "project.set-tags", "todo.backdate", "todo.add-logged", "project.add-heading", "project.rename-heading", "project.archive-heading", "project.unarchive-heading", "project.promote-heading", "project.move-heading", "project.move-heading-to-project", "project.dissolve-heading", "todo.clear-dated-reminder", "todo.make-repeating", "todo.reschedule-repeat", "todo.pause-repeat", "todo.resume-repeat", "todo.convert-to-project", "project.reschedule-repeat", "project.pause-repeat", "project.resume-repeat", "area.reorder", "project.make-repeating", "project.add-repeating"];
8
8
  export type OperationKind = (typeof OPERATION_KINDS)[number];
9
9
  /**
10
10
  * Operations delivered EXCLUSIVELY through the Accessibility GUI ("ui")
@@ -15,6 +15,34 @@ export type OperationKind = (typeof OPERATION_KINDS)[number];
15
15
  */
16
16
  export declare const UI_DRIVE_OPS: readonly OperationKind[];
17
17
  export declare function isUiDriveOp(op: OperationKind): boolean;
18
+ /**
19
+ * The project-scoped heading verbs (spec §2). Every one addresses a heading
20
+ * inside a project; none is a plain `project.*` op even though it shares the
21
+ * `project.` namespace, so guards/resolvers that key off the namespace must
22
+ * special-case them.
23
+ */
24
+ export declare const HEADING_OPS: readonly OperationKind[];
25
+ export declare function isHeadingOp(op: OperationKind): boolean;
26
+ /**
27
+ * Heading verbs whose `uuid` param addresses a HEADING row (not a project) —
28
+ * the pipeline resolves their target as a heading, and H-UNKNOWN-DESTINATION
29
+ * requires the target BE a heading. add-heading (project + title) and
30
+ * move-heading (project + heading list) carry no single heading `uuid`.
31
+ */
32
+ export declare const HEADING_TARGET_OPS: readonly OperationKind[];
33
+ export declare function isHeadingTargetOp(op: OperationKind): boolean;
34
+ /**
35
+ * Placement of a heading among its project's headings (spec §2). Anchors are
36
+ * resolved heading uuids (the consumer resolves the `--before-heading` /
37
+ * `--after-heading` selector before the op runs).
38
+ */
39
+ export type HeadingPlacement = {
40
+ position: "first" | "last";
41
+ } | {
42
+ before: string;
43
+ } | {
44
+ after: string;
45
+ };
18
46
  /** Recurrence frequency the minimal v1 GUI rule vocabulary supports. */
19
47
  export type RepeatFrequency = "daily" | "weekly" | "monthly" | "yearly";
20
48
  /** `when` scheduling value: list keyword or a concrete date. */
@@ -62,15 +90,43 @@ export interface TodoUpdateParams {
62
90
  export interface UuidParams {
63
91
  uuid: string;
64
92
  }
65
- export interface HeadingCreateParams {
93
+ export interface HeadingAddParams {
66
94
  /** Existing project to create the heading in (uuid or unique, case-insensitive title). */
67
95
  project: ContainerRef;
68
96
  title: string;
69
97
  }
98
+ /**
99
+ * project.move-heading — reposition one or more of a project's headings as an
100
+ * ordered block (spec §2/§4). `headings` are resolved heading uuids in the
101
+ * order they should land (selection order = resulting order); their children
102
+ * follow. Anchors in `placement` are resolved heading uuids too.
103
+ */
104
+ export interface MoveHeadingParams {
105
+ project: ContainerRef;
106
+ headings: string[];
107
+ placement: HeadingPlacement;
108
+ }
70
109
  export interface HeadingRenameParams {
71
110
  uuid: string;
72
111
  title: string;
73
112
  }
113
+ /**
114
+ * project.move-heading-to-project — relocate ONE heading (with its children) to a
115
+ * DIFFERENT project (spec §2 cross-project move; HEADXPROJ recipe). GUI-only: the
116
+ * heading row's `…` ellipsis → Move… → keyboard-driven project picker. `heading`
117
+ * is a selector (exact title or uuid) WITHIN `project`; `toProject` is the
118
+ * destination. Distinct from `project.move-heading` (a pure within-project
119
+ * reorder) — this is the cross-container relocation, kept a separate verb so the
120
+ * destructive-ish container change is never conflated with an in-project shuffle.
121
+ */
122
+ export interface MoveHeadingToProjectParams {
123
+ /** The source project the heading currently lives in. */
124
+ project: ContainerRef;
125
+ /** The heading to move: exact title or uuid, within `project`. */
126
+ heading: string;
127
+ /** The destination project the heading (and its children) relocate to. */
128
+ toProject: ContainerRef;
129
+ }
74
130
  export interface HeadingArchiveParams {
75
131
  uuid: string;
76
132
  /**
@@ -121,10 +177,18 @@ export interface TodoMoveParams {
121
177
  /** Move back to the Inbox — removes any schedule. Exclusive with the others. */
122
178
  inbox?: boolean;
123
179
  /**
124
- * Detach from the current project/area/heading, keeping the schedule and
125
- * everything else. Exclusive with the others.
180
+ * `--no-heading` (spec §5): leave the heading but STAY in the current
181
+ * project the to-do lands in the project's unheaded block. Exclusive with
182
+ * the others. Wire: re-assert the current project as the container with no
183
+ * heading param.
184
+ */
185
+ noHeading?: boolean;
186
+ /**
187
+ * `--loose` (spec §5): the total sever — leave heading, project, AND area,
188
+ * keeping the schedule. Exclusive with the others. (This is what the removed
189
+ * `--detach` did; the detach family renames it.)
126
190
  */
127
- detach?: boolean;
191
+ loose?: boolean;
128
192
  }
129
193
  export interface TodoSetTagsParams {
130
194
  uuid: string;
@@ -203,8 +267,12 @@ export interface ProjectMoveParams {
203
267
  uuid: string;
204
268
  /** Destination area (uuid or unique name). */
205
269
  area?: ContainerRef;
206
- /** Detach from the current area. Exclusive with area. */
207
- detach?: boolean;
270
+ /**
271
+ * `--no-area` (spec §5): leave the current area — a project's complete
272
+ * (single-level) detach. Exclusive with area. (Replaces the removed
273
+ * `--detach`.)
274
+ */
275
+ noArea?: boolean;
208
276
  }
209
277
  export interface ProjectCompleteParams {
210
278
  uuid: string;
@@ -255,25 +323,33 @@ export interface TagUpdateParams {
255
323
  /** Remove the tag's keyboard shortcut. Exclusive with shortcut. */
256
324
  clearShortcut?: boolean;
257
325
  }
258
- export type ReorderScope = "today" | "evening" | "project" | "area" | "inbox" | "headings" | "someday" | "projects";
326
+ export type ReorderScope = "today" | "evening" | "project" | "area" | "inbox" | "someday" | "projects" | "heading" | "area-someday" | "anytime" | "container-day" | "day" | "heading-someday" | "tomorrow" | "upcoming";
259
327
  export type ReorderStrategy = "native" | "bounce";
260
328
  export interface ReorderParams {
261
329
  scope: ReorderScope;
262
330
  /**
263
- * Required for project/area/headings scopes (headings: the project whose
264
- * heading rows are being reordered); must be omitted for
331
+ * Required for the project/area scopes; must be omitted for
265
332
  * today/evening/inbox/someday/projects.
266
333
  */
267
334
  container?: ContainerRef;
268
335
  /**
269
336
  * Desired order, top-first. May be a SUBSET of the scope's members: the
270
337
  * requested uuids are placed at the top in this order and every remaining
271
- * member keeps its current relative order below them.
338
+ * member keeps its current relative order below them. For an ANCHORED bounce
339
+ * placement (--before/--after) the planner passes the FULL target order here
340
+ * with the block spliced at the anchor.
272
341
  */
273
342
  uuids: string[];
343
+ /**
344
+ * The explicitly-NAMED movees, a subset of {@link uuids}. Distinguishes the
345
+ * user's block from members that only ride along a bounce anchor placement
346
+ * (co-bounced siblings — disclosed in the result). Defaults to all of `uuids`
347
+ * when omitted (every uuid is a named movee). Only the bounce path reads it.
348
+ */
349
+ named?: string[];
274
350
  /**
275
351
  * Omit for the default per scope: native for today/project/area/inbox/
276
- * headings/someday (requires allowExperimental), bounce for evening and
352
+ * someday (requires allowExperimental), bounce for evening and
277
353
  * projects. Today accepts an explicit "bounce" fallback; evening is
278
354
  * bounce-only; "projects" (top-level sidebar order) is bounce-only — each
279
355
  * project takes a when=someday -> when=anytime round-trip, which
@@ -385,7 +461,7 @@ export interface RepeatRuleParams {
385
461
  * created in Someday — so the promote never needs a coercion. The two legs are
386
462
  * NOT atomic: the created project persists even if the promote refuses.
387
463
  */
388
- export interface ProjectCreateRepeatingParams {
464
+ export interface ProjectAddRepeatingParams {
389
465
  title: string;
390
466
  notes?: string;
391
467
  /** Destination area (uuid or unique name); when omitted the project is created in Someday. */
@@ -429,23 +505,26 @@ export interface OperationParamsMap {
429
505
  "project.set-tags": ProjectSetTagsParams;
430
506
  "todo.backdate": TodoBackdateParams;
431
507
  "todo.add-logged": TodoAddLoggedParams;
432
- "heading.rename": HeadingRenameParams;
433
- "heading.archive": HeadingArchiveParams;
434
- "heading.unarchive": HeadingUnarchiveParams;
435
- "heading.create": HeadingCreateParams;
508
+ "project.add-heading": HeadingAddParams;
509
+ "project.rename-heading": HeadingRenameParams;
510
+ "project.archive-heading": HeadingArchiveParams;
511
+ "project.unarchive-heading": HeadingUnarchiveParams;
512
+ "project.promote-heading": UuidParams;
513
+ "project.move-heading": MoveHeadingParams;
514
+ "project.move-heading-to-project": MoveHeadingToProjectParams;
515
+ "project.dissolve-heading": UuidParams;
436
516
  "todo.clear-dated-reminder": UuidParams;
437
517
  "todo.make-repeating": RepeatRuleParams;
438
518
  "todo.reschedule-repeat": RepeatRuleParams;
439
519
  "todo.pause-repeat": UuidParams;
440
520
  "todo.resume-repeat": UuidParams;
441
521
  "todo.convert-to-project": UuidParams;
442
- "heading.convert-to-project": UuidParams;
443
522
  "project.reschedule-repeat": RepeatRuleParams;
444
523
  "project.pause-repeat": UuidParams;
445
524
  "project.resume-repeat": UuidParams;
446
525
  "area.reorder": AreaReorderParams;
447
526
  "project.make-repeating": RepeatRuleParams;
448
- "project.create-repeating": ProjectCreateRepeatingParams;
527
+ "project.add-repeating": ProjectAddRepeatingParams;
449
528
  }
450
529
  /** Explicit confirmations for operations with cascading or permanent effects (never defaulted). */
451
530
  export interface Acknowledgements {
@@ -457,6 +536,13 @@ export interface Acknowledgements {
457
536
  dangerouslyPermanent?: boolean;
458
537
  /** Confirm that deleting a parent tag permanently deletes ALL of its descendant tags. */
459
538
  acknowledgeTagSubtree?: boolean;
539
+ /**
540
+ * Confirm deleting a NON-EMPTY area. Deleting an area sends its contained
541
+ * to-dos AND projects (with their children) to the Trash and permanently
542
+ * destroys the area itself; by default the delete refuses when the area still
543
+ * holds any project or to-do, so nothing is trashed by surprise.
544
+ */
545
+ allowNonEmptyArea?: boolean;
460
546
  /**
461
547
  * Confirm a GUI-driven ("ui" vector) operation: it drives the LOCAL Things
462
548
  * app through the Accessibility API, may foreground Things and briefly take
@@ -31,23 +31,26 @@ export const OPERATION_KINDS = [
31
31
  "project.set-tags",
32
32
  "todo.backdate",
33
33
  "todo.add-logged",
34
- "heading.rename",
35
- "heading.archive",
36
- "heading.unarchive",
37
- "heading.create",
34
+ "project.add-heading",
35
+ "project.rename-heading",
36
+ "project.archive-heading",
37
+ "project.unarchive-heading",
38
+ "project.promote-heading",
39
+ "project.move-heading",
40
+ "project.move-heading-to-project",
41
+ "project.dissolve-heading",
38
42
  "todo.clear-dated-reminder",
39
43
  "todo.make-repeating",
40
44
  "todo.reschedule-repeat",
41
45
  "todo.pause-repeat",
42
46
  "todo.resume-repeat",
43
47
  "todo.convert-to-project",
44
- "heading.convert-to-project",
45
48
  "project.reschedule-repeat",
46
49
  "project.pause-repeat",
47
50
  "project.resume-repeat",
48
51
  "area.reorder",
49
52
  "project.make-repeating",
50
- "project.create-repeating",
53
+ "project.add-repeating",
51
54
  ];
52
55
  /**
53
56
  * Operations delivered EXCLUSIVELY through the Accessibility GUI ("ui")
@@ -62,7 +65,7 @@ export const UI_DRIVE_OPS = [
62
65
  "todo.pause-repeat",
63
66
  "todo.resume-repeat",
64
67
  "todo.convert-to-project",
65
- "heading.convert-to-project",
68
+ "project.promote-heading",
66
69
  "project.reschedule-repeat",
67
70
  "project.pause-repeat",
68
71
  "project.resume-repeat",
@@ -72,10 +75,56 @@ export const UI_DRIVE_OPS = [
72
75
  // area-less-anytime taxonomy needs a Someday coercion first, orchestrated by
73
76
  // runMakeRepeatingProject — but the drive itself is a ui-vector op.
74
77
  "project.make-repeating",
78
+ // HEADXPROJ: the heading row's `…` ellipsis → Move… menu → keyboard-driven
79
+ // project picker (HID-click the title-carrying "More. <title>" button, then
80
+ // Move…, type the destination, Return). GUI-only — no headless spelling on any
81
+ // vector (AS move → project 301, URL list-id no-op, Shortcuts ⛔).
82
+ "project.move-heading-to-project",
83
+ // DISS1: the same `…` ellipsis popover's Delete — dissolves the heading (the
84
+ // row is hard-deleted) while its children become DIRECT project children
85
+ // (heading→NULL, project→parent, index preserved, NOT trashed). No confirm
86
+ // sheet. GUI-only. Contrast the Shortcuts delete cascade (P12), which TRASHES
87
+ // the children.
88
+ "project.dissolve-heading",
75
89
  ];
76
90
  export function isUiDriveOp(op) {
77
91
  return UI_DRIVE_OPS.includes(op);
78
92
  }
93
+ /**
94
+ * The project-scoped heading verbs (spec §2). Every one addresses a heading
95
+ * inside a project; none is a plain `project.*` op even though it shares the
96
+ * `project.` namespace, so guards/resolvers that key off the namespace must
97
+ * special-case them.
98
+ */
99
+ export const HEADING_OPS = [
100
+ "project.add-heading",
101
+ "project.rename-heading",
102
+ "project.archive-heading",
103
+ "project.unarchive-heading",
104
+ "project.promote-heading",
105
+ "project.move-heading",
106
+ "project.move-heading-to-project",
107
+ "project.dissolve-heading",
108
+ ];
109
+ export function isHeadingOp(op) {
110
+ return HEADING_OPS.includes(op);
111
+ }
112
+ /**
113
+ * Heading verbs whose `uuid` param addresses a HEADING row (not a project) —
114
+ * the pipeline resolves their target as a heading, and H-UNKNOWN-DESTINATION
115
+ * requires the target BE a heading. add-heading (project + title) and
116
+ * move-heading (project + heading list) carry no single heading `uuid`.
117
+ */
118
+ export const HEADING_TARGET_OPS = [
119
+ "project.rename-heading",
120
+ "project.archive-heading",
121
+ "project.unarchive-heading",
122
+ "project.promote-heading",
123
+ "project.dissolve-heading",
124
+ ];
125
+ export function isHeadingTargetOp(op) {
126
+ return HEADING_TARGET_OPS.includes(op);
127
+ }
79
128
  export const WEEKDAYS = [
80
129
  "sunday",
81
130
  "monday",
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/write/operations.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU;IACV,aAAa;IACb,eAAe;IACf,aAAa;IACb,aAAa;IACb,WAAW;IACX,eAAe;IACf,wBAAwB;IACxB,0BAA0B;IAC1B,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;IAChB,UAAU;IACV,aAAa;IACb,SAAS;IACT,YAAY;IACZ,aAAa;IACb,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,cAAc;IACd,mBAAmB;IACnB,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,iBAAiB;IACjB,mBAAmB;IACnB,gBAAgB;IAChB,2BAA2B;IAC3B,qBAAqB;IACrB,wBAAwB;IACxB,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,4BAA4B;IAC5B,2BAA2B;IAC3B,sBAAsB;IACtB,uBAAuB;IACvB,cAAc;IACd,wBAAwB;IACxB,0BAA0B;CAClB,CAAC;AAIX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAA6B;IACpD,qBAAqB;IACrB,wBAAwB;IACxB,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,4BAA4B;IAC5B,2BAA2B;IAC3B,sBAAsB;IACtB,uBAAuB;IACvB,cAAc;IACd,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,oEAAoE;IACpE,wBAAwB;CAChB,CAAC;AAEX,MAAM,UAAU,WAAW,CAAC,EAAiB;IAC3C,OAAO,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC;AA+UD,MAAM,CAAC,MAAM,QAAQ,GAAuB;IAC1C,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,UAAU;CACF,CAAC"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/write/operations.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU;IACV,aAAa;IACb,eAAe;IACf,aAAa;IACb,aAAa;IACb,WAAW;IACX,eAAe;IACf,wBAAwB;IACxB,0BAA0B;IAC1B,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;IAChB,UAAU;IACV,aAAa;IACb,SAAS;IACT,YAAY;IACZ,aAAa;IACb,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,cAAc;IACd,mBAAmB;IACnB,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,eAAe;IACf,iBAAiB;IACjB,qBAAqB;IACrB,wBAAwB;IACxB,yBAAyB;IACzB,2BAA2B;IAC3B,yBAAyB;IACzB,sBAAsB;IACtB,iCAAiC;IACjC,0BAA0B;IAC1B,2BAA2B;IAC3B,qBAAqB;IACrB,wBAAwB;IACxB,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,2BAA2B;IAC3B,sBAAsB;IACtB,uBAAuB;IACvB,cAAc;IACd,wBAAwB;IACxB,uBAAuB;CACf,CAAC;AAIX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAA6B;IACpD,qBAAqB;IACrB,wBAAwB;IACxB,mBAAmB;IACnB,oBAAoB;IACpB,yBAAyB;IACzB,yBAAyB;IACzB,2BAA2B;IAC3B,sBAAsB;IACtB,uBAAuB;IACvB,cAAc;IACd,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,oEAAoE;IACpE,wBAAwB;IACxB,2EAA2E;IAC3E,4EAA4E;IAC5E,+EAA+E;IAC/E,kEAAkE;IAClE,iCAAiC;IACjC,6EAA6E;IAC7E,yEAAyE;IACzE,2EAA2E;IAC3E,8EAA8E;IAC9E,gBAAgB;IAChB,0BAA0B;CAClB,CAAC;AAEX,MAAM,UAAU,WAAW,CAAC,EAAiB;IAC3C,OAAO,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAA6B;IACnD,qBAAqB;IACrB,wBAAwB;IACxB,yBAAyB;IACzB,2BAA2B;IAC3B,yBAAyB;IACzB,sBAAsB;IACtB,iCAAiC;IACjC,0BAA0B;CAClB,CAAC;AAEX,MAAM,UAAU,WAAW,CAAC,EAAiB;IAC3C,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA6B;IAC1D,wBAAwB;IACxB,yBAAyB;IACzB,2BAA2B;IAC3B,yBAAyB;IACzB,0BAA0B;CAClB,CAAC;AAEX,MAAM,UAAU,iBAAiB,CAAC,EAAiB;IACjD,OAAO,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC;AA0cD,MAAM,CAAC,MAAM,QAAQ,GAAuB;IAC1C,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,UAAU;CACF,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Shared client-idempotency (`opId`) machinery — the ONE place the lookback
3
+ * window and match rule live, so the batch path and the single-op path agree by
4
+ * construction rather than by two copies staying in sync.
5
+ *
6
+ * An `opId` is a caller-supplied idempotency key recorded on the audit record of
7
+ * the mutation it accompanied. Before a mutation that carries one is dispatched,
8
+ * the recent change history is scanned for an `ok` record bearing the SAME id;
9
+ * on a hit the mutation is SKIPPED (reported already-applied) rather than
10
+ * re-run. The id namespace is the whole trail — a batch leg and a single op that
11
+ * share an id match each other — so resubmitting an ambiguously-failed write
12
+ * (as a batch line OR a single `--op-id` invocation) is safe against a double.
13
+ */
14
+ import type { AuditRecord } from "../audit/schema.ts";
15
+ /** The idempotency-key charset/length, identical for a batch line and a single-op flag. */
16
+ export declare const OP_ID_RE: RegExp;
17
+ /**
18
+ * opId idempotency lookback: at most the last {@link OPID_LOOKBACK_RECORDS}
19
+ * records, AND only the last {@link OPID_LOOKBACK_MS} (whichever is more
20
+ * restrictive). Phase 1 matches VERIFIED-OK records only.
21
+ */
22
+ export declare const OPID_LOOKBACK_RECORDS = 1000;
23
+ export declare const OPID_LOOKBACK_MS: number;
24
+ /**
25
+ * The recent-history lookback for an opId: the most recent `ok` record carrying
26
+ * that id, within the last {@link OPID_LOOKBACK_RECORDS} records AND the last
27
+ * {@link OPID_LOOKBACK_MS} (whichever is more restrictive). Undo/intent/blocked
28
+ * records are naturally excluded — only `result === "ok"` matches (phase 1; the
29
+ * verify-failed:timeout reconciliation variant is a queued phase-2 round).
30
+ */
31
+ export declare function findAppliedOpId(records: AuditRecord[], opId: string, now: Date): AuditRecord | undefined;
@@ -0,0 +1,30 @@
1
+ /** The idempotency-key charset/length, identical for a batch line and a single-op flag. */
2
+ export const OP_ID_RE = /^[A-Za-z0-9_-]{1,64}$/;
3
+ /**
4
+ * opId idempotency lookback: at most the last {@link OPID_LOOKBACK_RECORDS}
5
+ * records, AND only the last {@link OPID_LOOKBACK_MS} (whichever is more
6
+ * restrictive). Phase 1 matches VERIFIED-OK records only.
7
+ */
8
+ export const OPID_LOOKBACK_RECORDS = 1000;
9
+ export const OPID_LOOKBACK_MS = 7 * 24 * 60 * 60 * 1000;
10
+ /**
11
+ * The recent-history lookback for an opId: the most recent `ok` record carrying
12
+ * that id, within the last {@link OPID_LOOKBACK_RECORDS} records AND the last
13
+ * {@link OPID_LOOKBACK_MS} (whichever is more restrictive). Undo/intent/blocked
14
+ * records are naturally excluded — only `result === "ok"` matches (phase 1; the
15
+ * verify-failed:timeout reconciliation variant is a queued phase-2 round).
16
+ */
17
+ export function findAppliedOpId(records, opId, now) {
18
+ const cutoff = now.getTime() - OPID_LOOKBACK_MS;
19
+ const window = records.slice(-OPID_LOOKBACK_RECORDS);
20
+ let match;
21
+ for (const r of window) {
22
+ if (r.opId !== opId || r.result !== "ok")
23
+ continue;
24
+ if (new Date(r.ts).getTime() < cutoff)
25
+ continue;
26
+ match = r; // records are oldest-first, so the last match is the newest
27
+ }
28
+ return match;
29
+ }
30
+ //# sourceMappingURL=opid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opid.js","sourceRoot":"","sources":["../../src/write/opid.ts"],"names":[],"mappings":"AAeA,2FAA2F;AAC3F,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAsB,EACtB,IAAY,EACZ,GAAS;IAET,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,gBAAgB,CAAC;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACrD,IAAI,KAA8B,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI;YAAE,SAAS;QACnD,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,MAAM;YAAE,SAAS;QAChD,KAAK,GAAG,CAAC,CAAC,CAAC,4DAA4D;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}