@catalyst-cloud/schema 0.1.30 → 0.1.32

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": "@catalyst-cloud/schema",
3
- "version": "0.1.30",
3
+ "version": "0.1.32",
4
4
  "type": "module",
5
5
  "description": "Typed Drizzle schema = single source of truth for the per-tenant Mirror DO SQLite store (CTC-13 / ADR-0002). Shared by the mirror Worker, the host-sync replica, and the browser OPFS replica.",
6
6
  "license": "MIT",
@@ -750,6 +750,20 @@ export const durableEventTypes = {
750
750
  wakes: false,
751
751
  entity: "ticket",
752
752
  },
753
+ "phase.merge.park": {
754
+ rationale:
755
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the merge phase was PARKED after N consecutive failures (CTC-1270) — a terminal-until-released outcome, distinct from `phase.merge.failed`, which a reader must be able to tell apart. Paired with `phase.merge.revive`.",
756
+ ingestVerb: "coordination.publish",
757
+ wakes: false,
758
+ entity: "ticket",
759
+ },
760
+ "phase.merge.revive": {
761
+ rationale:
762
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a repeated-failure park of the merge phase was revived (CTC-1270) — the paired fact to `phase.merge.park`.",
763
+ ingestVerb: "coordination.publish",
764
+ wakes: false,
765
+ entity: "ticket",
766
+ },
753
767
  "phase.monitor-deploy.abandoned": {
754
768
  rationale:
755
769
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the phase's worker abandoned it — a lifecycle terminal fact.",
@@ -1142,6 +1156,13 @@ export const durableEventTypes = {
1142
1156
  wakes: false,
1143
1157
  entity: "ticket",
1144
1158
  },
1159
+ "phase.remediate.park": {
1160
+ rationale:
1161
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the remediate phase was PARKED after N consecutive failures (CTC-1270) — a terminal-until-released outcome, distinct from `phase.remediate.failed`, which a reader must be able to tell apart. Paired with `phase.remediate.revive`.",
1162
+ ingestVerb: "coordination.publish",
1163
+ wakes: false,
1164
+ entity: "ticket",
1165
+ },
1145
1166
  "phase.remediate.preempted": {
1146
1167
  rationale:
1147
1168
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a higher-priority worker preempted this phase.",
@@ -1163,6 +1184,13 @@ export const durableEventTypes = {
1163
1184
  wakes: false,
1164
1185
  entity: "ticket",
1165
1186
  },
1187
+ "phase.remediate.revive": {
1188
+ rationale:
1189
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a repeated-failure park of the remediate phase was revived (CTC-1270) — the paired fact to `phase.remediate.park`.",
1190
+ ingestVerb: "coordination.publish",
1191
+ wakes: false,
1192
+ entity: "ticket",
1193
+ },
1166
1194
  "phase.rescue.dispatched": {
1167
1195
  rationale:
1168
1196
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): work became eligible and was dispatched to a worker.",
@@ -1219,6 +1247,13 @@ export const durableEventTypes = {
1219
1247
  wakes: false,
1220
1248
  entity: "ticket",
1221
1249
  },
1250
+ "phase.research.park": {
1251
+ rationale:
1252
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the research phase was PARKED after N consecutive failures (CTC-1270) — a terminal-until-released outcome, distinct from `phase.research.failed`, which a reader must be able to tell apart. Paired with `phase.research.revive`.",
1253
+ ingestVerb: "coordination.publish",
1254
+ wakes: false,
1255
+ entity: "ticket",
1256
+ },
1222
1257
  "phase.research.preempted": {
1223
1258
  rationale:
1224
1259
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a higher-priority worker preempted this phase.",
@@ -1247,6 +1282,13 @@ export const durableEventTypes = {
1247
1282
  wakes: false,
1248
1283
  entity: "ticket",
1249
1284
  },
1285
+ "phase.research.revive": {
1286
+ rationale:
1287
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a repeated-failure park of the research phase was revived (CTC-1270) — the paired fact to `phase.research.park`.",
1288
+ ingestVerb: "coordination.publish",
1289
+ wakes: false,
1290
+ entity: "ticket",
1291
+ },
1250
1292
  "phase.review.abandoned": {
1251
1293
  rationale:
1252
1294
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the phase's worker abandoned it — a lifecycle terminal fact.",
@@ -1450,6 +1492,20 @@ export const durableEventTypes = {
1450
1492
  wakes: false,
1451
1493
  entity: "ticket",
1452
1494
  },
1495
+ "phase.validate.park": {
1496
+ rationale:
1497
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the validate phase was PARKED after N consecutive failures (CTC-1270) — a terminal-until-released outcome, distinct from `phase.validate.failed`, which a reader must be able to tell apart. Paired with `phase.validate.revive`.",
1498
+ ingestVerb: "coordination.publish",
1499
+ wakes: false,
1500
+ entity: "ticket",
1501
+ },
1502
+ "phase.validate.revive": {
1503
+ rationale:
1504
+ "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): a repeated-failure park of the validate phase was revived (CTC-1270) — the paired fact to `phase.validate.park`.",
1505
+ ingestVerb: "coordination.publish",
1506
+ wakes: false,
1507
+ entity: "ticket",
1508
+ },
1453
1509
  "phase.verify.abandoned": {
1454
1510
  rationale:
1455
1511
  "ADR-0039 durable-fact example ('a phase started, completed, failed, or was preempted'): the phase's worker abandoned it — a lifecycle terminal fact.",
@@ -1635,6 +1691,13 @@ export const durableEventTypes = {
1635
1691
  wakes: false,
1636
1692
  entity: "runner",
1637
1693
  },
1694
+ "runner.work.pr-lease-starved": {
1695
+ rationale:
1696
+ "CTC-1327 — a ticket whose `validate` phase completed (the ADVANCE_TABLE transition that moves it into the review slot) still has NO lease row at all for its `pr` phase after a bounded window: the dispatcher has never even attempted it. ADR-0039 durable-fact example ('work became eligible'/'a runner reported an outcome'), and the ticket's own Gherkin acceptance signal — a positive observation (leases carries no row for this ticket+phase, not an inferred absence), deduped per ticket via a bare `pr-lease-starved.<ticket>` id since the underlying condition resolves in one direction only: once any pr lease is ever granted this fact can never legitimately recur for the same ticket. NOT wake-eligible: nothing needs to wake a dispatcher on its own inability to dispatch — this is a diagnostic trail for a human/operator to notice, not a trigger.",
1697
+ ingestVerb: "coordination.publish",
1698
+ wakes: false,
1699
+ entity: "ticket",
1700
+ },
1638
1701
  "runner.work.reclaimable": {
1639
1702
  rationale:
1640
1703
  "CTC-1118 D5 — the MirrorDO alarm's existence-push found eligible work whose lease row still records a holder with a PAST deadline: a tenure that died without releasing, now being re-driven. ADR-0039 durable-fact example ('work became eligible'/'a runner reported an outcome') and the ticket's own Gherkin acceptance signal — a positive observation (a deadline verifiably passed while a holder was recorded), deduped per lapsed tenure via (ticket, phase, generation) so a unit that stays eligible across several alarm passes does not re-emit. NOT wake-eligible: the existence-push that discovers this already proceeds with its own /ensure call in the same pass, so nothing needs to wake on this event alone.",