@wopr-network/defcon 0.2.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 (243) hide show
  1. package/README.md +274 -0
  2. package/dist/api/router.d.ts +24 -0
  3. package/dist/api/router.js +44 -0
  4. package/dist/api/server.d.ts +13 -0
  5. package/dist/api/server.js +280 -0
  6. package/dist/api/wire-types.d.ts +46 -0
  7. package/dist/api/wire-types.js +5 -0
  8. package/dist/config/db-path.d.ts +1 -0
  9. package/dist/config/db-path.js +1 -0
  10. package/dist/config/exporter.d.ts +3 -0
  11. package/dist/config/exporter.js +87 -0
  12. package/dist/config/index.d.ts +4 -0
  13. package/dist/config/index.js +4 -0
  14. package/dist/config/seed-loader.d.ts +10 -0
  15. package/dist/config/seed-loader.js +108 -0
  16. package/dist/config/zod-schemas.d.ts +165 -0
  17. package/dist/config/zod-schemas.js +283 -0
  18. package/dist/cors.d.ts +8 -0
  19. package/dist/cors.js +21 -0
  20. package/dist/engine/constants.d.ts +1 -0
  21. package/dist/engine/constants.js +1 -0
  22. package/dist/engine/engine.d.ts +69 -0
  23. package/dist/engine/engine.js +485 -0
  24. package/dist/engine/event-emitter.d.ts +9 -0
  25. package/dist/engine/event-emitter.js +19 -0
  26. package/dist/engine/event-types.d.ts +105 -0
  27. package/dist/engine/event-types.js +1 -0
  28. package/dist/engine/flow-spawner.d.ts +8 -0
  29. package/dist/engine/flow-spawner.js +28 -0
  30. package/dist/engine/gate-command-validator.d.ts +6 -0
  31. package/dist/engine/gate-command-validator.js +46 -0
  32. package/dist/engine/gate-evaluator.d.ts +12 -0
  33. package/dist/engine/gate-evaluator.js +233 -0
  34. package/dist/engine/handlebars.d.ts +9 -0
  35. package/dist/engine/handlebars.js +51 -0
  36. package/dist/engine/index.d.ts +12 -0
  37. package/dist/engine/index.js +7 -0
  38. package/dist/engine/invocation-builder.d.ts +18 -0
  39. package/dist/engine/invocation-builder.js +58 -0
  40. package/dist/engine/on-enter.d.ts +8 -0
  41. package/dist/engine/on-enter.js +102 -0
  42. package/dist/engine/ssrf-guard.d.ts +22 -0
  43. package/dist/engine/ssrf-guard.js +159 -0
  44. package/dist/engine/state-machine.d.ts +12 -0
  45. package/dist/engine/state-machine.js +74 -0
  46. package/dist/execution/active-runner.d.ts +45 -0
  47. package/dist/execution/active-runner.js +165 -0
  48. package/dist/execution/admin-schemas.d.ts +116 -0
  49. package/dist/execution/admin-schemas.js +125 -0
  50. package/dist/execution/cli.d.ts +57 -0
  51. package/dist/execution/cli.js +498 -0
  52. package/dist/execution/handlers/admin.d.ts +67 -0
  53. package/dist/execution/handlers/admin.js +200 -0
  54. package/dist/execution/handlers/flow.d.ts +25 -0
  55. package/dist/execution/handlers/flow.js +289 -0
  56. package/dist/execution/handlers/query.d.ts +31 -0
  57. package/dist/execution/handlers/query.js +64 -0
  58. package/dist/execution/index.d.ts +4 -0
  59. package/dist/execution/index.js +3 -0
  60. package/dist/execution/mcp-helpers.d.ts +42 -0
  61. package/dist/execution/mcp-helpers.js +23 -0
  62. package/dist/execution/mcp-server.d.ts +33 -0
  63. package/dist/execution/mcp-server.js +1020 -0
  64. package/dist/execution/provision-worktree.d.ts +16 -0
  65. package/dist/execution/provision-worktree.js +123 -0
  66. package/dist/execution/tool-schemas.d.ts +40 -0
  67. package/dist/execution/tool-schemas.js +44 -0
  68. package/dist/gates/blocking-graph.d.ts +26 -0
  69. package/dist/gates/blocking-graph.js +102 -0
  70. package/dist/gates/test/bad-return-gate.d.ts +1 -0
  71. package/dist/gates/test/bad-return-gate.js +4 -0
  72. package/dist/gates/test/passing-gate.d.ts +2 -0
  73. package/dist/gates/test/passing-gate.js +3 -0
  74. package/dist/gates/test/slow-gate.d.ts +2 -0
  75. package/dist/gates/test/slow-gate.js +5 -0
  76. package/dist/gates/test/throwing-gate.d.ts +1 -0
  77. package/dist/gates/test/throwing-gate.js +3 -0
  78. package/dist/logger.d.ts +8 -0
  79. package/dist/logger.js +12 -0
  80. package/dist/main.d.ts +14 -0
  81. package/dist/main.js +28 -0
  82. package/dist/repositories/drizzle/entity.repo.d.ts +27 -0
  83. package/dist/repositories/drizzle/entity.repo.js +190 -0
  84. package/dist/repositories/drizzle/event.repo.d.ts +12 -0
  85. package/dist/repositories/drizzle/event.repo.js +24 -0
  86. package/dist/repositories/drizzle/flow.repo.d.ts +22 -0
  87. package/dist/repositories/drizzle/flow.repo.js +364 -0
  88. package/dist/repositories/drizzle/gate.repo.d.ts +16 -0
  89. package/dist/repositories/drizzle/gate.repo.js +98 -0
  90. package/dist/repositories/drizzle/index.d.ts +6 -0
  91. package/dist/repositories/drizzle/index.js +7 -0
  92. package/dist/repositories/drizzle/invocation.repo.d.ts +23 -0
  93. package/dist/repositories/drizzle/invocation.repo.js +199 -0
  94. package/dist/repositories/drizzle/schema.d.ts +1932 -0
  95. package/dist/repositories/drizzle/schema.js +155 -0
  96. package/dist/repositories/drizzle/transition-log.repo.d.ts +11 -0
  97. package/dist/repositories/drizzle/transition-log.repo.js +42 -0
  98. package/dist/repositories/interfaces.d.ts +321 -0
  99. package/dist/repositories/interfaces.js +2 -0
  100. package/dist/src/api/router.d.ts +24 -0
  101. package/dist/src/api/router.js +44 -0
  102. package/dist/src/api/server.d.ts +13 -0
  103. package/dist/src/api/server.js +280 -0
  104. package/dist/src/api/wire-types.d.ts +46 -0
  105. package/dist/src/api/wire-types.js +5 -0
  106. package/dist/src/config/db-path.d.ts +1 -0
  107. package/dist/src/config/db-path.js +1 -0
  108. package/dist/src/config/exporter.d.ts +3 -0
  109. package/dist/src/config/exporter.js +87 -0
  110. package/dist/src/config/index.d.ts +4 -0
  111. package/dist/src/config/index.js +4 -0
  112. package/dist/src/config/seed-loader.d.ts +14 -0
  113. package/dist/src/config/seed-loader.js +131 -0
  114. package/dist/src/config/zod-schemas.d.ts +165 -0
  115. package/dist/src/config/zod-schemas.js +283 -0
  116. package/dist/src/cors.d.ts +8 -0
  117. package/dist/src/cors.js +21 -0
  118. package/dist/src/engine/constants.d.ts +1 -0
  119. package/dist/src/engine/constants.js +1 -0
  120. package/dist/src/engine/engine.d.ts +69 -0
  121. package/dist/src/engine/engine.js +485 -0
  122. package/dist/src/engine/event-emitter.d.ts +9 -0
  123. package/dist/src/engine/event-emitter.js +19 -0
  124. package/dist/src/engine/event-types.d.ts +105 -0
  125. package/dist/src/engine/event-types.js +1 -0
  126. package/dist/src/engine/flow-spawner.d.ts +8 -0
  127. package/dist/src/engine/flow-spawner.js +28 -0
  128. package/dist/src/engine/gate-command-validator.d.ts +6 -0
  129. package/dist/src/engine/gate-command-validator.js +46 -0
  130. package/dist/src/engine/gate-evaluator.d.ts +12 -0
  131. package/dist/src/engine/gate-evaluator.js +233 -0
  132. package/dist/src/engine/handlebars.d.ts +9 -0
  133. package/dist/src/engine/handlebars.js +51 -0
  134. package/dist/src/engine/index.d.ts +12 -0
  135. package/dist/src/engine/index.js +7 -0
  136. package/dist/src/engine/invocation-builder.d.ts +18 -0
  137. package/dist/src/engine/invocation-builder.js +58 -0
  138. package/dist/src/engine/on-enter.d.ts +8 -0
  139. package/dist/src/engine/on-enter.js +102 -0
  140. package/dist/src/engine/ssrf-guard.d.ts +22 -0
  141. package/dist/src/engine/ssrf-guard.js +159 -0
  142. package/dist/src/engine/state-machine.d.ts +12 -0
  143. package/dist/src/engine/state-machine.js +74 -0
  144. package/dist/src/execution/active-runner.d.ts +45 -0
  145. package/dist/src/execution/active-runner.js +165 -0
  146. package/dist/src/execution/admin-schemas.d.ts +116 -0
  147. package/dist/src/execution/admin-schemas.js +125 -0
  148. package/dist/src/execution/cli.d.ts +57 -0
  149. package/dist/src/execution/cli.js +501 -0
  150. package/dist/src/execution/handlers/admin.d.ts +67 -0
  151. package/dist/src/execution/handlers/admin.js +200 -0
  152. package/dist/src/execution/handlers/flow.d.ts +25 -0
  153. package/dist/src/execution/handlers/flow.js +289 -0
  154. package/dist/src/execution/handlers/query.d.ts +31 -0
  155. package/dist/src/execution/handlers/query.js +64 -0
  156. package/dist/src/execution/index.d.ts +4 -0
  157. package/dist/src/execution/index.js +3 -0
  158. package/dist/src/execution/mcp-helpers.d.ts +42 -0
  159. package/dist/src/execution/mcp-helpers.js +23 -0
  160. package/dist/src/execution/mcp-server.d.ts +33 -0
  161. package/dist/src/execution/mcp-server.js +1020 -0
  162. package/dist/src/execution/provision-worktree.d.ts +16 -0
  163. package/dist/src/execution/provision-worktree.js +123 -0
  164. package/dist/src/execution/tool-schemas.d.ts +40 -0
  165. package/dist/src/execution/tool-schemas.js +44 -0
  166. package/dist/src/logger.d.ts +8 -0
  167. package/dist/src/logger.js +12 -0
  168. package/dist/src/main.d.ts +14 -0
  169. package/dist/src/main.js +28 -0
  170. package/dist/src/repositories/drizzle/entity.repo.d.ts +27 -0
  171. package/dist/src/repositories/drizzle/entity.repo.js +190 -0
  172. package/dist/src/repositories/drizzle/event.repo.d.ts +12 -0
  173. package/dist/src/repositories/drizzle/event.repo.js +24 -0
  174. package/dist/src/repositories/drizzle/flow.repo.d.ts +22 -0
  175. package/dist/src/repositories/drizzle/flow.repo.js +364 -0
  176. package/dist/src/repositories/drizzle/gate.repo.d.ts +16 -0
  177. package/dist/src/repositories/drizzle/gate.repo.js +98 -0
  178. package/dist/src/repositories/drizzle/index.d.ts +6 -0
  179. package/dist/src/repositories/drizzle/index.js +7 -0
  180. package/dist/src/repositories/drizzle/invocation.repo.d.ts +23 -0
  181. package/dist/src/repositories/drizzle/invocation.repo.js +199 -0
  182. package/dist/src/repositories/drizzle/schema.d.ts +1932 -0
  183. package/dist/src/repositories/drizzle/schema.js +155 -0
  184. package/dist/src/repositories/drizzle/transition-log.repo.d.ts +11 -0
  185. package/dist/src/repositories/drizzle/transition-log.repo.js +42 -0
  186. package/dist/src/repositories/interfaces.d.ts +321 -0
  187. package/dist/src/repositories/interfaces.js +2 -0
  188. package/dist/src/utils/redact.d.ts +2 -0
  189. package/dist/src/utils/redact.js +62 -0
  190. package/dist/utils/redact.d.ts +2 -0
  191. package/dist/utils/redact.js +62 -0
  192. package/drizzle/.gitkeep +0 -0
  193. package/drizzle/0000_simple_surge.sql +144 -0
  194. package/drizzle/0001_peaceful_marvel_apes.sql +18 -0
  195. package/drizzle/0002_add_invocations_created_at.sql +1 -0
  196. package/drizzle/0003_drop_integration_config.sql +1 -0
  197. package/drizzle/0004_add_flow_discipline.sql +2 -0
  198. package/drizzle/0004_lucky_silverclaw.sql +5 -0
  199. package/drizzle/0005_old_blue_shield.sql +2 -0
  200. package/drizzle/0006_solid_magik.sql +2 -0
  201. package/drizzle/0007_fancy_luke_cage.sql +1 -0
  202. package/drizzle/0008_thick_dark_beast.sql +1 -0
  203. package/drizzle/0009_brief_midnight.sql +1 -0
  204. package/drizzle/0010_amusing_bastion.sql +1 -0
  205. package/drizzle/meta/0000_snapshot.json +996 -0
  206. package/drizzle/meta/0004_snapshot.json +1008 -0
  207. package/drizzle/meta/0005_snapshot.json +1023 -0
  208. package/drizzle/meta/0006_snapshot.json +1037 -0
  209. package/drizzle/meta/0007_snapshot.json +1044 -0
  210. package/drizzle/meta/0008_snapshot.json +1051 -0
  211. package/drizzle/meta/0009_snapshot.json +1058 -0
  212. package/drizzle/meta/0010_snapshot.json +1065 -0
  213. package/drizzle/meta/_journal.json +83 -0
  214. package/gates/.gitkeep +0 -0
  215. package/gates/blocking-graph.d.ts +26 -0
  216. package/gates/blocking-graph.js +102 -0
  217. package/gates/blocking-graph.ts +121 -0
  218. package/gates/check-design-posted.sh +39 -0
  219. package/gates/check-merge.sh +51 -0
  220. package/gates/check-pr-capacity.sh +17 -0
  221. package/gates/check-review-ready.sh +47 -0
  222. package/gates/check-spec-posted.sh +34 -0
  223. package/gates/check-unblocked.sh +56 -0
  224. package/gates/ci-green.sh +9 -0
  225. package/gates/merge-queue.sh +14 -0
  226. package/gates/review-bots-ready.sh +9 -0
  227. package/gates/spec-posted.sh +31 -0
  228. package/gates/test/bad-return-gate.d.ts +1 -0
  229. package/gates/test/bad-return-gate.js +4 -0
  230. package/gates/test/bad-return-gate.ts +4 -0
  231. package/gates/test/passing-gate.d.ts +2 -0
  232. package/gates/test/passing-gate.js +3 -0
  233. package/gates/test/passing-gate.ts +5 -0
  234. package/gates/test/slow-gate.d.ts +2 -0
  235. package/gates/test/slow-gate.js +5 -0
  236. package/gates/test/slow-gate.ts +7 -0
  237. package/gates/test/throwing-gate.d.ts +1 -0
  238. package/gates/test/throwing-gate.js +3 -0
  239. package/gates/test/throwing-gate.ts +3 -0
  240. package/gates/test-fail.sh +2 -0
  241. package/gates/test-pass.sh +2 -0
  242. package/gates/timeout-gate-script.sh +3 -0
  243. package/package.json +64 -0
@@ -0,0 +1,144 @@
1
+ CREATE TABLE `entities` (
2
+ `id` text PRIMARY KEY NOT NULL,
3
+ `flow_id` text NOT NULL,
4
+ `state` text NOT NULL,
5
+ `refs` text,
6
+ `artifacts` text,
7
+ `claimed_by` text,
8
+ `claimed_at` integer,
9
+ `flow_version` integer,
10
+ `created_at` integer,
11
+ `updated_at` integer,
12
+ FOREIGN KEY (`flow_id`) REFERENCES `flow_definitions`(`id`) ON UPDATE no action ON DELETE no action
13
+ );
14
+ --> statement-breakpoint
15
+ CREATE INDEX `entities_flow_state_idx` ON `entities` (`flow_id`,`state`);--> statement-breakpoint
16
+ CREATE INDEX `entities_claim_idx` ON `entities` (`flow_id`,`state`,`claimed_by`);--> statement-breakpoint
17
+ CREATE TABLE `entity_history` (
18
+ `id` text PRIMARY KEY NOT NULL,
19
+ `entity_id` text NOT NULL,
20
+ `from_state` text,
21
+ `to_state` text NOT NULL,
22
+ `trigger` text,
23
+ `invocation_id` text,
24
+ `timestamp` integer NOT NULL,
25
+ FOREIGN KEY (`entity_id`) REFERENCES `entities`(`id`) ON UPDATE no action ON DELETE no action
26
+ );
27
+ --> statement-breakpoint
28
+ CREATE INDEX `entity_history_entity_ts_idx` ON `entity_history` (`entity_id`,`timestamp`);--> statement-breakpoint
29
+ CREATE TABLE `events` (
30
+ `id` text PRIMARY KEY NOT NULL,
31
+ `type` text NOT NULL,
32
+ `entity_id` text,
33
+ `flow_id` text,
34
+ `payload` text,
35
+ `emitted_at` integer NOT NULL
36
+ );
37
+ --> statement-breakpoint
38
+ CREATE INDEX `events_type_emitted_idx` ON `events` (`type`,`emitted_at`);--> statement-breakpoint
39
+ CREATE TABLE `flow_definitions` (
40
+ `id` text PRIMARY KEY NOT NULL,
41
+ `name` text NOT NULL,
42
+ `description` text,
43
+ `entity_schema` text,
44
+ `initial_state` text NOT NULL,
45
+ `max_concurrent` integer DEFAULT 0,
46
+ `max_concurrent_per_repo` integer DEFAULT 0,
47
+ `version` integer DEFAULT 1,
48
+ `created_by` text,
49
+ `created_at` integer,
50
+ `updated_at` integer
51
+ );
52
+ --> statement-breakpoint
53
+ CREATE UNIQUE INDEX `flow_definitions_name_unique` ON `flow_definitions` (`name`);--> statement-breakpoint
54
+ CREATE TABLE `flow_versions` (
55
+ `id` text PRIMARY KEY NOT NULL,
56
+ `flow_id` text NOT NULL,
57
+ `version` integer NOT NULL,
58
+ `snapshot` text,
59
+ `changed_by` text,
60
+ `change_reason` text,
61
+ `created_at` integer,
62
+ FOREIGN KEY (`flow_id`) REFERENCES `flow_definitions`(`id`) ON UPDATE no action ON DELETE no action
63
+ );
64
+ --> statement-breakpoint
65
+ CREATE UNIQUE INDEX `flow_versions_flow_version_unique` ON `flow_versions` (`flow_id`,`version`);--> statement-breakpoint
66
+ CREATE TABLE `gate_definitions` (
67
+ `id` text PRIMARY KEY NOT NULL,
68
+ `name` text NOT NULL,
69
+ `type` text NOT NULL,
70
+ `command` text,
71
+ `function_ref` text,
72
+ `api_config` text,
73
+ `timeout_ms` integer DEFAULT 30000
74
+ );
75
+ --> statement-breakpoint
76
+ CREATE UNIQUE INDEX `gate_definitions_name_unique` ON `gate_definitions` (`name`);--> statement-breakpoint
77
+ CREATE TABLE `gate_results` (
78
+ `id` text PRIMARY KEY NOT NULL,
79
+ `entity_id` text NOT NULL,
80
+ `gate_id` text NOT NULL,
81
+ `passed` integer NOT NULL,
82
+ `output` text,
83
+ `evaluated_at` integer,
84
+ FOREIGN KEY (`entity_id`) REFERENCES `entities`(`id`) ON UPDATE no action ON DELETE no action,
85
+ FOREIGN KEY (`gate_id`) REFERENCES `gate_definitions`(`id`) ON UPDATE no action ON DELETE no action
86
+ );
87
+ --> statement-breakpoint
88
+ CREATE TABLE `integration_config` (
89
+ `id` text PRIMARY KEY NOT NULL,
90
+ `capability` text NOT NULL,
91
+ `adapter` text NOT NULL,
92
+ `config` text
93
+ );
94
+ --> statement-breakpoint
95
+ CREATE UNIQUE INDEX `integration_config_capability_unique` ON `integration_config` (`capability`);--> statement-breakpoint
96
+ CREATE TABLE `invocations` (
97
+ `id` text PRIMARY KEY NOT NULL,
98
+ `entity_id` text NOT NULL,
99
+ `stage` text NOT NULL,
100
+ `agent_role` text,
101
+ `mode` text NOT NULL,
102
+ `prompt` text NOT NULL,
103
+ `context` text,
104
+ `claimed_by` text,
105
+ `claimed_at` integer,
106
+ `started_at` integer,
107
+ `completed_at` integer,
108
+ `failed_at` integer,
109
+ `signal` text,
110
+ `artifacts` text,
111
+ `error` text,
112
+ `ttl_ms` integer DEFAULT 1800000,
113
+ FOREIGN KEY (`entity_id`) REFERENCES `entities`(`id`) ON UPDATE no action ON DELETE no action
114
+ );
115
+ --> statement-breakpoint
116
+ CREATE INDEX `invocations_entity_idx` ON `invocations` (`entity_id`);--> statement-breakpoint
117
+ CREATE TABLE `state_definitions` (
118
+ `id` text PRIMARY KEY NOT NULL,
119
+ `flow_id` text NOT NULL,
120
+ `name` text NOT NULL,
121
+ `agent_role` text,
122
+ `model_tier` text,
123
+ `mode` text DEFAULT 'passive',
124
+ `prompt_template` text,
125
+ `constraints` text,
126
+ FOREIGN KEY (`flow_id`) REFERENCES `flow_definitions`(`id`) ON UPDATE no action ON DELETE no action
127
+ );
128
+ --> statement-breakpoint
129
+ CREATE UNIQUE INDEX `state_definitions_flow_name_unique` ON `state_definitions` (`flow_id`,`name`);--> statement-breakpoint
130
+ CREATE TABLE `transition_rules` (
131
+ `id` text PRIMARY KEY NOT NULL,
132
+ `flow_id` text NOT NULL,
133
+ `from_state` text NOT NULL,
134
+ `to_state` text NOT NULL,
135
+ `trigger` text NOT NULL,
136
+ `gate_id` text,
137
+ `condition` text,
138
+ `priority` integer DEFAULT 0,
139
+ `spawn_flow` text,
140
+ `spawn_template` text,
141
+ `created_at` integer,
142
+ FOREIGN KEY (`flow_id`) REFERENCES `flow_definitions`(`id`) ON UPDATE no action ON DELETE no action,
143
+ FOREIGN KEY (`gate_id`) REFERENCES `gate_definitions`(`id`) ON UPDATE no action ON DELETE no action
144
+ );
@@ -0,0 +1,18 @@
1
+ PRAGMA foreign_keys=OFF;--> statement-breakpoint
2
+ CREATE TABLE `__new_entity_history` (
3
+ `id` text PRIMARY KEY NOT NULL,
4
+ `entity_id` text NOT NULL,
5
+ `from_state` text,
6
+ `to_state` text NOT NULL,
7
+ `trigger` text,
8
+ `invocation_id` text,
9
+ `timestamp` integer NOT NULL,
10
+ FOREIGN KEY (`entity_id`) REFERENCES `entities`(`id`) ON UPDATE no action ON DELETE no action,
11
+ FOREIGN KEY (`invocation_id`) REFERENCES `invocations`(`id`) ON UPDATE no action ON DELETE no action
12
+ );
13
+ --> statement-breakpoint
14
+ INSERT INTO `__new_entity_history`("id", "entity_id", "from_state", "to_state", "trigger", "invocation_id", "timestamp") SELECT "id", "entity_id", "from_state", "to_state", "trigger", "invocation_id", "timestamp" FROM `entity_history`;--> statement-breakpoint
15
+ DROP TABLE `entity_history`;--> statement-breakpoint
16
+ ALTER TABLE `__new_entity_history` RENAME TO `entity_history`;--> statement-breakpoint
17
+ PRAGMA foreign_keys=ON;--> statement-breakpoint
18
+ CREATE INDEX `entity_history_entity_ts_idx` ON `entity_history` (`entity_id`,`timestamp`);
@@ -0,0 +1 @@
1
+ ALTER TABLE `invocations` ADD `created_at` integer;
@@ -0,0 +1 @@
1
+ DROP TABLE IF EXISTS `integration_config`;
@@ -0,0 +1,2 @@
1
+ ALTER TABLE `flow_definitions` ADD `discipline` text;--> statement-breakpoint
2
+ ALTER TABLE `entities` ADD `priority` integer NOT NULL DEFAULT 0;
@@ -0,0 +1,5 @@
1
+ ALTER TABLE `entities` ADD `affinity_worker_id` text;--> statement-breakpoint
2
+ ALTER TABLE `entities` ADD `affinity_role` text;--> statement-breakpoint
3
+ ALTER TABLE `entities` ADD `affinity_expires_at` integer;--> statement-breakpoint
4
+ CREATE INDEX `entities_affinity_idx` ON `entities` (`affinity_worker_id`,`affinity_role`,`affinity_expires_at`);--> statement-breakpoint
5
+ ALTER TABLE `flow_definitions` ADD `affinity_window_ms` integer DEFAULT 300000;
@@ -0,0 +1,2 @@
1
+ ALTER TABLE `entities` ADD `priority` integer DEFAULT 0;--> statement-breakpoint
2
+ ALTER TABLE `flow_definitions` ADD `discipline` text;
@@ -0,0 +1,2 @@
1
+ ALTER TABLE `gate_definitions` ADD `failure_prompt` text;--> statement-breakpoint
2
+ ALTER TABLE `gate_definitions` ADD `timeout_prompt` text;
@@ -0,0 +1 @@
1
+ ALTER TABLE `state_definitions` ADD `on_enter` text;
@@ -0,0 +1 @@
1
+ ALTER TABLE `flow_definitions` ADD `default_model_tier` text;
@@ -0,0 +1 @@
1
+ ALTER TABLE `flow_definitions` ADD `timeout_prompt` text;
@@ -0,0 +1 @@
1
+ ALTER TABLE `flow_definitions` ADD `gate_timeout_ms` integer;