@wspc/cli 0.0.12 → 0.0.14

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wspc/cli",
3
- "version": "0.0.12",
3
+ "version": "0.0.14",
4
4
  "description": "Official TypeScript SDK and CLI for wspc (https://wspc.ai)",
5
5
  "type": "module",
6
6
  "bin": {
package/spec/openapi.json CHANGED
@@ -2262,6 +2262,10 @@
2262
2262
  "project_id": {
2263
2263
  "type": "string",
2264
2264
  "description": "Project for the recurrence rule, its template todo, and all materialized instances. Must be an active project in the caller's organization."
2265
+ },
2266
+ "type_id": {
2267
+ "type": "string",
2268
+ "minLength": 1
2265
2269
  }
2266
2270
  },
2267
2271
  "required": [
@@ -2304,6 +2308,9 @@
2304
2308
  "type": "string",
2305
2309
  "description": "Project id shared by the recurrence rule, its template todo, and materialized instances."
2306
2310
  },
2311
+ "type_id": {
2312
+ "type": "string"
2313
+ },
2307
2314
  "rrule": {
2308
2315
  "type": "string"
2309
2316
  },
@@ -2364,7 +2371,7 @@
2364
2371
  "type": "null"
2365
2372
  }
2366
2373
  ],
2367
- "description": "Parent todo ID (`tod_<ULID>`) to attach this todo as a child under another todo. Omit or pass `null` to create a root-level todo. Nesting is limited to one level; attempting to set a child todo as a parent will trigger `PARENT_IS_CHILD`."
2374
+ "description": "Parent todo ID (`tod_<ULID>`) to attach this todo as a child under another todo. Omit or pass `null` to create a root-level todo. Nesting is limited to one level; attempting to set a child todo as a parent will trigger `PARENT_IS_CHILD`. To make a subtask appear on every occurrence of a recurring rule, set this to that rule's template todo id (the template id returned when the rule is created); the server re-materializes future occurrences so each carries the subtask."
2368
2375
  },
2369
2376
  "status": {
2370
2377
  "type": "string",
@@ -22993,8 +23000,18 @@
22993
23000
  "RecurrenceRules"
22994
23001
  ],
22995
23002
  "x-cli": {
22996
- "command": "_internal",
22997
- "hidden": true
23003
+ "command": "todo rule add",
23004
+ "positional": [
23005
+ "title"
23006
+ ],
23007
+ "aliases": {
23008
+ "project": "p",
23009
+ "type": "t"
23010
+ },
23011
+ "examples": [
23012
+ "wspc todo rule add \"Weekly review\" --rrule \"FREQ=WEEKLY;BYDAY=MO\" --dtstart 2026-05-18 --project prj_xxx",
23013
+ "wspc todo rule add \"Weekly review\" --rrule \"FREQ=WEEKLY;BYDAY=MO\" --dtstart 2026-05-18 --project prj_xxx --type typ_xxx"
23014
+ ]
22998
23015
  },
22999
23016
  "summary": "Create a recurring todo rule",
23000
23017
  "description": "### 🎯 Overview & Purpose\nCreate a recurrence rule that materializes upcoming todo instances on a repeating schedule.\n\n### 🔍 When to Use\n* Use this to set up recurring work like a weekly Standup, monthly reporting, or cyclical maintenance. The server automatically materializes upcoming todo instances on a 14-day rolling horizon.\n\n### 💡 Key Features & Constraints\n* **RFC-5545 Conformity**: The `rrule` parameter must be a valid RFC-5545 schedule string (e.g., `FREQ=WEEKLY;BYDAY=MO`) and must **not** include the `DTSTART` or `TZID` directive.\n* **Anchor Date**: `dtstart` specifies the local calendar starting date (`YYYY-MM-DD`) where the schedule rule is anchored.\n* **Nesting Constraints**: Recurrence rules can only be bound to root-level tasks. Child tasks (subtasks) cannot have recurrence rules. Setting a child task as a parent will trigger `PARENT_IS_CHILD`.\n* **Instance Independence**: Once materialized, each todo instance is fully independent with its own `status` and `due_at`.\n\n### ⚠️ Common Errors & Troubleshooting\n* **`RRULE_INVALID` (HTTP 400)**: Thrown if the `rrule` schedule string is broken or contains illegal `DTSTART` directives.\n* **`PARENT_IS_CHILD` (HTTP 400)**: Thrown if the specified `parent_id` points to a child task.\n* **`VALIDATION_ERROR` (HTTP 400)**: Thrown if date format is invalid or required fields are missing.",
@@ -23012,7 +23029,7 @@
23012
23029
  {
23013
23030
  "lang": "bash",
23014
23031
  "label": "wspc CLI",
23015
- "source": "wspc todo rrule add \"Draft weekly review\" --rrule \"FREQ=WEEKLY;BYDAY=MO\" --dtstart 2026-05-18 --project prj_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
23032
+ "source": "wspc todo rule add \"Draft weekly review\" --rrule \"FREQ=WEEKLY;BYDAY=MO\" --dtstart 2026-05-18 --project prj_01HW3K4N9V5G6Z8C2Q7B1Y0M3F --type typ_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
23016
23033
  }
23017
23034
  ],
23018
23035
  "requestBody": {
@@ -23416,11 +23433,13 @@
23416
23433
  "columns": [
23417
23434
  "id",
23418
23435
  "rrule",
23419
- "dtstart"
23436
+ "dtstart",
23437
+ "type_id"
23420
23438
  ],
23421
23439
  "format": {
23422
23440
  "id": "id-short",
23423
- "rrule": "truncate"
23441
+ "rrule": "truncate",
23442
+ "type_id": "id-short"
23424
23443
  },
23425
23444
  "emptyMessage": "no recurrence rules"
23426
23445
  }
@@ -23441,7 +23460,7 @@
23441
23460
  {
23442
23461
  "lang": "bash",
23443
23462
  "label": "wspc CLI",
23444
- "source": "wspc todo rrule ls"
23463
+ "source": "wspc todo rule ls"
23445
23464
  }
23446
23465
  ],
23447
23466
  "parameters": [
@@ -27704,8 +27723,14 @@
27704
27723
  "RecurrenceRules"
27705
27724
  ],
27706
27725
  "x-cli": {
27707
- "command": "_internal",
27708
- "hidden": true
27726
+ "command": "todo rule rm",
27727
+ "positional": [
27728
+ "id"
27729
+ ],
27730
+ "examples": [
27731
+ "wspc todo rule rm tdr_xxx",
27732
+ "wspc todo rule rm tdr_xxx --expected-version 3"
27733
+ ]
27709
27734
  },
27710
27735
  "summary": "Delete a recurring todo rule",
27711
27736
  "description": "### 🎯 Overview & Purpose\nSoft-delete/delete a recurrence rule to immediately halt future task materialization.\n\n### 🔍 When to Use\n* Use this to permanently end an ongoing cyclical schedule automation (e.g., when a weekly standby rotation is retired).\n\n### 💡 Key Features & Constraints\n* **Historic Preservation**: Deleting a rule stops the rolling schedule generations, but **does not** delete or alter todo tasks that have already been materialized. They remain on the user's list.\n* **Optimistic Locking**: Supports optional `expected_version` checks.\n\n### ⚠️ Common Errors & Troubleshooting\n* **`VERSION_CONFLICT` (HTTP 409)**: Thrown if `expected_version` mismatches the database.\n* **`NOT_FOUND` (HTTP 404)**: Thrown if the target rule ID does not exist.",
@@ -27723,7 +27748,7 @@
27723
27748
  {
27724
27749
  "lang": "bash",
27725
27750
  "label": "wspc CLI",
27726
- "source": "wspc todo rrule rm tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
27751
+ "source": "wspc todo rule rm tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
27727
27752
  }
27728
27753
  ],
27729
27754
  "parameters": [
@@ -28107,8 +28132,20 @@
28107
28132
  "RecurrenceRules"
28108
28133
  ],
28109
28134
  "x-cli": {
28110
- "command": "_internal",
28111
- "hidden": true
28135
+ "command": "todo rule show",
28136
+ "positional": [
28137
+ "id"
28138
+ ],
28139
+ "examples": [
28140
+ "wspc todo rule show tdr_xxx"
28141
+ ],
28142
+ "display": {
28143
+ "shape": "object",
28144
+ "format": {
28145
+ "id": "id-short",
28146
+ "type_id": "id-short"
28147
+ }
28148
+ }
28112
28149
  },
28113
28150
  "summary": "Get a recurring todo rule",
28114
28151
  "description": "### 🎯 Overview & Purpose\nFetch a single recurrence rule along with its template todo snapshot and the count of materialized instances.\n\n### 🔍 When to Use\n* Use this to inspect rule details before editing, preview the task template that future occurrences will copy, or check the current materialization metrics.\n\n### 💡 Key Features & Constraints\n* **Snapshot Integrity**: The returned template represents a schema template snapshot — modifying the rule (PATCH) only alters future occurrences; already-materialized tasks are never mutated retroactively.\n\n### ⚠️ Common Errors & Troubleshooting\n* **`NOT_FOUND` (HTTP 404)**: Thrown if the specified rule ID does not exist.",
@@ -28126,7 +28163,7 @@
28126
28163
  {
28127
28164
  "lang": "bash",
28128
28165
  "label": "wspc CLI",
28129
- "source": "wspc todo rrule show tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
28166
+ "source": "wspc todo rule show tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F"
28130
28167
  }
28131
28168
  ],
28132
28169
  "parameters": [
@@ -28530,7 +28567,7 @@
28530
28567
  {
28531
28568
  "lang": "bash",
28532
28569
  "label": "wspc CLI",
28533
- "source": "wspc todo rrule set tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F --rrule \"FREQ=WEEKLY;BYDAY=FR\""
28570
+ "source": "wspc todo rule set tdr_01HW3K4N9V5G6Z8C2Q7B1Y0M3F --rrule \"FREQ=WEEKLY;BYDAY=FR\""
28534
28571
  }
28535
28572
  ],
28536
28573
  "parameters": [