@plumbus/core 0.8.0-beta.2 → 0.8.0-beta.4

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 (76) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/approvals/index.d.ts +1 -1
  4. package/dist/approvals/index.d.ts.map +1 -1
  5. package/dist/approvals/index.js.map +1 -1
  6. package/dist/approvals/memory-store.d.ts.map +1 -1
  7. package/dist/approvals/memory-store.js +22 -0
  8. package/dist/approvals/memory-store.js.map +1 -1
  9. package/dist/approvals/schema.d.ts +34 -0
  10. package/dist/approvals/schema.d.ts.map +1 -1
  11. package/dist/approvals/schema.js +2 -0
  12. package/dist/approvals/schema.js.map +1 -1
  13. package/dist/approvals/service.d.ts.map +1 -1
  14. package/dist/approvals/service.js +36 -0
  15. package/dist/approvals/service.js.map +1 -1
  16. package/dist/approvals/sql-store.d.ts.map +1 -1
  17. package/dist/approvals/sql-store.js +42 -1
  18. package/dist/approvals/sql-store.js.map +1 -1
  19. package/dist/approvals/types.d.ts +11 -0
  20. package/dist/approvals/types.d.ts.map +1 -1
  21. package/dist/approvals/types.js +1 -0
  22. package/dist/approvals/types.js.map +1 -1
  23. package/dist/audit/service.d.ts.map +1 -1
  24. package/dist/audit/service.js +16 -1
  25. package/dist/audit/service.js.map +1 -1
  26. package/dist/cli/commands/dev.d.ts.map +1 -1
  27. package/dist/cli/commands/dev.js +1 -0
  28. package/dist/cli/commands/dev.js.map +1 -1
  29. package/dist/cli/commands/start.d.ts.map +1 -1
  30. package/dist/cli/commands/start.js +1 -0
  31. package/dist/cli/commands/start.js.map +1 -1
  32. package/dist/durable/index.d.ts +2 -2
  33. package/dist/durable/index.d.ts.map +1 -1
  34. package/dist/durable/index.js +2 -2
  35. package/dist/durable/index.js.map +1 -1
  36. package/dist/durable/postgres-persist.d.ts +10 -2
  37. package/dist/durable/postgres-persist.d.ts.map +1 -1
  38. package/dist/durable/postgres-persist.js +89 -6
  39. package/dist/durable/postgres-persist.js.map +1 -1
  40. package/dist/durable/spine-claim.d.ts +11 -1
  41. package/dist/durable/spine-claim.d.ts.map +1 -1
  42. package/dist/durable/spine-claim.js +18 -1
  43. package/dist/durable/spine-claim.js.map +1 -1
  44. package/dist/events/dispatcher.d.ts +11 -0
  45. package/dist/events/dispatcher.d.ts.map +1 -1
  46. package/dist/events/dispatcher.js +7 -8
  47. package/dist/events/dispatcher.js.map +1 -1
  48. package/dist/execution/capability-executor.d.ts.map +1 -1
  49. package/dist/execution/capability-executor.js +24 -0
  50. package/dist/execution/capability-executor.js.map +1 -1
  51. package/dist/flows/engine.d.ts +1 -1
  52. package/dist/flows/engine.d.ts.map +1 -1
  53. package/dist/flows/engine.js +70 -10
  54. package/dist/flows/engine.js.map +1 -1
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js.map +1 -1
  58. package/dist/runtime/bootstrap.d.ts +1 -1
  59. package/dist/runtime/bootstrap.d.ts.map +1 -1
  60. package/dist/runtime/load-extensions.d.ts.map +1 -1
  61. package/dist/runtime/load-extensions.js +8 -0
  62. package/dist/runtime/load-extensions.js.map +1 -1
  63. package/dist/runtime/start-worker-pool.d.ts.map +1 -1
  64. package/dist/runtime/start-worker-pool.js +1 -0
  65. package/dist/runtime/start-worker-pool.js.map +1 -1
  66. package/dist/server/bootstrap.d.ts +2 -0
  67. package/dist/server/bootstrap.d.ts.map +1 -1
  68. package/dist/server/bootstrap.js +21 -1
  69. package/dist/server/bootstrap.js.map +1 -1
  70. package/dist/worker/bootstrap.d.ts +2 -0
  71. package/dist/worker/bootstrap.d.ts.map +1 -1
  72. package/dist/worker/bootstrap.js +14 -3
  73. package/dist/worker/bootstrap.js.map +1 -1
  74. package/migrations/durable-tenant/0002_approval_cancellation.sql +3 -0
  75. package/migrations/durable-tenant/meta/_journal.json +7 -0
  76. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,8 @@ export type { DurableTestHarness } from './harness.js';
10
10
  export { FRAMEWORK_DURABLE_TENANT_MIGRATIONS, FRAMEWORK_SPINE_MIGRATIONS, } from './migrations-path.js';
11
11
  export { resolveTestPostgresAdmin } from './pg-env.js';
12
12
  export type { TestPostgresAdmin } from './pg-env.js';
13
- export { bumpTenantEpochOnDb, casAdvanceExecution, insertDispatchOutbox, listSideEffects, listUnpublishedOutbox, loadExecutionState, markExecutionStateTerminal, markOutboxAcked, markOutboxAckedBySpineRow, markOutboxPublished, persistAcceptanceOnDb, publishOutboxToSpine, reopenExecutionState, } from './postgres-persist.js';
14
- export { ackSpineDispatch, claimSpineDispatch, deadLetterSpineDispatch, findSpineDispatchTenantRoute, spineRowFromSql, upsertSpineDispatch, } from './spine-claim.js';
13
+ export { bumpTenantEpochOnDb, casAdvanceExecution, insertDispatchOutbox, listSideEffects, listUnpublishedOutbox, loadExecutionState, markExecutionStateTerminal, markOutboxAcked, markOutboxAckedBySpineRow, markOutboxPublished, persistAcceptanceOnDb, persistRetryScheduleOnDb, publishOutboxToSpine, reopenExecutionState, } from './postgres-persist.js';
14
+ export { ackSpineDispatch, claimSpineDispatch, deadLetterSpineDispatch, extendSpineDispatchLease, findSpineDispatchTenantRoute, spineRowFromSql, upsertSpineDispatch, } from './spine-claim.js';
15
15
  export { createSpineDispatchTable, createTenantDurableTables, SPINE_DISPATCH_TABLE_NAME, TENANT_DURABLE_TABLE_NAMES, } from './schema.js';
16
16
  export { DEFAULT_PRIORITY_CLASS_ID, DEFAULT_WORK_CLASS_ID, DurableExecutionStatus, DurableStepStatus, EpochMismatchError, OPAQUE_DISPATCH_ALLOWED_KEYS, OPAQUE_DISPATCH_FORBIDDEN_KEYS, OPAQUE_DISPATCH_REQUIRED_KEYS, RevisionConflictError, SpineDeliveryState, } from './types.js';
17
17
  export type { CasResult, DispatchOutboxRow, OpaqueDispatchRecord, StepExecutionRecord, TenantExecutionState, TerminalStateRecord, WaitStateRecord, } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/durable/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EACL,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,eAAe,EACf,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,4BAA4B,EAC5B,eAAe,EACf,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/durable/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EACL,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,eAAe,EACf,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EACf,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,GAChB,MAAM,YAAY,CAAC"}
@@ -9,8 +9,8 @@ export { eventDeliveryDdl, eventOutboxDdl, flowExecutionsDdl, DURABLE_TEST_DB_PA
9
9
  export { createDurableTestDatabase, extraHarnessConnection, createDurableTestHarness, } from './harness.js';
10
10
  export { FRAMEWORK_DURABLE_TENANT_MIGRATIONS, FRAMEWORK_SPINE_MIGRATIONS, } from './migrations-path.js';
11
11
  export { resolveTestPostgresAdmin } from './pg-env.js';
12
- export { bumpTenantEpochOnDb, casAdvanceExecution, insertDispatchOutbox, listSideEffects, listUnpublishedOutbox, loadExecutionState, markExecutionStateTerminal, markOutboxAcked, markOutboxAckedBySpineRow, markOutboxPublished, persistAcceptanceOnDb, publishOutboxToSpine, reopenExecutionState, } from './postgres-persist.js';
13
- export { ackSpineDispatch, claimSpineDispatch, deadLetterSpineDispatch, findSpineDispatchTenantRoute, spineRowFromSql, upsertSpineDispatch, } from './spine-claim.js';
12
+ export { bumpTenantEpochOnDb, casAdvanceExecution, insertDispatchOutbox, listSideEffects, listUnpublishedOutbox, loadExecutionState, markExecutionStateTerminal, markOutboxAcked, markOutboxAckedBySpineRow, markOutboxPublished, persistAcceptanceOnDb, persistRetryScheduleOnDb, publishOutboxToSpine, reopenExecutionState, } from './postgres-persist.js';
13
+ export { ackSpineDispatch, claimSpineDispatch, deadLetterSpineDispatch, extendSpineDispatchLease, findSpineDispatchTenantRoute, spineRowFromSql, upsertSpineDispatch, } from './spine-claim.js';
14
14
  export { createSpineDispatchTable, createTenantDurableTables, SPINE_DISPATCH_TABLE_NAME, TENANT_DURABLE_TABLE_NAMES, } from './schema.js';
15
15
  export { DEFAULT_PRIORITY_CLASS_ID, DEFAULT_WORK_CLASS_ID, DurableExecutionStatus, DurableStepStatus, EpochMismatchError, OPAQUE_DISPATCH_ALLOWED_KEYS, OPAQUE_DISPATCH_FORBIDDEN_KEYS, OPAQUE_DISPATCH_REQUIRED_KEYS, RevisionConflictError, SpineDeliveryState, } from './types.js';
16
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/durable/index.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,8EAA8E;AAE9E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,eAAe,EACf,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,4BAA4B,EAC5B,eAAe,EACf,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/durable/index.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,8EAA8E;AAE9E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,eAAe,EACf,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EACf,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { PostgresJsDatabase } from 'drizzle-orm/postgres-js';
2
- import { DurableExecutionStatus, type DispatchOutboxRow, type OpaqueDispatchRecord, type TenantExecutionState } from './types.js';
2
+ import type { PersistStepResult, RetryScheduleInput } from './persist-before-ack.js';
3
+ import { type DispatchOutboxRow, DurableExecutionStatus, type OpaqueDispatchRecord, SpineDeliveryState, type TenantExecutionState } from './types.js';
3
4
  export declare function loadExecutionState(db: PostgresJsDatabase, executionId: string, schemaName?: string): Promise<TenantExecutionState | undefined>;
4
5
  export declare function persistAcceptanceOnDb(db: PostgresJsDatabase, input: {
5
6
  executionId: string;
@@ -23,6 +24,11 @@ export declare function casAdvanceExecution(db: PostgresJsDatabase, input: {
23
24
  sideEffectKey?: string;
24
25
  sideEffectLabel?: string;
25
26
  }, schemaName?: string): Promise<'ok' | 'stale' | 'missing'>;
27
+ /**
28
+ * Persist a retry delay on the tenant plane before the current spine hint is acknowledged.
29
+ * The execution-state CAS, retry wait, and future-dated outbox row are one transaction.
30
+ */
31
+ export declare function persistRetryScheduleOnDb(db: PostgresJsDatabase, input: RetryScheduleInput, nowIso: string, schemaName?: string): Promise<PersistStepResult>;
26
32
  /**
27
33
  * Closes a tenant execution's durable state without a claimed hint — an operator cancel, or
28
34
  * any terminal transition taken outside the run loop. The spine hint, if one is still ready,
@@ -61,9 +67,11 @@ export declare function markOutboxAckedBySpineRow(db: PostgresJsDatabase, spineR
61
67
  * worker — the one that will run the step in the same drain without a claim in between —
62
68
  * so no other worker claims it meanwhile; the lease lapses like any other if the worker dies.
63
69
  */
64
- export declare function publishOutboxToSpine(tenantDb: PostgresJsDatabase, spineDb: PostgresJsDatabase, outbox: DispatchOutboxRow, dispatchId: string, nowIso: string, schemaName?: string, lease?: {
70
+ export declare function publishOutboxToSpine(tenantDb: PostgresJsDatabase, spineDb: PostgresJsDatabase, outbox: DispatchOutboxRow, dispatchId: string, nowIso: string, schemaName?: string, options?: {
65
71
  workerId: string;
66
72
  leaseExpiresAt: string;
73
+ } | {
74
+ deliveryState: typeof SpineDeliveryState.RetryScheduled;
67
75
  }): Promise<OpaqueDispatchRecord>;
68
76
  export declare function bumpTenantEpochOnDb(db: PostgresJsDatabase, schemaName?: string): Promise<number>;
69
77
  export declare function listSideEffects(db: PostgresJsDatabase, schemaName?: string): Promise<string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-persist.d.ts","sourceRoot":"","sources":["../../src/durable/postgres-persist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres-persist.d.ts","sourceRoot":"","sources":["../../src/durable/postgres-persist.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  // Tenant-local Protocol A writes against real Postgres. Same CAS + outbox
2
2
  // pairing as persist-before-ack.ts; used by the flow engine when spineDispatch
3
3
  // is configured.
4
- import { sql } from 'drizzle-orm';
5
4
  import { randomUUID } from 'node:crypto';
6
- import { PlumbusError } from '../errors/index.js';
5
+ import { sql } from 'drizzle-orm';
7
6
  import { FRAMEWORK_SCHEMA } from '../data/schema-generator.js';
7
+ import { PlumbusError } from '../errors/index.js';
8
8
  import { qualifyTable } from './apply-ddl.js';
9
9
  import { createOpaqueDispatchRecord } from './opaque-dispatch.js';
10
10
  import { upsertSpineDispatch } from './spine-claim.js';
@@ -146,6 +146,83 @@ export async function casAdvanceExecution(db, input, schemaName = FRAMEWORK_SCHE
146
146
  }
147
147
  return 'ok';
148
148
  }
149
+ /**
150
+ * Persist a retry delay on the tenant plane before the current spine hint is acknowledged.
151
+ * The execution-state CAS, retry wait, and future-dated outbox row are one transaction.
152
+ */
153
+ export async function persistRetryScheduleOnDb(db, input, nowIso, schemaName = FRAMEWORK_SCHEMA) {
154
+ const executionTable = qualifyTable(schemaName, 'execution_state');
155
+ const waitTable = qualifyTable(schemaName, 'wait_state');
156
+ const outboxTable = qualifyTable(schemaName, 'dispatch_outbox');
157
+ return db.transaction(async (tx) => {
158
+ const scoped = tx;
159
+ const current = await loadExecutionState(scoped, input.executionId, schemaName);
160
+ if (!current)
161
+ return { kind: 'missing' };
162
+ if (current.tenantEpoch !== input.tenantEpoch)
163
+ return { kind: 'epoch-mismatch' };
164
+ if (current.revision !== input.expectedRevision || current.terminal) {
165
+ return { kind: 'stale', execution: current };
166
+ }
167
+ const updated = asRows(await scoped.execute(sql `
168
+ UPDATE ${sql.raw(executionTable)}
169
+ SET revision = ${input.expectedRevision + 1},
170
+ status = ${DurableExecutionStatus.RetryScheduled},
171
+ current_step_id = ${input.stepId},
172
+ attempt = attempt + 1,
173
+ wake_at = ${input.notBefore}::timestamptz,
174
+ updated_at = ${nowIso}::timestamptz,
175
+ terminal = false
176
+ WHERE execution_id = ${input.executionId}
177
+ AND revision = ${input.expectedRevision}
178
+ AND tenant_epoch = ${input.tenantEpoch}
179
+ AND terminal = false
180
+ RETURNING *
181
+ `));
182
+ const nextRow = updated[0];
183
+ if (!nextRow) {
184
+ const latest = await loadExecutionState(scoped, input.executionId, schemaName);
185
+ return latest ? { kind: 'stale', execution: latest } : { kind: 'missing' };
186
+ }
187
+ const next = mapExecution(nextRow);
188
+ const waitStateId = `wait:${input.executionId}:${next.revision}`;
189
+ await scoped.execute(sql `
190
+ INSERT INTO ${sql.raw(waitTable)} (
191
+ wait_state_id, execution_id, step_id, kind, state,
192
+ created_at, updated_at, not_before
193
+ ) VALUES (
194
+ ${waitStateId}, ${input.executionId}, ${input.stepId}, 'retry', 'waiting',
195
+ ${nowIso}::timestamptz, ${nowIso}::timestamptz, ${input.notBefore}::timestamptz
196
+ )
197
+ ON CONFLICT (wait_state_id) DO NOTHING
198
+ `);
199
+ const outboxId = `outbox:${input.executionId}:${next.revision}:${randomUUID()}`;
200
+ const inserted = asRows(await scoped.execute(sql `
201
+ INSERT INTO ${sql.raw(outboxTable)} (
202
+ outbox_id, execution_id, state_ref_id, expected_revision, tenant_epoch,
203
+ tenant_ref, step_id, definition_id, definition_version, correlation_id,
204
+ work_class_id, priority_class_id, not_before, created_at, superseded
205
+ ) VALUES (
206
+ ${outboxId}, ${next.executionId}, ${next.stateRefId}, ${next.revision},
207
+ ${next.tenantEpoch}, ${next.tenantRef}, ${input.stepId}, ${next.definitionId},
208
+ ${next.definitionVersion}, ${next.correlationId}, ${DEFAULT_WORK_CLASS_ID},
209
+ ${DEFAULT_PRIORITY_CLASS_ID}, ${input.notBefore}::timestamptz,
210
+ ${nowIso}::timestamptz, false
211
+ )
212
+ RETURNING *
213
+ `));
214
+ const outboxRow = inserted[0];
215
+ if (!outboxRow) {
216
+ throw new PlumbusError('internal', 'Retry schedule wrote no dispatch outbox row');
217
+ }
218
+ return {
219
+ kind: 'committed',
220
+ execution: next,
221
+ outbox: mapOutbox(outboxRow),
222
+ sideEffectApplied: false,
223
+ };
224
+ });
225
+ }
149
226
  /**
150
227
  * Closes a tenant execution's durable state without a claimed hint — an operator cancel, or
151
228
  * any terminal transition taken outside the run loop. The spine hint, if one is still ready,
@@ -250,7 +327,13 @@ export async function markOutboxAckedBySpineRow(db, spineRowId, nowIso, schemaNa
250
327
  * worker — the one that will run the step in the same drain without a claim in between —
251
328
  * so no other worker claims it meanwhile; the lease lapses like any other if the worker dies.
252
329
  */
253
- export async function publishOutboxToSpine(tenantDb, spineDb, outbox, dispatchId, nowIso, schemaName = FRAMEWORK_SCHEMA, lease) {
330
+ export async function publishOutboxToSpine(tenantDb, spineDb, outbox, dispatchId, nowIso, schemaName = FRAMEWORK_SCHEMA, options) {
331
+ const leased = options !== undefined && 'workerId' in options;
332
+ const deliveryState = options !== undefined && 'deliveryState' in options
333
+ ? options.deliveryState
334
+ : leased
335
+ ? SpineDeliveryState.Leased
336
+ : SpineDeliveryState.Ready;
254
337
  const record = createOpaqueDispatchRecord({
255
338
  dispatchId,
256
339
  tenantRouteId: outbox.tenantRef,
@@ -263,10 +346,10 @@ export async function publishOutboxToSpine(tenantDb, spineDb, outbox, dispatchId
263
346
  tenantEpoch: outbox.tenantEpoch,
264
347
  workClassId: outbox.workClassId,
265
348
  priorityClassId: outbox.priorityClassId,
266
- deliveryState: lease ? SpineDeliveryState.Leased : SpineDeliveryState.Ready,
267
- attempt: lease ? 1 : 0,
349
+ deliveryState,
350
+ attempt: leased ? 1 : 0,
268
351
  notBefore: outbox.notBefore,
269
- ...(lease ? { leaseRefId: lease.workerId, leaseExpiresAt: lease.leaseExpiresAt } : {}),
352
+ ...(leased ? { leaseRefId: options.workerId, leaseExpiresAt: options.leaseExpiresAt } : {}),
270
353
  correlationId: outbox.correlationId,
271
354
  createdAt: nowIso,
272
355
  updatedAt: nowIso,
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-persist.js","sourceRoot":"","sources":["../../src/durable/postgres-persist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres-persist.js","sourceRoot":"","sources":["../../src/durable/postgres-persist.ts"],"names":[],"mappings":"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"}
@@ -6,18 +6,28 @@ export interface SpineClaimOptions {
6
6
  leaseDurationMs: number;
7
7
  limit?: number;
8
8
  }
9
+ export interface SpineLeaseOptions {
10
+ dispatchId: string;
11
+ workerId: string;
12
+ leaseDurationMs: number;
13
+ }
9
14
  /**
10
15
  * Claim ready (or lease-expired) spine rows. Concurrent callers each get
11
16
  * different rows because of FOR UPDATE SKIP LOCKED.
12
17
  */
13
18
  export declare function claimSpineDispatch(db: PostgresJsDatabase, options: SpineClaimOptions): Promise<OpaqueDispatchRecord[]>;
19
+ /**
20
+ * Extend one leased spine hint only while the same worker still owns it.
21
+ * A zero-row result is lease loss, not a transient database failure.
22
+ */
23
+ export declare function extendSpineDispatchLease(db: PostgresJsDatabase, options: SpineLeaseOptions): Promise<boolean>;
14
24
  /**
15
25
  * The tenant route the spine last dispatched an execution for, whatever the hint's state.
16
26
  * A request-side engine that never claimed the execution uses this to find the plane its row
17
27
  * lives on before it reads, cancels or resumes it. Undefined when the spine holds no hint.
18
28
  */
19
29
  export declare function findSpineDispatchTenantRoute(db: PostgresJsDatabase, executionId: string): Promise<string | undefined>;
20
- export declare function ackSpineDispatch(db: PostgresJsDatabase, dispatchId: string): Promise<boolean>;
30
+ export declare function ackSpineDispatch(db: PostgresJsDatabase, dispatchId: string, workerId?: string): Promise<boolean>;
21
31
  /**
22
32
  * Parks a hint no claim can act on — its tenant route cannot be resolved claim after claim —
23
33
  * so it stops being re-leased on every poll. Left for an operator; never claimed again.
@@ -1 +1 @@
1
- {"version":3,"file":"spine-claim.d.ts","sourceRoot":"","sources":["../../src/durable/spine-claim.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAqB3E,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,oBAAoB,CA0BlF;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,kBAAkB,EACtB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0BjC;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAChD,EAAE,EAAE,kBAAkB,EACtB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU7B;AAED,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,kBAAkB,EACtB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAgC/B"}
1
+ {"version":3,"file":"spine-claim.d.ts","sourceRoot":"","sources":["../../src/durable/spine-claim.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,KAAK,oBAAoB,EAAsB,MAAM,YAAY,CAAC;AAqB3E,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,oBAAoB,CA0BlF;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,kBAAkB,EACtB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0BjC;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,kBAAkB,EACtB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAChD,EAAE,EAAE,kBAAkB,EACtB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU7B;AAED,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAYlB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,kBAAkB,EACtB,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,kBAAkB,EACtB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAgC/B"}
@@ -82,6 +82,22 @@ export async function claimSpineDispatch(db, options) {
82
82
  `);
83
83
  return asRows(result).map(spineRowFromSql);
84
84
  }
85
+ /**
86
+ * Extend one leased spine hint only while the same worker still owns it.
87
+ * A zero-row result is lease loss, not a transient database failure.
88
+ */
89
+ export async function extendSpineDispatchLease(db, options) {
90
+ const leaseDurationInterval = `${options.leaseDurationMs} milliseconds`;
91
+ const result = await db.execute(sql `
92
+ UPDATE opaque_dispatch
93
+ SET lease_expires_at = now() + ${leaseDurationInterval}::interval,
94
+ updated_at = now()
95
+ WHERE dispatch_id = ${options.dispatchId}
96
+ AND delivery_state = ${SpineDeliveryState.Leased}
97
+ AND lease_ref_id = ${options.workerId}
98
+ `);
99
+ return getRowsAffected(result) > 0;
100
+ }
85
101
  /**
86
102
  * The tenant route the spine last dispatched an execution for, whatever the hint's state.
87
103
  * A request-side engine that never claimed the execution uses this to find the plane its row
@@ -98,7 +114,7 @@ export async function findSpineDispatchTenantRoute(db, executionId) {
98
114
  const row = asRows(result)[0];
99
115
  return row?.tenant_route_id == null ? undefined : String(row.tenant_route_id);
100
116
  }
101
- export async function ackSpineDispatch(db, dispatchId) {
117
+ export async function ackSpineDispatch(db, dispatchId, workerId) {
102
118
  const result = await db.execute(sql `
103
119
  UPDATE opaque_dispatch
104
120
  SET delivery_state = ${SpineDeliveryState.Acknowledged},
@@ -107,6 +123,7 @@ export async function ackSpineDispatch(db, dispatchId) {
107
123
  updated_at = now()
108
124
  WHERE dispatch_id = ${dispatchId}
109
125
  AND delivery_state <> ${SpineDeliveryState.Acknowledged}
126
+ ${workerId === undefined ? sql `` : sql `AND lease_ref_id = ${workerId}`}
110
127
  `);
111
128
  return getRowsAffected(result) > 0;
112
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spine-claim.js","sourceRoot":"","sources":["../../src/durable/spine-claim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spine-claim.js","sourceRoot":"","sources":["../../src/durable/spine-claim.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,kFAAkF;AAElF,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAA6B,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE3E,SAAS,eAAe,CAAC,MAAe;IACtC,MAAM,CAAC,GAAG,MAAsF,CAAC;IACjG,IAAI,OAAO,CAAC,EAAE,QAAQ,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;IACvD,IAAI,OAAO,CAAC,EAAE,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC;IACjD,IAAI,OAAO,CAAC,EAAE,MAAM,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,MAAM,CAAC,MAAe;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAmC,CAAC;IACtE,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,KAAK,CAAC,KAAc;IAC3B,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,KAAK,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAA4B;IAC1D,OAAO,0BAA0B,CAAC;QAChC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACnC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;QAC1C,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;QACrC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;QACvC,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACjD,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAC3B,yBAAyB,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;QACpE,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC/C,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;QACrC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;QACtC,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC9C,aAAa,EAAE,GAAG,CAAC,cAAuD;QAC1E,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAC5B,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;QAChC,UAAU,EAAE,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;QAC3E,cAAc,EAAE,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACtF,4BAA4B,EAC1B,GAAG,CAAC,gCAAgC,IAAI,IAAI;YAC1C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC;QAClD,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;QACzC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;QAChC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;KACjC,CAAC,CAAC;AACL,CAAC;AAcD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAsB,EACtB,OAA0B;IAE1B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IAClC,MAAM,qBAAqB,GAAG,GAAG,OAAO,CAAC,eAAe,eAAe,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;2BAEV,kBAAkB,CAAC,MAAM;yBAC3B,OAAO,CAAC,QAAQ;qCACJ,qBAAqB;;;;;;;;6BAQ7B,kBAAkB,CAAC,KAAK;gCACrB,kBAAkB,CAAC,cAAc;iCAChC,kBAAkB,CAAC,MAAM;;;;cAI5C,KAAK;;;GAGhB,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,EAAsB,EACtB,OAA0B;IAE1B,MAAM,qBAAqB,GAAG,GAAG,OAAO,CAAC,eAAe,eAAe,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;qCAEA,qBAAqB;;0BAEhC,OAAO,CAAC,UAAU;6BACf,kBAAkB,CAAC,MAAM;2BAC3B,OAAO,CAAC,QAAQ;GACxC,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,EAAsB,EACtB,WAAmB;IAEnB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;2BAGV,WAAW;;;GAGnC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,OAAO,GAAG,EAAE,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAsB,EACtB,UAAkB,EAClB,QAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;2BAEV,kBAAkB,CAAC,YAAY;;;;0BAIhC,UAAU;8BACN,kBAAkB,CAAC,YAAY;QACrD,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAA,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA,sBAAsB,QAAQ,EAAE;GACzE,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,EAAsB,EACtB,UAAkB,EAClB,iBAAyB;IAEzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;2BAEV,kBAAkB,CAAC,YAAY;;;6CAGb,iBAAiB;;0BAEpC,UAAU;8BACN,kBAAkB,CAAC,YAAY;8BAC/B,kBAAkB,CAAC,YAAY;GAC1D,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,EAAsB,EACtB,MAA4B;IAE5B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;;;;;;QAQ7B,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,eAAe,KAAK,MAAM,CAAC,aAAa;QACrE,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,iBAAiB;QACvE,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,yBAAyB;QAClD,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW;QACrE,MAAM,CAAC,eAAe,KAAK,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO;QAClE,MAAM,CAAC,SAAS,kBAAkB,MAAM,CAAC,UAAU,IAAI,IAAI;QAC3D,MAAM,CAAC,cAAc,IAAI,IAAI,KAAK,MAAM,CAAC,4BAA4B,IAAI,IAAI;QAC7E,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,SAAS,kBAAkB,MAAM,CAAC,SAAS;;;;;;;;;;;;GAYhF,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC1D,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC"}
@@ -32,6 +32,17 @@ export interface DispatcherConfig {
32
32
  * the dispatcher only drains `event_outbox` (historical behavior).
33
33
  */
34
34
  spineDb?: PostgresJsDatabase;
35
+ /**
36
+ * The schema every plane's durable `dispatch_outbox` lives in — the same one the flow
37
+ * engine writes it under (`spineDispatch.coreSchema`, else `PLUMBUS_FRAMEWORK_SCHEMA`,
38
+ * else the framework default). Defaults the same way, so a host that configures nothing
39
+ * reads where it wrote. This is deliberately *not* the plane handle's `coreSchema`: that
40
+ * names the tenant's own entity tables, which a host may keep in `public` while the
41
+ * durable tables sit in the framework schema — reading `dispatch_outbox` from the
42
+ * handle's schema answered `relation "dispatch_outbox" does not exist` for every tenant
43
+ * on every poll (Quinovium #202).
44
+ */
45
+ frameworkSchema?: string;
35
46
  }
36
47
  /**
37
48
  * Creates a dispatcher that polls the outbox table for pending events,
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/events/dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,kBAAkB,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAQD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB;IAkO3D,mDAAmD;gBAhC9B,OAAO,CAAC,MAAM,CAAC;IAmCpC,wCAAwC;aAC/B,IAAI;IASb,uCAAuC;YAC/B,IAAI;wBAQK,OAAO;EAI3B"}
1
+ {"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/events/dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,kBAAkB,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAOD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB;IAiO3D,mDAAmD;gBAhC9B,OAAO,CAAC,MAAM,CAAC;IAmCpC,wCAAwC;aAC/B,IAAI;IASb,uCAAuC;YAC/B,IAAI;wBAQK,OAAO;EAI3B"}
@@ -1,4 +1,5 @@
1
1
  import { and, eq } from 'drizzle-orm';
2
+ import { FRAMEWORK_SCHEMA, resolveFrameworkSchema } from '../data/schema-generator.js';
2
3
  import { deadLetterTable, outboxTable } from './outbox.js';
3
4
  /**
4
5
  * Creates a dispatcher that polls the outbox table for pending events,
@@ -18,19 +19,17 @@ export function createOutboxDispatcher(config) {
18
19
  function computeBackoff(attempt) {
19
20
  return Math.min(backoffBaseMs * 2 ** attempt, backoffMaxMs);
20
21
  }
22
+ // Where `dispatch_outbox` is, on every plane: the engine's own resolution, mirrored.
23
+ const durableSchema = config.frameworkSchema ?? resolveFrameworkSchema() ?? FRAMEWORK_SCHEMA;
21
24
  async function resolveTargets() {
22
25
  if (!resolver || !listTenantRefs) {
23
- return [{ db, tenantRef: 'default', coreSchema: 'public' }];
26
+ return [{ db, tenantRef: 'default' }];
24
27
  }
25
28
  const refs = [...(await listTenantRefs())];
26
29
  const targets = [];
27
30
  for (const tenantRef of refs) {
28
31
  const handle = await resolver.resolve(tenantRef);
29
- targets.push({
30
- db: handle.db,
31
- tenantRef: handle.tenantRef,
32
- coreSchema: handle.coreSchema,
33
- });
32
+ targets.push({ db: handle.db, tenantRef: handle.tenantRef });
34
33
  }
35
34
  return targets;
36
35
  }
@@ -156,12 +155,12 @@ export function createOutboxDispatcher(config) {
156
155
  if (!spineDb)
157
156
  return 0;
158
157
  const { listUnpublishedOutbox, publishOutboxToSpine } = await import('../durable/postgres-persist.js');
159
- const unpublished = await listUnpublishedOutbox(target.db, target.coreSchema);
158
+ const unpublished = await listUnpublishedOutbox(target.db, durableSchema);
160
159
  let published = 0;
161
160
  for (const row of unpublished) {
162
161
  try {
163
162
  const dispatchId = row.spineRowId ?? `disp:${row.executionId}:${row.expectedRevision}`;
164
- await publishOutboxToSpine(target.db, spineDb, row, dispatchId, new Date().toISOString(), target.coreSchema);
163
+ await publishOutboxToSpine(target.db, spineDb, row, dispatchId, new Date().toISOString(), durableSchema);
165
164
  published += 1;
166
165
  }
167
166
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/events/dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/events/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"capability-executor.d.ts","sourceRoot":"","sources":["../../src/execution/capability-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAG7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAiB3D,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAElF,iFAAiF;AACjF,wBAAsB,mBAAmB,CAAC,MAAM,SAAS,CAAC,CAAC,UAAU,EACnE,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACtC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GACrB,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAkBjC;AAyHD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,SAAS,CAAC,CAAC,UAAU,EAAE,OAAO,SAAS,CAAC,CAAC,UAAU,EAC/F,UAAU,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/C,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CA8G7C"}
1
+ {"version":3,"file":"capability-executor.d.ts","sourceRoot":"","sources":["../../src/execution/capability-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAG7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAiB3D,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAElF,iFAAiF;AACjF,wBAAsB,mBAAmB,CAAC,MAAM,SAAS,CAAC,CAAC,UAAU,EACnE,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACtC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GACrB,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAkBjC;AAyHD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,SAAS,CAAC,CAAC,UAAU,EAAE,OAAO,SAAS,CAAC,CAAC,UAAU,EAC/F,UAAU,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/C,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAwH7C"}
@@ -130,6 +130,12 @@ export async function executeCapability(capability, ctx, rawInput) {
130
130
  const error = ctx.errors.validation('Invalid input', {
131
131
  capability: canonicalName,
132
132
  issues: inputResult.error.issues,
133
+ // The first failing field, as the wire exposes it (SAFE_ERROR_METADATA_KEYS carries
134
+ // 'field' and 'reason'): the caller marks the input and moves on instead of receiving a
135
+ // bare 'Invalid input' it cannot map anywhere (Quinovium #186). Custom messages ride
136
+ // along in `reason` when a check set one.
137
+ field: zodIssueField(inputResult.error.issues),
138
+ reason: zodIssueReason(inputResult.error.issues),
133
139
  });
134
140
  await recordAudit(ctx, capability, canonicalName, 'failure', { error });
135
141
  return { success: false, error };
@@ -229,6 +235,24 @@ export async function executeCapability(capability, ctx, rawInput) {
229
235
  }
230
236
  return { success: true, data: validatedOutput };
231
237
  }
238
+ /**
239
+ * The input boundary's answer to "where and why": the first issue's path as a dotted field
240
+ * name and its rule. Keys match the safe-metadata allow-list (`field`, `reason`), so the
241
+ * refusal reaches the caller with something a form can mark — a bare 'Invalid input' left
242
+ * 2 600 probes unable to name anything (Quinovium #186).
243
+ */
244
+ function zodIssueField(issues) {
245
+ const first = issues[0];
246
+ if (!first)
247
+ return undefined;
248
+ const path = first.path ?? [];
249
+ return path.length > 0 ? path.map(String).join('.') : 'body';
250
+ }
251
+ function zodIssueReason(issues) {
252
+ const first = issues[0];
253
+ const paramReason = first?.params?.reason;
254
+ return typeof paramReason === 'string' && paramReason.length > 0 ? paramReason : undefined;
255
+ }
232
256
  async function recordAudit(ctx, capability, canonicalName, outcome, metadata) {
233
257
  if (capability.audit?.enabled === false)
234
258
  return;