@fleettools/server 0.1.0 → 0.1.1
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 +1 -1
- package/.flightline/checkpoints.db +0 -0
- package/.flightline/ctk/04a5510b-1e09-40c6-91c8-399c22138708.json +0 -9
- package/.flightline/ctk/0ecde721-7827-4039-995a-974e24493cc5.json +0 -9
- package/.flightline/ctk/268bbdbd-ddd7-46b2-845f-56a138aa518a.json +0 -9
- package/.flightline/ctk/6f476f2e-776c-407a-b441-b9365c0bae95.json +0 -9
- package/.flightline/ctk/7e10d0d5-fbc2-4661-af03-53de89e064db.json +0 -9
- package/.flightline/ctk/90783096-b7d4-49c5-8153-3c35018a2e61.json +0 -9
- package/.flightline/ctk/9a3b6d18-8a46-4728-90aa-279800a8e397.json +0 -9
- package/.flightline/ctk/ae30e192-b386-4ee2-899c-93f86785d3f3.json +0 -9
- package/.flightline/ctk/d0e9c49e-10df-413e-8cf7-37232b1838ca.json +0 -9
- package/.flightline/ctk/eae1a12b-2e9d-4c3f-8619-dafbb1346e96.json +0 -9
- package/.flightline/mailboxes/mbx_00dae6ba-0b5e-4a8d-a86d-93c8640872c3/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_05b0bfa9-c4f5-4f68-ba75-6202820f49c3/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_0a6b8fb2-729e-4385-8241-839c36b929d7/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_0abca4ab-8e34-409c-997f-481e80e450dc/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_173e5fb9-8203-418d-93c2-4f8c91f2d842/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_22b62201-0570-4ce8-b0a7-0f4b445f6d9e/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_2724efb1-76e1-4147-9620-4defcc65510f/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_35b8bfcd-5a54-48f1-8759-cb1f8ffe775d/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_3bc5193a-604d-4f52-be00-e56277643358/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_3bd500f3-c111-427a-8cd7-a004125d6dc1/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_45ce9ae8-5299-44dc-a1b5-4d63914a9609/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_4779c645-1efc-4c76-ab21-ff93f973ee8f/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_482237cf-87c8-486e-a24d-0941be2f480d/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_4b7e23c8-5680-4edd-a276-88803dd5fb6f/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_4dd3b945-d846-4c7a-94eb-6eeb25a0dc6b/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_4ec41a62-62bb-4be4-b3ce-282d5a33acce/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_4ff7ee7e-0c8a-43d6-a829-7c62c10af3b0/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_7661e4fb-a919-4af1-86f7-3eaef22f1d81/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_7ca872bb-69ab-4e7d-a7c6-4888ec8e7749/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_7e6d5707-2aa5-4770-a7be-6b1be93d0d87/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_87bef50d-3c59-429b-a995-5872f6278c37/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_88d1ea56-0b69-48c4-9fcf-ce1e1f7527ba/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_8bfb6bd7-07d1-4836-ae9d-3c93668c6dfe/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_93355083-e95b-4341-b625-56fcc1e4fc0c/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_999fd94c-ca56-4fec-8d30-8b677cf40ad6/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_a039fd15-7ee1-4bd6-906d-55dea8d0e489/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_a0b7363f-7cc6-4940-8e29-2dc85793a77d/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_a31e8b61-9643-4c78-939d-d1696d0420d9/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_acc51591-256c-4bed-9a51-514b1811f4cd/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_b1efebd9-5981-49fa-8775-20fa00d0c902/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_ba9d4c61-39a3-4852-95d7-bd34e3605a43/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_c549b60f-65fd-48d5-8cd6-2f053292b112/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_d0f839a5-3ab9-42e2-b438-df5825d049fe/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_d826d57e-9817-4f3c-ab94-2bfafa352f6d/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_da102f37-632c-4c0b-be4c-4270a74c06b9/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_df4506f5-67f2-4cf6-9113-93994b76f39b/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_e038e93b-87ea-4122-9578-6540018697b7/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_e0c171c5-407f-44dc-9ef9-e26e8b99ceac/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_e64770bf-7220-4d0f-848c-d751ea1c7376/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_e7f0edda-0fab-484d-ab4d-d8a8e363cd14/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_ec7d9118-8594-4d79-bf79-f43afdfaf156/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_ee06ec01-03e4-485a-ae2b-d8bdb6e7a3a8/manifest.json +0 -6
- package/.flightline/mailboxes/mbx_fd467681-f9cf-4a54-b06a-836df6de2ccc/manifest.json +0 -6
- package/.flightline/progress.db +0 -0
- package/.flightline/recovery.log +0 -1
- package/.flightline/tasks.db +0 -0
- package/.flightline/tech-orders/to_0c93d981-6b4e-4055-8678-f39c009d1db1.json +0 -11
- package/.flightline/tech-orders/to_1862f8ed-c487-4914-9f1e-528af6d4f053.json +0 -11
- package/.flightline/tech-orders/to_2335a57d-f400-4efa-b108-e13ece57520d.json +0 -11
- package/.flightline/tech-orders/to_2bd8dbdd-ac57-4b84-b977-33a3637d10d1.json +0 -11
- package/.flightline/tech-orders/to_37057c01-39b5-403a-991f-afb186abde95.json +0 -11
- package/.flightline/tech-orders/to_9e7288bb-c0fd-488a-a83d-1e9337bd0f1f.json +0 -11
- package/.flightline/tech-orders/to_aa0fe80b-9de7-40f6-a106-353b5bca10bd.json +0 -11
- package/.flightline/tech-orders/to_c1a0f480-c863-4203-a070-76ad77137845.json +0 -11
- package/.flightline/tech-orders/to_cf1e882a-cf56-45a4-8d19-494925e5f449.json +0 -11
- package/.flightline/work-orders/wo_5a29168d-5fb4-41d7-8dac-1d1151d9248f/manifest.json +0 -15
- package/.flightline/work-orders/wo_6c8c38bb-17a1-4885-ada4-dbfc5cc12d7a/manifest.json +0 -15
- package/.flightline/work-orders/wo_cadeb9b2-ea42-4491-b429-e2d467942b5c/manifest.json +0 -12
- package/.flightline/work-orders/wo_cc7b669c-16c4-4ef7-8a76-d1813219d0be/manifest.json +0 -15
- package/dist/server/api/src/coordination/agent-lifecycle.d.ts +0 -12
- package/dist/server/api/src/coordination/agent-lifecycle.d.ts.map +0 -1
- package/dist/server/api/src/coordination/agent-lifecycle.js +0 -12
- package/dist/server/api/src/coordination/agent-lifecycle.js.map +0 -1
- package/dist/server/api/src/coordination/agent-runner.d.ts +0 -9
- package/dist/server/api/src/coordination/agent-runner.d.ts.map +0 -1
- package/dist/server/api/src/coordination/agent-runner.js +0 -416
- package/dist/server/api/src/coordination/agent-runner.js.map +0 -1
- package/dist/server/api/src/coordination/agent-spawner-routes.d.ts +0 -7
- package/dist/server/api/src/coordination/agent-spawner-routes.d.ts.map +0 -1
- package/dist/server/api/src/coordination/agent-spawner-routes.js +0 -321
- package/dist/server/api/src/coordination/agent-spawner-routes.js.map +0 -1
- package/dist/server/api/src/coordination/agent-spawner.d.ts +0 -187
- package/dist/server/api/src/coordination/agent-spawner.d.ts.map +0 -1
- package/dist/server/api/src/coordination/agent-spawner.js +0 -712
- package/dist/server/api/src/coordination/agent-spawner.js.map +0 -1
- package/dist/server/api/src/coordination/agents.d.ts +0 -13
- package/dist/server/api/src/coordination/agents.d.ts.map +0 -1
- package/dist/server/api/src/coordination/agents.js +0 -464
- package/dist/server/api/src/coordination/agents.js.map +0 -1
- package/dist/server/api/src/coordination/checkpoint-routes.d.ts +0 -33
- package/dist/server/api/src/coordination/checkpoint-routes.d.ts.map +0 -1
- package/dist/server/api/src/coordination/checkpoint-routes.js +0 -323
- package/dist/server/api/src/coordination/checkpoint-routes.js.map +0 -1
- package/dist/server/api/src/coordination/conflict-resolver.d.ts +0 -152
- package/dist/server/api/src/coordination/conflict-resolver.d.ts.map +0 -1
- package/dist/server/api/src/coordination/conflict-resolver.js +0 -502
- package/dist/server/api/src/coordination/conflict-resolver.js.map +0 -1
- package/dist/server/api/src/coordination/missions.d.ts +0 -9
- package/dist/server/api/src/coordination/missions.d.ts.map +0 -1
- package/dist/server/api/src/coordination/missions.js +0 -148
- package/dist/server/api/src/coordination/missions.js.map +0 -1
- package/dist/server/api/src/coordination/monitor.d.ts +0 -175
- package/dist/server/api/src/coordination/monitor.d.ts.map +0 -1
- package/dist/server/api/src/coordination/monitor.js +0 -410
- package/dist/server/api/src/coordination/monitor.js.map +0 -1
- package/dist/server/api/src/coordination/notifier.d.ts +0 -160
- package/dist/server/api/src/coordination/notifier.d.ts.map +0 -1
- package/dist/server/api/src/coordination/notifier.js +0 -422
- package/dist/server/api/src/coordination/notifier.js.map +0 -1
- package/dist/server/api/src/coordination/progress-tracker.d.ts +0 -98
- package/dist/server/api/src/coordination/progress-tracker.d.ts.map +0 -1
- package/dist/server/api/src/coordination/progress-tracker.js +0 -323
- package/dist/server/api/src/coordination/progress-tracker.js.map +0 -1
- package/dist/server/api/src/coordination/recovery-manager.d.ts +0 -135
- package/dist/server/api/src/coordination/recovery-manager.d.ts.map +0 -1
- package/dist/server/api/src/coordination/recovery-manager.js +0 -435
- package/dist/server/api/src/coordination/recovery-manager.js.map +0 -1
- package/dist/server/api/src/coordination/task-decomposer.d.ts +0 -90
- package/dist/server/api/src/coordination/task-decomposer.d.ts.map +0 -1
- package/dist/server/api/src/coordination/task-decomposer.js +0 -412
- package/dist/server/api/src/coordination/task-decomposer.js.map +0 -1
- package/dist/server/api/src/coordination/task-queue-routes.d.ts +0 -7
- package/dist/server/api/src/coordination/task-queue-routes.d.ts.map +0 -1
- package/dist/server/api/src/coordination/task-queue-routes.js +0 -266
- package/dist/server/api/src/coordination/task-queue-routes.js.map +0 -1
- package/dist/server/api/src/coordination/task-queue.d.ts +0 -104
- package/dist/server/api/src/coordination/task-queue.d.ts.map +0 -1
- package/dist/server/api/src/coordination/task-queue.js +0 -378
- package/dist/server/api/src/coordination/task-queue.js.map +0 -1
- package/dist/server/api/src/coordination/tasks.d.ts +0 -7
- package/dist/server/api/src/coordination/tasks.d.ts.map +0 -1
- package/dist/server/api/src/coordination/tasks.js +0 -59
- package/dist/server/api/src/coordination/tasks.js.map +0 -1
- package/dist/server/api/src/decomposition/cli.d.ts +0 -18
- package/dist/server/api/src/decomposition/cli.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/cli.js +0 -191
- package/dist/server/api/src/decomposition/cli.js.map +0 -1
- package/dist/server/api/src/decomposition/codebase-analyzer.d.ts +0 -59
- package/dist/server/api/src/decomposition/codebase-analyzer.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/codebase-analyzer.js +0 -274
- package/dist/server/api/src/decomposition/codebase-analyzer.js.map +0 -1
- package/dist/server/api/src/decomposition/dependency-resolver.d.ts +0 -68
- package/dist/server/api/src/decomposition/dependency-resolver.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/dependency-resolver.js +0 -261
- package/dist/server/api/src/decomposition/dependency-resolver.js.map +0 -1
- package/dist/server/api/src/decomposition/index.d.ts +0 -17
- package/dist/server/api/src/decomposition/index.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/index.js +0 -19
- package/dist/server/api/src/decomposition/index.js.map +0 -1
- package/dist/server/api/src/decomposition/parallelization.d.ts +0 -40
- package/dist/server/api/src/decomposition/parallelization.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/parallelization.js +0 -144
- package/dist/server/api/src/decomposition/parallelization.js.map +0 -1
- package/dist/server/api/src/decomposition/planner.d.ts +0 -84
- package/dist/server/api/src/decomposition/planner.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/planner.js +0 -415
- package/dist/server/api/src/decomposition/planner.js.map +0 -1
- package/dist/server/api/src/decomposition/routes.d.ts +0 -13
- package/dist/server/api/src/decomposition/routes.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/routes.js +0 -114
- package/dist/server/api/src/decomposition/routes.js.map +0 -1
- package/dist/server/api/src/decomposition/strategies.d.ts +0 -43
- package/dist/server/api/src/decomposition/strategies.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/strategies.js +0 -147
- package/dist/server/api/src/decomposition/strategies.js.map +0 -1
- package/dist/server/api/src/decomposition/types.d.ts +0 -1090
- package/dist/server/api/src/decomposition/types.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/types.js +0 -65
- package/dist/server/api/src/decomposition/types.js.map +0 -1
- package/dist/server/api/src/decomposition/validator.d.ts +0 -84
- package/dist/server/api/src/decomposition/validator.d.ts.map +0 -1
- package/dist/server/api/src/decomposition/validator.js +0 -314
- package/dist/server/api/src/decomposition/validator.js.map +0 -1
- package/dist/server/api/src/flightline/ctk.d.ts +0 -2
- package/dist/server/api/src/flightline/ctk.d.ts.map +0 -1
- package/dist/server/api/src/flightline/ctk.js +0 -114
- package/dist/server/api/src/flightline/ctk.js.map +0 -1
- package/dist/server/api/src/flightline/tech-orders.d.ts +0 -2
- package/dist/server/api/src/flightline/tech-orders.d.ts.map +0 -1
- package/dist/server/api/src/flightline/tech-orders.js +0 -74
- package/dist/server/api/src/flightline/tech-orders.js.map +0 -1
- package/dist/server/api/src/flightline/work-orders.d.ts +0 -2
- package/dist/server/api/src/flightline/work-orders.d.ts.map +0 -1
- package/dist/server/api/src/flightline/work-orders.js +0 -178
- package/dist/server/api/src/flightline/work-orders.js.map +0 -1
- package/dist/server/api/src/index.d.ts +0 -3
- package/dist/server/api/src/index.d.ts.map +0 -1
- package/dist/server/api/src/index.js +0 -192
- package/dist/server/api/src/index.js.map +0 -1
- package/dist/server/api/src/middleware/agent-validation.d.ts +0 -161
- package/dist/server/api/src/middleware/agent-validation.d.ts.map +0 -1
- package/dist/server/api/src/middleware/agent-validation.js +0 -112
- package/dist/server/api/src/middleware/agent-validation.js.map +0 -1
- package/dist/server/api/src/middleware/error-handler.d.ts +0 -8
- package/dist/server/api/src/middleware/error-handler.d.ts.map +0 -1
- package/dist/server/api/src/middleware/error-handler.js +0 -54
- package/dist/server/api/src/middleware/error-handler.js.map +0 -1
- package/dist/server/api/src/middleware/logger.d.ts +0 -8
- package/dist/server/api/src/middleware/logger.d.ts.map +0 -1
- package/dist/server/api/src/middleware/logger.js +0 -31
- package/dist/server/api/src/middleware/logger.js.map +0 -1
- package/dist/server/api/src/middleware/validation.d.ts +0 -322
- package/dist/server/api/src/middleware/validation.d.ts.map +0 -1
- package/dist/server/api/src/middleware/validation.js +0 -189
- package/dist/server/api/src/middleware/validation.js.map +0 -1
- package/dist/server/api/src/squawk/blocker-handler.d.ts +0 -111
- package/dist/server/api/src/squawk/blocker-handler.d.ts.map +0 -1
- package/dist/server/api/src/squawk/blocker-handler.js +0 -262
- package/dist/server/api/src/squawk/blocker-handler.js.map +0 -1
- package/dist/server/api/src/squawk/coordinator.d.ts +0 -2
- package/dist/server/api/src/squawk/coordinator.d.ts.map +0 -1
- package/dist/server/api/src/squawk/coordinator.js +0 -24
- package/dist/server/api/src/squawk/coordinator.js.map +0 -1
- package/dist/server/api/src/squawk/cursor.d.ts +0 -2
- package/dist/server/api/src/squawk/cursor.d.ts.map +0 -1
- package/dist/server/api/src/squawk/cursor.js +0 -55
- package/dist/server/api/src/squawk/cursor.js.map +0 -1
- package/dist/server/api/src/squawk/dependency-resolver.d.ts +0 -107
- package/dist/server/api/src/squawk/dependency-resolver.d.ts.map +0 -1
- package/dist/server/api/src/squawk/dependency-resolver.js +0 -324
- package/dist/server/api/src/squawk/dependency-resolver.js.map +0 -1
- package/dist/server/api/src/squawk/dispatch-orchestrator.d.ts +0 -117
- package/dist/server/api/src/squawk/dispatch-orchestrator.d.ts.map +0 -1
- package/dist/server/api/src/squawk/dispatch-orchestrator.js +0 -296
- package/dist/server/api/src/squawk/dispatch-orchestrator.js.map +0 -1
- package/dist/server/api/src/squawk/lock-coordinator.d.ts +0 -118
- package/dist/server/api/src/squawk/lock-coordinator.d.ts.map +0 -1
- package/dist/server/api/src/squawk/lock-coordinator.js +0 -279
- package/dist/server/api/src/squawk/lock-coordinator.js.map +0 -1
- package/dist/server/api/src/squawk/lock.d.ts +0 -2
- package/dist/server/api/src/squawk/lock.d.ts.map +0 -1
- package/dist/server/api/src/squawk/lock.js +0 -87
- package/dist/server/api/src/squawk/lock.js.map +0 -1
- package/dist/server/api/src/squawk/mailbox.d.ts +0 -2
- package/dist/server/api/src/squawk/mailbox.d.ts.map +0 -1
- package/dist/server/api/src/squawk/mailbox.js +0 -66
- package/dist/server/api/src/squawk/mailbox.js.map +0 -1
- package/dist/server/api/src/squawk/spawning.d.ts +0 -79
- package/dist/server/api/src/squawk/spawning.d.ts.map +0 -1
- package/dist/server/api/src/squawk/spawning.js +0 -226
- package/dist/server/api/src/squawk/spawning.js.map +0 -1
- package/dist/server/api/src/squawk/specialist-tools.d.ts +0 -206
- package/dist/server/api/src/squawk/specialist-tools.d.ts.map +0 -1
- package/dist/server/api/src/squawk/specialist-tools.js +0 -411
- package/dist/server/api/src/squawk/specialist-tools.js.map +0 -1
- package/dist/server/api/src/types/api.d.ts +0 -63
- package/dist/server/api/src/types/api.d.ts.map +0 -1
- package/dist/server/api/src/types/api.js +0 -5
- package/dist/server/api/src/types/api.js.map +0 -1
- package/dist/squawk/src/db/index.d.ts +0 -30
- package/dist/squawk/src/db/index.d.ts.map +0 -1
- package/dist/squawk/src/db/index.js +0 -329
- package/dist/squawk/src/db/index.js.map +0 -1
- package/dist/squawk/src/db/sqlite.d.ts +0 -31
- package/dist/squawk/src/db/sqlite.d.ts.map +0 -1
- package/dist/squawk/src/db/sqlite.js +0 -558
- package/dist/squawk/src/db/sqlite.js.map +0 -1
- package/dist/squawk/src/db/types.d.ts +0 -611
- package/dist/squawk/src/db/types.d.ts.map +0 -1
- package/dist/squawk/src/db/types.js +0 -4
- package/dist/squawk/src/db/types.js.map +0 -1
- package/e2e-integration.test.ts +0 -290
- package/integration.test.ts +0 -186
- package/phase1-integration.test.ts +0 -455
- package/phase2-verification.test.ts +0 -135
- package/server.log +0 -58
- package/src/agent-runner.js +0 -877
- package/src/coordination/agent-lifecycle.ts +0 -13
- package/src/coordination/agent-runner.ts +0 -479
- package/src/coordination/agent-spawner-routes.ts +0 -340
- package/src/coordination/agent-spawner.ts +0 -885
- package/src/coordination/agents.ts +0 -525
- package/src/coordination/checkpoint-routes.ts +0 -382
- package/src/coordination/conflict-resolver.ts +0 -640
- package/src/coordination/missions.ts +0 -219
- package/src/coordination/monitor.ts +0 -593
- package/src/coordination/notifier.ts +0 -547
- package/src/coordination/progress-tracker.ts +0 -410
- package/src/coordination/recovery-manager.ts +0 -531
- package/src/coordination/task-decomposer.ts +0 -491
- package/src/coordination/task-queue-routes.ts +0 -284
- package/src/coordination/task-queue.ts +0 -480
- package/src/coordination/tasks.ts +0 -72
- package/src/flightline/ctk.ts +0 -131
- package/src/flightline/tech-orders.ts +0 -85
- package/src/flightline/work-orders.ts +0 -202
- package/src/index.ts +0 -211
- package/src/middleware/agent-validation.ts +0 -130
- package/src/middleware/error-handler.ts +0 -59
- package/src/middleware/logger.ts +0 -37
- package/src/middleware/validation.ts +0 -235
- package/src/squawk/coordinator.ts +0 -26
- package/src/squawk/cursor.ts +0 -62
- package/src/squawk/lock.ts +0 -98
- package/src/squawk/mailbox.ts +0 -75
- package/src/types/api.ts +0 -71
- package/test-api.ts +0 -310
- package/test-enhanced-agents.ts +0 -428
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: Dependency Resolution
|
|
3
|
-
*
|
|
4
|
-
* Analyzes sortie dependencies to identify parallel groups, calculate
|
|
5
|
-
* critical path, and estimate total duration.
|
|
6
|
-
*
|
|
7
|
-
* @since 4.0.0 - Initial implementation
|
|
8
|
-
* @last-updated 2026-01-08
|
|
9
|
-
*/
|
|
10
|
-
/**
|
|
11
|
-
* DecompositionDependencyResolver - Resolves sortie dependencies
|
|
12
|
-
*/
|
|
13
|
-
export class DecompositionDependencyResolver {
|
|
14
|
-
/**
|
|
15
|
-
* Resolve dependencies in a SortieTree
|
|
16
|
-
*/
|
|
17
|
-
resolve(sortieTree) {
|
|
18
|
-
const sortieMap = new Map(sortieTree.sorties.map(s => [s.id, s]));
|
|
19
|
-
// Topologically sort sorties
|
|
20
|
-
const sortedSorties = this.topologicalSort(sortieTree.sorties, sortieMap);
|
|
21
|
-
// Identify parallel groups
|
|
22
|
-
const parallelGroups = this.identifyParallelGroups(sortedSorties, sortieMap);
|
|
23
|
-
// Calculate critical path
|
|
24
|
-
const criticalPath = this.calculateCriticalPath(sortieTree.sorties, sortieMap);
|
|
25
|
-
// Estimate total duration
|
|
26
|
-
const estimatedDuration = this.estimateDuration(criticalPath);
|
|
27
|
-
// Calculate max depth
|
|
28
|
-
const maxDepth = this.calculateMaxDepth(sortieTree.sorties, sortieMap);
|
|
29
|
-
// Check for circular dependencies
|
|
30
|
-
const circularDependencies = this.findCircularDependencies(sortieTree.sorties, sortieMap);
|
|
31
|
-
return {
|
|
32
|
-
sorted_sorties: sortedSorties,
|
|
33
|
-
parallel_groups: parallelGroups,
|
|
34
|
-
critical_path: criticalPath,
|
|
35
|
-
estimated_duration_ms: estimatedDuration,
|
|
36
|
-
max_depth: maxDepth,
|
|
37
|
-
circular_dependencies: circularDependencies.length > 0 ? circularDependencies : undefined,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Topologically sort sorties
|
|
42
|
-
*/
|
|
43
|
-
topologicalSort(sorties, sortieMap) {
|
|
44
|
-
const visited = new Set();
|
|
45
|
-
const sorted = [];
|
|
46
|
-
const visit = (sortieId) => {
|
|
47
|
-
if (visited.has(sortieId))
|
|
48
|
-
return;
|
|
49
|
-
visited.add(sortieId);
|
|
50
|
-
const sortie = sortieMap.get(sortieId);
|
|
51
|
-
if (!sortie)
|
|
52
|
-
return;
|
|
53
|
-
// Visit dependencies first
|
|
54
|
-
for (const depId of sortie.dependencies) {
|
|
55
|
-
visit(depId);
|
|
56
|
-
}
|
|
57
|
-
sorted.push(sortie);
|
|
58
|
-
};
|
|
59
|
-
for (const sortie of sorties) {
|
|
60
|
-
visit(sortie.id);
|
|
61
|
-
}
|
|
62
|
-
return sorted;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Identify parallel groups
|
|
66
|
-
*/
|
|
67
|
-
identifyParallelGroups(sortedSorties, sortieMap) {
|
|
68
|
-
const groups = [];
|
|
69
|
-
const processed = new Set();
|
|
70
|
-
for (const sortie of sortedSorties) {
|
|
71
|
-
if (processed.has(sortie.id))
|
|
72
|
-
continue;
|
|
73
|
-
const group = [sortie];
|
|
74
|
-
processed.add(sortie.id);
|
|
75
|
-
// Find other sorties that can run in parallel with this one
|
|
76
|
-
for (const other of sortedSorties) {
|
|
77
|
-
if (processed.has(other.id))
|
|
78
|
-
continue;
|
|
79
|
-
// Check if other can run in parallel with all sorties in the group
|
|
80
|
-
let canRunInParallel = true;
|
|
81
|
-
for (const groupMember of group) {
|
|
82
|
-
if (!this.canRunInParallel(groupMember, other, sortieMap)) {
|
|
83
|
-
canRunInParallel = false;
|
|
84
|
-
break;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
if (canRunInParallel) {
|
|
88
|
-
group.push(other);
|
|
89
|
-
processed.add(other.id);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
groups.push(group);
|
|
93
|
-
}
|
|
94
|
-
return groups;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Check if two sorties can run in parallel
|
|
98
|
-
*/
|
|
99
|
-
canRunInParallel(s1, s2, sortieMap) {
|
|
100
|
-
// Check for direct dependencies
|
|
101
|
-
if (s1.dependencies.includes(s2.id) || s2.dependencies.includes(s1.id)) {
|
|
102
|
-
return false;
|
|
103
|
-
}
|
|
104
|
-
// Check for file overlap
|
|
105
|
-
const files1 = new Set(s1.scope.files || []);
|
|
106
|
-
const files2 = new Set(s2.scope.files || []);
|
|
107
|
-
for (const file of files1) {
|
|
108
|
-
if (files2.has(file)) {
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
// Check for transitive dependencies
|
|
113
|
-
if (this.hasTransitiveDependency(s1.id, s2.id, sortieMap) ||
|
|
114
|
-
this.hasTransitiveDependency(s2.id, s1.id, sortieMap)) {
|
|
115
|
-
return false;
|
|
116
|
-
}
|
|
117
|
-
return true;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Check if there's a transitive dependency
|
|
121
|
-
*/
|
|
122
|
-
hasTransitiveDependency(fromId, toId, sortieMap, visited = new Set()) {
|
|
123
|
-
if (visited.has(fromId))
|
|
124
|
-
return false;
|
|
125
|
-
visited.add(fromId);
|
|
126
|
-
const sortie = sortieMap.get(fromId);
|
|
127
|
-
if (!sortie)
|
|
128
|
-
return false;
|
|
129
|
-
for (const depId of sortie.dependencies) {
|
|
130
|
-
if (depId === toId)
|
|
131
|
-
return true;
|
|
132
|
-
if (this.hasTransitiveDependency(depId, toId, sortieMap, visited)) {
|
|
133
|
-
return true;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
return false;
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Calculate critical path (longest dependency chain)
|
|
140
|
-
*/
|
|
141
|
-
calculateCriticalPath(sorties, sortieMap) {
|
|
142
|
-
let longestPath = [];
|
|
143
|
-
for (const sortie of sorties) {
|
|
144
|
-
const path = this.buildPath(sortie.id, sortieMap, new Set());
|
|
145
|
-
if (path.length > longestPath.length) {
|
|
146
|
-
longestPath = path;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return longestPath;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Build dependency path from a sortie
|
|
153
|
-
*/
|
|
154
|
-
buildPath(sortieId, sortieMap, visited) {
|
|
155
|
-
if (visited.has(sortieId))
|
|
156
|
-
return [];
|
|
157
|
-
visited.add(sortieId);
|
|
158
|
-
const sortie = sortieMap.get(sortieId);
|
|
159
|
-
if (!sortie)
|
|
160
|
-
return [];
|
|
161
|
-
if (sortie.dependencies.length === 0) {
|
|
162
|
-
return [sortie];
|
|
163
|
-
}
|
|
164
|
-
let longestDependencyPath = [];
|
|
165
|
-
for (const depId of sortie.dependencies) {
|
|
166
|
-
const depPath = this.buildPath(depId, sortieMap, new Set(visited));
|
|
167
|
-
if (depPath.length > longestDependencyPath.length) {
|
|
168
|
-
longestDependencyPath = depPath;
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
return [...longestDependencyPath, sortie];
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Estimate total duration based on critical path
|
|
175
|
-
*/
|
|
176
|
-
estimateDuration(criticalPath) {
|
|
177
|
-
const totalHours = criticalPath.reduce((sum, s) => sum + s.estimated_effort_hours, 0);
|
|
178
|
-
return totalHours * 3600000; // Convert hours to milliseconds
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* Calculate maximum dependency depth
|
|
182
|
-
*/
|
|
183
|
-
calculateMaxDepth(sorties, sortieMap) {
|
|
184
|
-
let maxDepth = 0;
|
|
185
|
-
for (const sortie of sorties) {
|
|
186
|
-
const depth = this.calculateDepth(sortie.id, sortieMap, new Set());
|
|
187
|
-
maxDepth = Math.max(maxDepth, depth);
|
|
188
|
-
}
|
|
189
|
-
return maxDepth;
|
|
190
|
-
}
|
|
191
|
-
/**
|
|
192
|
-
* Calculate depth of a sortie in the dependency graph
|
|
193
|
-
*/
|
|
194
|
-
calculateDepth(sortieId, sortieMap, visited) {
|
|
195
|
-
if (visited.has(sortieId))
|
|
196
|
-
return 0;
|
|
197
|
-
visited.add(sortieId);
|
|
198
|
-
const sortie = sortieMap.get(sortieId);
|
|
199
|
-
if (!sortie || sortie.dependencies.length === 0) {
|
|
200
|
-
return 1;
|
|
201
|
-
}
|
|
202
|
-
let maxDependencyDepth = 0;
|
|
203
|
-
for (const depId of sortie.dependencies) {
|
|
204
|
-
const depth = this.calculateDepth(depId, sortieMap, new Set(visited));
|
|
205
|
-
maxDependencyDepth = Math.max(maxDependencyDepth, depth);
|
|
206
|
-
}
|
|
207
|
-
return maxDependencyDepth + 1;
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Find circular dependencies
|
|
211
|
-
*/
|
|
212
|
-
findCircularDependencies(sorties, sortieMap) {
|
|
213
|
-
const cycles = [];
|
|
214
|
-
const visited = new Set();
|
|
215
|
-
for (const sortie of sorties) {
|
|
216
|
-
if (visited.has(sortie.id))
|
|
217
|
-
continue;
|
|
218
|
-
const cycle = this.findCycle(sortie.id, sortieMap, new Set(), []);
|
|
219
|
-
if (cycle.length > 0) {
|
|
220
|
-
cycles.push(cycle);
|
|
221
|
-
// Mark all sorties in the cycle as visited
|
|
222
|
-
for (const id of cycle) {
|
|
223
|
-
visited.add(id);
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
return cycles;
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* Find a cycle starting from a sortie
|
|
231
|
-
*/
|
|
232
|
-
findCycle(sortieId, sortieMap, visited, path) {
|
|
233
|
-
if (visited.has(sortieId)) {
|
|
234
|
-
// Check if this sortie is in the current path (indicating a cycle)
|
|
235
|
-
const cycleStart = path.indexOf(sortieId);
|
|
236
|
-
if (cycleStart !== -1) {
|
|
237
|
-
return path.slice(cycleStart).concat(sortieId);
|
|
238
|
-
}
|
|
239
|
-
return [];
|
|
240
|
-
}
|
|
241
|
-
visited.add(sortieId);
|
|
242
|
-
const sortie = sortieMap.get(sortieId);
|
|
243
|
-
if (!sortie) {
|
|
244
|
-
return [];
|
|
245
|
-
}
|
|
246
|
-
for (const depId of sortie.dependencies) {
|
|
247
|
-
const cycle = this.findCycle(depId, sortieMap, new Set(visited), [...path, sortieId]);
|
|
248
|
-
if (cycle.length > 0) {
|
|
249
|
-
return cycle;
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
return [];
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
/**
|
|
256
|
-
* Create a new dependency resolver instance
|
|
257
|
-
*/
|
|
258
|
-
export function createDependencyResolver() {
|
|
259
|
-
return new DecompositionDependencyResolver();
|
|
260
|
-
}
|
|
261
|
-
//# sourceMappingURL=dependency-resolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../../../../src/decomposition/dependency-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: Task Decomposition Module
|
|
3
|
-
*
|
|
4
|
-
* Exports all decomposition-related types and classes.
|
|
5
|
-
*
|
|
6
|
-
* @since 4.0.0 - Initial implementation
|
|
7
|
-
* @last-updated 2026-01-08
|
|
8
|
-
*/
|
|
9
|
-
export * from './types.js';
|
|
10
|
-
export { StrategySelector, createStrategySelector } from './strategies.js';
|
|
11
|
-
export { CodebaseAnalyzer, createCodebaseAnalyzer } from './codebase-analyzer.js';
|
|
12
|
-
export { LLMPlanner, createLLMPlanner } from './planner.js';
|
|
13
|
-
export { SortieTreeValidator, createValidator } from './validator.js';
|
|
14
|
-
export { DecompositionDependencyResolver, createDependencyResolver } from './dependency-resolver.js';
|
|
15
|
-
export { ParallelizationAnalyzer, createParallelizationAnalyzer } from './parallelization.js';
|
|
16
|
-
export { decomposeTaskCLI } from './cli.js';
|
|
17
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/decomposition/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: Task Decomposition Module
|
|
3
|
-
*
|
|
4
|
-
* Exports all decomposition-related types and classes.
|
|
5
|
-
*
|
|
6
|
-
* @since 4.0.0 - Initial implementation
|
|
7
|
-
* @last-updated 2026-01-08
|
|
8
|
-
*/
|
|
9
|
-
// Types
|
|
10
|
-
export * from './types.js';
|
|
11
|
-
// Classes and functions
|
|
12
|
-
export { StrategySelector, createStrategySelector } from './strategies.js';
|
|
13
|
-
export { CodebaseAnalyzer, createCodebaseAnalyzer } from './codebase-analyzer.js';
|
|
14
|
-
export { LLMPlanner, createLLMPlanner } from './planner.js';
|
|
15
|
-
export { SortieTreeValidator, createValidator } from './validator.js';
|
|
16
|
-
export { DecompositionDependencyResolver, createDependencyResolver } from './dependency-resolver.js';
|
|
17
|
-
export { ParallelizationAnalyzer, createParallelizationAnalyzer } from './parallelization.js';
|
|
18
|
-
export { decomposeTaskCLI } from './cli.js';
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/decomposition/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,wBAAwB;AACxB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: Parallelization Analysis
|
|
3
|
-
*
|
|
4
|
-
* Analyzes parallelization opportunities and provides recommendations
|
|
5
|
-
* for optimizing task execution.
|
|
6
|
-
*
|
|
7
|
-
* @since 4.0.0 - Initial implementation
|
|
8
|
-
* @last-updated 2026-01-08
|
|
9
|
-
*/
|
|
10
|
-
import { SortieTree, ParallelizationAnalysisResult } from './types.js';
|
|
11
|
-
/**
|
|
12
|
-
* ParallelizationAnalyzer - Analyzes parallelization opportunities
|
|
13
|
-
*/
|
|
14
|
-
export declare class ParallelizationAnalyzer {
|
|
15
|
-
/**
|
|
16
|
-
* Analyze parallelization opportunities
|
|
17
|
-
*/
|
|
18
|
-
analyze(sortieTree: SortieTree): ParallelizationAnalysisResult;
|
|
19
|
-
/**
|
|
20
|
-
* Calculate parallelization potential (0-1)
|
|
21
|
-
*/
|
|
22
|
-
private calculateParallelizationPotential;
|
|
23
|
-
/**
|
|
24
|
-
* Calculate estimated speedup from parallelization
|
|
25
|
-
*/
|
|
26
|
-
private calculateSpeedup;
|
|
27
|
-
/**
|
|
28
|
-
* Generate recommendations for optimization
|
|
29
|
-
*/
|
|
30
|
-
private generateRecommendations;
|
|
31
|
-
/**
|
|
32
|
-
* Identify bottlenecks in execution
|
|
33
|
-
*/
|
|
34
|
-
private identifyBottlenecks;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Create a new parallelization analyzer instance
|
|
38
|
-
*/
|
|
39
|
-
export declare function createParallelizationAnalyzer(): ParallelizationAnalyzer;
|
|
40
|
-
//# sourceMappingURL=parallelization.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parallelization.d.ts","sourceRoot":"","sources":["../../../../../src/decomposition/parallelization.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,UAAU,EACV,6BAA6B,EAC9B,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,uBAAuB;IAClC;;OAEG;IACI,OAAO,CAAC,UAAU,EAAE,UAAU,GAAG,6BAA6B;IA0CrE;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAWzC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqE/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAiD5B;AAED;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,uBAAuB,CAEvE"}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: Parallelization Analysis
|
|
3
|
-
*
|
|
4
|
-
* Analyzes parallelization opportunities and provides recommendations
|
|
5
|
-
* for optimizing task execution.
|
|
6
|
-
*
|
|
7
|
-
* @since 4.0.0 - Initial implementation
|
|
8
|
-
* @last-updated 2026-01-08
|
|
9
|
-
*/
|
|
10
|
-
/**
|
|
11
|
-
* ParallelizationAnalyzer - Analyzes parallelization opportunities
|
|
12
|
-
*/
|
|
13
|
-
export class ParallelizationAnalyzer {
|
|
14
|
-
/**
|
|
15
|
-
* Analyze parallelization opportunities
|
|
16
|
-
*/
|
|
17
|
-
analyze(sortieTree) {
|
|
18
|
-
const parallelGroups = sortieTree.parallelization.parallel_groups;
|
|
19
|
-
const criticalPath = sortieTree.parallelization.critical_path;
|
|
20
|
-
const estimatedDuration = sortieTree.parallelization.estimated_duration_ms;
|
|
21
|
-
// Calculate parallelization potential
|
|
22
|
-
const parallelizationPotential = this.calculateParallelizationPotential(sortieTree.sorties, parallelGroups);
|
|
23
|
-
// Calculate estimated speedup
|
|
24
|
-
const estimatedSpeedup = this.calculateSpeedup(sortieTree.sorties, criticalPath, estimatedDuration);
|
|
25
|
-
// Generate recommendations
|
|
26
|
-
const recommendations = this.generateRecommendations(sortieTree, parallelGroups, criticalPath, parallelizationPotential);
|
|
27
|
-
// Identify bottlenecks
|
|
28
|
-
const bottlenecks = this.identifyBottlenecks(sortieTree, parallelGroups, criticalPath);
|
|
29
|
-
return {
|
|
30
|
-
parallel_groups: parallelGroups,
|
|
31
|
-
parallelization_potential: parallelizationPotential,
|
|
32
|
-
estimated_speedup: estimatedSpeedup,
|
|
33
|
-
recommendations,
|
|
34
|
-
bottlenecks,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Calculate parallelization potential (0-1)
|
|
39
|
-
*/
|
|
40
|
-
calculateParallelizationPotential(sorties, parallelGroups) {
|
|
41
|
-
if (sorties.length <= 1)
|
|
42
|
-
return 0;
|
|
43
|
-
// Potential is based on how many sorties can run in parallel
|
|
44
|
-
const maxParallelSize = Math.max(...parallelGroups.map(g => g.length));
|
|
45
|
-
return maxParallelSize / sorties.length;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Calculate estimated speedup from parallelization
|
|
49
|
-
*/
|
|
50
|
-
calculateSpeedup(sorties, criticalPath, estimatedDuration) {
|
|
51
|
-
if (sorties.length <= 1)
|
|
52
|
-
return 1;
|
|
53
|
-
// Total effort if executed sequentially
|
|
54
|
-
const totalEffort = sorties.reduce((sum, s) => sum + s.estimated_effort_hours, 0);
|
|
55
|
-
// Critical path effort
|
|
56
|
-
const criticalPathEffort = criticalPath.reduce((sum, s) => sum + s.estimated_effort_hours, 0);
|
|
57
|
-
// Speedup is the ratio of sequential to parallel execution
|
|
58
|
-
if (criticalPathEffort === 0)
|
|
59
|
-
return 1;
|
|
60
|
-
return totalEffort / criticalPathEffort;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Generate recommendations for optimization
|
|
64
|
-
*/
|
|
65
|
-
generateRecommendations(sortieTree, parallelGroups, criticalPath, parallelizationPotential) {
|
|
66
|
-
const recommendations = [];
|
|
67
|
-
// Check if parallelization potential is low
|
|
68
|
-
if (parallelizationPotential < 0.3) {
|
|
69
|
-
recommendations.push('Low parallelization potential: Consider breaking down sorties with high complexity into smaller, independent tasks');
|
|
70
|
-
}
|
|
71
|
-
// Check for long critical path
|
|
72
|
-
if (criticalPath.length > 5) {
|
|
73
|
-
recommendations.push(`Long critical path (${criticalPath.length} sorties): Consider reordering dependencies to reduce sequential execution`);
|
|
74
|
-
}
|
|
75
|
-
// Check for unbalanced effort
|
|
76
|
-
const efforts = sortieTree.sorties.map(s => s.estimated_effort_hours);
|
|
77
|
-
const avgEffort = efforts.reduce((a, b) => a + b, 0) / efforts.length;
|
|
78
|
-
const maxEffort = Math.max(...efforts);
|
|
79
|
-
if (maxEffort > avgEffort * 2) {
|
|
80
|
-
const heavySorties = sortieTree.sorties
|
|
81
|
-
.filter(s => s.estimated_effort_hours > avgEffort * 1.5)
|
|
82
|
-
.map(s => s.title);
|
|
83
|
-
recommendations.push(`Unbalanced effort distribution: Consider breaking down heavy sorties (${heavySorties.join(', ')}) into smaller tasks`);
|
|
84
|
-
}
|
|
85
|
-
// Check for high complexity sorties
|
|
86
|
-
const highComplexitySorties = sortieTree.sorties.filter(s => s.complexity === 'high');
|
|
87
|
-
if (highComplexitySorties.length > 0) {
|
|
88
|
-
recommendations.push(`High complexity sorties detected: Consider adding intermediate milestones or breaking them into smaller tasks`);
|
|
89
|
-
}
|
|
90
|
-
// Check for sorties with many dependencies
|
|
91
|
-
const heavilyDependentSorties = sortieTree.sorties.filter(s => s.dependencies.length > 2);
|
|
92
|
-
if (heavilyDependentSorties.length > 0) {
|
|
93
|
-
recommendations.push(`Some sorties have many dependencies: Consider reordering to reduce dependency depth`);
|
|
94
|
-
}
|
|
95
|
-
// Positive recommendations
|
|
96
|
-
if (parallelizationPotential > 0.7) {
|
|
97
|
-
recommendations.push('Good parallelization potential: Most sorties can run in parallel for efficient execution');
|
|
98
|
-
}
|
|
99
|
-
if (criticalPath.length <= 3) {
|
|
100
|
-
recommendations.push('Short critical path: Task can be completed quickly with parallel execution');
|
|
101
|
-
}
|
|
102
|
-
return recommendations;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Identify bottlenecks in execution
|
|
106
|
-
*/
|
|
107
|
-
identifyBottlenecks(sortieTree, parallelGroups, criticalPath) {
|
|
108
|
-
const bottlenecks = [];
|
|
109
|
-
// Sorties on the critical path are bottlenecks
|
|
110
|
-
const criticalPathIds = new Set(criticalPath.map(s => s.id));
|
|
111
|
-
for (const sortie of criticalPath) {
|
|
112
|
-
if (sortie.complexity === 'high') {
|
|
113
|
-
bottlenecks.push(`High complexity sortie on critical path: "${sortie.title}" (${sortie.estimated_effort_hours}h)`);
|
|
114
|
-
}
|
|
115
|
-
if (sortie.estimated_effort_hours > 4) {
|
|
116
|
-
bottlenecks.push(`Long-running sortie on critical path: "${sortie.title}" (${sortie.estimated_effort_hours}h)`);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
// Sorties with many dependents are bottlenecks
|
|
120
|
-
for (const sortie of sortieTree.sorties) {
|
|
121
|
-
const dependentCount = sortieTree.sorties.filter(s => s.dependencies.includes(sortie.id)).length;
|
|
122
|
-
if (dependentCount > 2) {
|
|
123
|
-
bottlenecks.push(`Sortie with many dependents: "${sortie.title}" (${dependentCount} sorties depend on it)`);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
// Identify sequential chains
|
|
127
|
-
for (const group of parallelGroups) {
|
|
128
|
-
if (group.length === 1) {
|
|
129
|
-
const sortie = group[0];
|
|
130
|
-
if (sortie.dependencies.length > 0 && sortieTree.sorties.filter(s => s.dependencies.includes(sortie.id)).length > 0) {
|
|
131
|
-
bottlenecks.push(`Sequential chain: "${sortie.title}" is part of a sequential dependency chain`);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
return bottlenecks;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Create a new parallelization analyzer instance
|
|
140
|
-
*/
|
|
141
|
-
export function createParallelizationAnalyzer() {
|
|
142
|
-
return new ParallelizationAnalyzer();
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=parallelization.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parallelization.js","sourceRoot":"","sources":["../../../../../src/decomposition/parallelization.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* FleetTools Phase 4: LLM Planner
|
|
3
|
-
*
|
|
4
|
-
* Uses Claude API to generate SortieTree from task description and codebase context.
|
|
5
|
-
* Handles prompt generation, API calls, response parsing, and validation.
|
|
6
|
-
*
|
|
7
|
-
* @since 4.0.0 - Initial implementation
|
|
8
|
-
* @last-updated 2026-01-08
|
|
9
|
-
*/
|
|
10
|
-
import { LLMPlannerInput, SortieTree } from './types.js';
|
|
11
|
-
/**
|
|
12
|
-
* LLMPlanner - Generates SortieTree using Claude API
|
|
13
|
-
*/
|
|
14
|
-
export declare class LLMPlanner {
|
|
15
|
-
private readonly apiKey;
|
|
16
|
-
private readonly apiBaseUrl;
|
|
17
|
-
private readonly model;
|
|
18
|
-
constructor(apiKey?: string);
|
|
19
|
-
/**
|
|
20
|
-
* Generate SortieTree from task description
|
|
21
|
-
*/
|
|
22
|
-
plan(input: LLMPlannerInput): Promise<SortieTree>;
|
|
23
|
-
/**
|
|
24
|
-
* Generate prompt for Claude
|
|
25
|
-
*/
|
|
26
|
-
private generatePrompt;
|
|
27
|
-
/**
|
|
28
|
-
* Call Claude API
|
|
29
|
-
*/
|
|
30
|
-
private callClaudeAPI;
|
|
31
|
-
/**
|
|
32
|
-
* Parse Claude response
|
|
33
|
-
*/
|
|
34
|
-
private parseResponse;
|
|
35
|
-
/**
|
|
36
|
-
* Validate parsed output
|
|
37
|
-
*/
|
|
38
|
-
private validateParsedOutput;
|
|
39
|
-
/**
|
|
40
|
-
* Convert parsed output to SortieTree
|
|
41
|
-
*/
|
|
42
|
-
private convertToSortieTree;
|
|
43
|
-
/**
|
|
44
|
-
* Generate parallelization info
|
|
45
|
-
*/
|
|
46
|
-
private generateParallelizationInfo;
|
|
47
|
-
/**
|
|
48
|
-
* Identify parallel groups
|
|
49
|
-
*/
|
|
50
|
-
private identifyParallelGroups;
|
|
51
|
-
/**
|
|
52
|
-
* Check if two sorties can run in parallel
|
|
53
|
-
*/
|
|
54
|
-
private canRunInParallel;
|
|
55
|
-
/**
|
|
56
|
-
* Calculate critical path
|
|
57
|
-
*/
|
|
58
|
-
private calculateCriticalPath;
|
|
59
|
-
/**
|
|
60
|
-
* Build dependency path
|
|
61
|
-
*/
|
|
62
|
-
private buildPath;
|
|
63
|
-
/**
|
|
64
|
-
* Estimate total duration
|
|
65
|
-
*/
|
|
66
|
-
private estimateDuration;
|
|
67
|
-
/**
|
|
68
|
-
* Calculate parallelization potential
|
|
69
|
-
*/
|
|
70
|
-
private calculateParallelizationPotential;
|
|
71
|
-
/**
|
|
72
|
-
* Calculate estimated speedup
|
|
73
|
-
*/
|
|
74
|
-
private calculateSpeedup;
|
|
75
|
-
/**
|
|
76
|
-
* Generate unique ID
|
|
77
|
-
*/
|
|
78
|
-
private generateId;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Create a new LLM planner instance
|
|
82
|
-
*/
|
|
83
|
-
export declare function createLLMPlanner(apiKey?: string): LLMPlanner;
|
|
84
|
-
//# sourceMappingURL=planner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../../../src/decomposition/planner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,eAAe,EAIf,UAAU,EAGX,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0C;IACrE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwC;gBAElD,MAAM,CAAC,EAAE,MAAM;IAO3B;;OAEG;IACU,IAAI,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IAgB9D;;OAEG;IACH,OAAO,CAAC,cAAc;IA8DtB;;OAEG;YACW,aAAa;IAmC3B;;OAEG;IACH,OAAO,CAAC,aAAa;IA0BrB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2D5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgE3B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA+BnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkB7B;;OAEG;IACH,OAAO,CAAC,SAAS;IAiBjB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAQzC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,UAAU;CAQnB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAE5D"}
|