jumbo-cli 2.0.1 → 2.0.2
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/LICENSE.txt +661 -661
- package/README.md +239 -239
- package/assets/claude-logo.svg +7 -7
- package/assets/codex-logo.svg +3 -3
- package/assets/cursor-logo.svg +31 -31
- package/assets/mistral-logo.svg +19 -19
- package/assets/skills/codify-jumbo-goal/SKILL.md +116 -116
- package/assets/skills/define-jumbo-goals/SKILL.md +193 -193
- package/assets/skills/refine-jumbo-goals/SKILL.md +156 -156
- package/assets/skills/reject-jumbo-goal/SKILL.md +58 -58
- package/assets/skills/review-jumbo-goal/SKILL.md +94 -94
- package/assets/skills/start-jumbo-goal/SKILL.md +86 -86
- package/assets/vscode-logo.svg +41 -41
- package/dist/domain/project/AgentFileReferenceContent.js +7 -7
- package/dist/domain/project/AgentsMdContent.js +74 -74
- package/dist/domain/project/CopilotInstructionsContent.js +38 -38
- package/dist/infrastructure/context/architecture/define/SqliteArchitectureDefinedProjector.js +5 -5
- package/dist/infrastructure/context/architecture/migrations/001-create-architecture-views.sql +16 -16
- package/dist/infrastructure/context/architecture/migrations/002-drop-dataflow-column.sql +4 -4
- package/dist/infrastructure/context/architecture/update/SqliteArchitectureUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/audience-pains/add/SqliteAudiencePainAddedProjector.js +4 -4
- package/dist/infrastructure/context/audience-pains/migrations/001-create-audience-pain-views.sql +17 -17
- package/dist/infrastructure/context/audience-pains/update/SqliteAudiencePainUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/audiences/add/SqliteAudienceAddedProjector.js +5 -5
- package/dist/infrastructure/context/audiences/migrations/001-create-audience-views.sql +17 -17
- package/dist/infrastructure/context/audiences/remove/SqliteAudienceRemovedProjector.js +6 -6
- package/dist/infrastructure/context/audiences/update/SqliteAudienceUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/components/add/SqliteComponentAddedProjector.js +5 -5
- package/dist/infrastructure/context/components/deprecate/SqliteComponentDeprecatedProjector.js +7 -7
- package/dist/infrastructure/context/components/migrations/001-create-component-views.sql +21 -21
- package/dist/infrastructure/context/components/remove/SqliteComponentRemovedProjector.js +6 -6
- package/dist/infrastructure/context/components/rename/SqliteComponentRenamedProjector.js +4 -4
- package/dist/infrastructure/context/components/undeprecate/SqliteComponentUndeprecatedProjector.js +7 -7
- package/dist/infrastructure/context/components/update/SqliteComponentUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/decisions/add/SqliteDecisionAddedProjector.js +6 -6
- package/dist/infrastructure/context/decisions/migrations/001-create-decision-views.sql +22 -22
- package/dist/infrastructure/context/decisions/restore/SqliteDecisionRestoredProjector.js +9 -9
- package/dist/infrastructure/context/decisions/reverse/SqliteDecisionReversedProjector.js +8 -8
- package/dist/infrastructure/context/decisions/supersede/SqliteDecisionSupersededProjector.js +7 -7
- package/dist/infrastructure/context/decisions/update/SqliteDecisionUpdatedProjector.js +10 -10
- package/dist/infrastructure/context/dependencies/add/SqliteDependencyAddedProjector.js +5 -5
- package/dist/infrastructure/context/dependencies/get/SqliteLegacyDependencyReader.js +5 -5
- package/dist/infrastructure/context/dependencies/migrations/001-create-dependency-views.sql +21 -21
- package/dist/infrastructure/context/dependencies/migrations/002-add-external-dependency-columns.sql +11 -11
- package/dist/infrastructure/context/dependencies/remove/SqliteDependencyRemovedProjector.js +8 -8
- package/dist/infrastructure/context/dependencies/update/SqliteDependencyUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/goals/add/SqliteGoalAddedProjector.js +7 -7
- package/dist/infrastructure/context/goals/approve/SqliteGoalApprovedProjector.js +9 -9
- package/dist/infrastructure/context/goals/block/SqliteGoalBlockedProjector.js +7 -7
- package/dist/infrastructure/context/goals/close/SqliteGoalClosedProjector.js +9 -9
- package/dist/infrastructure/context/goals/codify/SqliteGoalCodifyingStartedProjector.js +9 -9
- package/dist/infrastructure/context/goals/commit/SqliteGoalCommittedProjector.js +9 -9
- package/dist/infrastructure/context/goals/complete/SqliteGoalCompletedProjector.js +9 -9
- package/dist/infrastructure/context/goals/migrate/SqliteGoalStatusMigratedProjector.js +7 -7
- package/dist/infrastructure/context/goals/migrations/001-create-goal-views.sql +20 -20
- package/dist/infrastructure/context/goals/migrations/002-add-embedded-context-columns.sql +11 -11
- package/dist/infrastructure/context/goals/migrations/003-add-next-goal-column.sql +4 -4
- package/dist/infrastructure/context/goals/migrations/004-add-claim-columns.sql +7 -7
- package/dist/infrastructure/context/goals/migrations/005-add-progress-column.sql +4 -4
- package/dist/infrastructure/context/goals/migrations/006-drop-boundaries-and-embedded-context-columns.sql +11 -11
- package/dist/infrastructure/context/goals/migrations/007-add-title-column.sql +2 -2
- package/dist/infrastructure/context/goals/migrations/008-add-prerequisite-goals-column.sql +1 -1
- package/dist/infrastructure/context/goals/migrations/009-add-review-issues-column.sql +1 -1
- package/dist/infrastructure/context/goals/pause/SqliteGoalPausedProjector.js +7 -7
- package/dist/infrastructure/context/goals/qualify/SqliteGoalQualifiedProjector.js +9 -9
- package/dist/infrastructure/context/goals/refine/SqliteGoalRefinedProjector.js +15 -15
- package/dist/infrastructure/context/goals/reject/SqliteGoalRejectedProjector.js +10 -10
- package/dist/infrastructure/context/goals/remove/SqliteGoalRemovedProjector.js +3 -3
- package/dist/infrastructure/context/goals/reset/SqliteGoalResetProjector.js +11 -11
- package/dist/infrastructure/context/goals/resume/SqliteGoalResumedProjector.js +10 -10
- package/dist/infrastructure/context/goals/review/SqliteGoalSubmittedForReviewProjector.js +9 -9
- package/dist/infrastructure/context/goals/start/SqliteGoalStartedProjector.js +9 -9
- package/dist/infrastructure/context/goals/submit/SqliteGoalSubmittedProjector.js +9 -9
- package/dist/infrastructure/context/goals/unblock/SqliteGoalUnblockedProjector.js +7 -7
- package/dist/infrastructure/context/goals/update/SqliteGoalUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/goals/update-progress/SqliteGoalProgressUpdatedProjector.js +8 -8
- package/dist/infrastructure/context/guidelines/add/SqliteGuidelineAddedProjector.js +5 -5
- package/dist/infrastructure/context/guidelines/migrations/001-create-guideline-views.sql +22 -22
- package/dist/infrastructure/context/guidelines/remove/SqliteGuidelineRemovedProjector.js +8 -8
- package/dist/infrastructure/context/guidelines/update/SqliteGuidelineUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/invariants/add/SqliteInvariantAddedProjector.js +5 -5
- package/dist/infrastructure/context/invariants/migrations/001-create-invariant-views.sql +16 -16
- package/dist/infrastructure/context/invariants/remove/SqliteInvariantRemovedProjector.js +2 -2
- package/dist/infrastructure/context/invariants/update/SqliteInvariantUpdatedProjector.js +9 -9
- package/dist/infrastructure/context/project/init/SqliteProjectInitializedProjector.js +5 -5
- package/dist/infrastructure/context/project/migrations/001-create-project-views.sql +13 -13
- package/dist/infrastructure/context/project/migrations/002-drop-boundaries-column.sql +4 -4
- package/dist/infrastructure/context/project/update/SqliteProjectUpdatedProjector.js +4 -4
- package/dist/infrastructure/context/relations/add/SqliteRelationAddedProjector.js +12 -12
- package/dist/infrastructure/context/relations/deactivate/SqliteRelationDeactivatedProjector.js +14 -14
- package/dist/infrastructure/context/relations/migrations/001-create-relation-views.sql +28 -28
- package/dist/infrastructure/context/relations/reactivate/SqliteRelationReactivatedProjector.js +14 -14
- package/dist/infrastructure/context/relations/remove/SqliteRelationRemovedProjector.js +14 -14
- package/dist/infrastructure/context/sessions/end/SqliteSessionEndedProjector.js +8 -8
- package/dist/infrastructure/context/sessions/migrations/001-create-session-views.sql +43 -43
- package/dist/infrastructure/context/sessions/migrations/002-add-goal-lifecycle-columns.sql +7 -7
- package/dist/infrastructure/context/sessions/migrations/003-remove-session-pause-status.sql +8 -8
- package/dist/infrastructure/context/sessions/migrations/004-drop-session-summary-views.sql +5 -5
- package/dist/infrastructure/context/sessions/start/SqliteSessionStartedProjector.js +5 -5
- package/dist/infrastructure/context/value-propositions/add/SqliteValuePropositionAddedProjector.js +5 -5
- package/dist/infrastructure/context/value-propositions/migrations/001-create-value-proposition-views.sql +19 -19
- package/dist/infrastructure/context/value-propositions/remove/SqliteValuePropositionRemovedProjector.js +2 -2
- package/dist/infrastructure/context/value-propositions/update/SqliteValuePropositionUpdatedProjector.js +4 -4
- package/dist/infrastructure/host/workers/migrations/001-create-workers.sql +12 -12
- package/dist/infrastructure/persistence/MigrationRunner.js +10 -10
- package/dist/infrastructure/settings/FsSettingsInitializer.js +25 -25
- package/dist/infrastructure/settings/FsSettingsReader.js +25 -25
- package/dist/presentation/cli/commands/project/init/project.init.d.ts.map +1 -1
- package/dist/presentation/cli/commands/project/init/project.init.js +4 -1
- package/dist/presentation/cli/commands/project/init/project.init.js.map +1 -1
- package/package.json +89 -89
- package/dist/application/context/goals/complete/CompleteGoalCommand.d.ts +0 -8
- package/dist/application/context/goals/complete/CompleteGoalCommand.d.ts.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalCommand.js +0 -3
- package/dist/application/context/goals/complete/CompleteGoalCommand.js.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalCommandHandler.d.ts +0 -27
- package/dist/application/context/goals/complete/CompleteGoalCommandHandler.d.ts.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalCommandHandler.js +0 -52
- package/dist/application/context/goals/complete/CompleteGoalCommandHandler.js.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalController.d.ts +0 -9
- package/dist/application/context/goals/complete/CompleteGoalController.d.ts.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalController.js +0 -13
- package/dist/application/context/goals/complete/CompleteGoalController.js.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalRequest.d.ts +0 -10
- package/dist/application/context/goals/complete/CompleteGoalRequest.d.ts.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalRequest.js +0 -3
- package/dist/application/context/goals/complete/CompleteGoalRequest.js.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalResponse.d.ts +0 -17
- package/dist/application/context/goals/complete/CompleteGoalResponse.d.ts.map +0 -1
- package/dist/application/context/goals/complete/CompleteGoalResponse.js +0 -3
- package/dist/application/context/goals/complete/CompleteGoalResponse.js.map +0 -1
- package/dist/application/context/goals/complete/ICompleteGoalGateway.d.ts +0 -6
- package/dist/application/context/goals/complete/ICompleteGoalGateway.d.ts.map +0 -1
- package/dist/application/context/goals/complete/ICompleteGoalGateway.js +0 -3
- package/dist/application/context/goals/complete/ICompleteGoalGateway.js.map +0 -1
- package/dist/application/context/goals/complete/LocalCompleteGoalGateway.d.ts +0 -16
- package/dist/application/context/goals/complete/LocalCompleteGoalGateway.d.ts.map +0 -1
- package/dist/application/context/goals/complete/LocalCompleteGoalGateway.js +0 -49
- package/dist/application/context/goals/complete/LocalCompleteGoalGateway.js.map +0 -1
- package/dist/application/context/project/init/IInitializationProtocol.d.ts +0 -44
- package/dist/application/context/project/init/IInitializationProtocol.d.ts.map +0 -1
- package/dist/application/context/project/init/IInitializationProtocol.js +0 -14
- package/dist/application/context/project/init/IInitializationProtocol.js.map +0 -1
- package/dist/application/context/project/init/InitializationProtocol.d.ts +0 -32
- package/dist/application/context/project/init/InitializationProtocol.d.ts.map +0 -1
- package/dist/application/context/project/init/InitializationProtocol.js +0 -51
- package/dist/application/context/project/init/InitializationProtocol.js.map +0 -1
- package/dist/application/context/relations/get/GetRelationsQueryHandler.d.ts +0 -14
- package/dist/application/context/relations/get/GetRelationsQueryHandler.d.ts.map +0 -1
- package/dist/application/context/relations/get/GetRelationsQueryHandler.js +0 -19
- package/dist/application/context/relations/get/GetRelationsQueryHandler.js.map +0 -1
- package/dist/application/context/value-propositions/list/ListValuePropositionsQueryHandler.d.ts +0 -27
- package/dist/application/context/value-propositions/list/ListValuePropositionsQueryHandler.d.ts.map +0 -1
- package/dist/application/context/value-propositions/list/ListValuePropositionsQueryHandler.js +0 -32
- package/dist/application/context/value-propositions/list/ListValuePropositionsQueryHandler.js.map +0 -1
- package/dist/application/maintenance/repair/IRepairMaintenanceGateway.d.ts +0 -6
- package/dist/application/maintenance/repair/IRepairMaintenanceGateway.d.ts.map +0 -1
- package/dist/application/maintenance/repair/IRepairMaintenanceGateway.js +0 -3
- package/dist/application/maintenance/repair/IRepairMaintenanceGateway.js.map +0 -1
- package/dist/application/maintenance/repair/LocalRepairMaintenanceGateway.d.ts +0 -16
- package/dist/application/maintenance/repair/LocalRepairMaintenanceGateway.d.ts.map +0 -1
- package/dist/application/maintenance/repair/LocalRepairMaintenanceGateway.js +0 -90
- package/dist/application/maintenance/repair/LocalRepairMaintenanceGateway.js.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceController.d.ts +0 -9
- package/dist/application/maintenance/repair/RepairMaintenanceController.d.ts.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceController.js +0 -13
- package/dist/application/maintenance/repair/RepairMaintenanceController.js.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceRequest.d.ts +0 -6
- package/dist/application/maintenance/repair/RepairMaintenanceRequest.d.ts.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceRequest.js +0 -3
- package/dist/application/maintenance/repair/RepairMaintenanceRequest.js.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceResponse.d.ts +0 -9
- package/dist/application/maintenance/repair/RepairMaintenanceResponse.d.ts.map +0 -1
- package/dist/application/maintenance/repair/RepairMaintenanceResponse.js +0 -3
- package/dist/application/maintenance/repair/RepairMaintenanceResponse.js.map +0 -1
- package/dist/application/repair/IRepairGateway.d.ts +0 -6
- package/dist/application/repair/IRepairGateway.d.ts.map +0 -1
- package/dist/application/repair/IRepairGateway.js +0 -3
- package/dist/application/repair/IRepairGateway.js.map +0 -1
- package/dist/application/repair/LocalRepairGateway.d.ts +0 -16
- package/dist/application/repair/LocalRepairGateway.d.ts.map +0 -1
- package/dist/application/repair/LocalRepairGateway.js +0 -90
- package/dist/application/repair/LocalRepairGateway.js.map +0 -1
- package/dist/application/repair/RepairController.d.ts +0 -9
- package/dist/application/repair/RepairController.d.ts.map +0 -1
- package/dist/application/repair/RepairController.js +0 -13
- package/dist/application/repair/RepairController.js.map +0 -1
- package/dist/application/repair/RepairRequest.d.ts +0 -6
- package/dist/application/repair/RepairRequest.d.ts.map +0 -1
- package/dist/application/repair/RepairRequest.js +0 -3
- package/dist/application/repair/RepairRequest.js.map +0 -1
- package/dist/application/repair/RepairResponse.d.ts +0 -9
- package/dist/application/repair/RepairResponse.d.ts.map +0 -1
- package/dist/application/repair/RepairResponse.js +0 -3
- package/dist/application/repair/RepairResponse.js.map +0 -1
- package/dist/domain/project/AgentInstructions.d.ts +0 -67
- package/dist/domain/project/AgentInstructions.d.ts.map +0 -1
- package/dist/domain/project/AgentInstructions.js +0 -261
- package/dist/domain/project/AgentInstructions.js.map +0 -1
- package/dist/infrastructure/context/goals/claims/FsGoalClaimStore.d.ts +0 -33
- package/dist/infrastructure/context/goals/claims/FsGoalClaimStore.d.ts.map +0 -1
- package/dist/infrastructure/context/goals/claims/FsGoalClaimStore.js +0 -66
- package/dist/infrastructure/context/goals/claims/FsGoalClaimStore.js.map +0 -1
- package/dist/infrastructure/context/goals/get/LocalGetGoalsGateway.d.ts +0 -10
- package/dist/infrastructure/context/goals/get/LocalGetGoalsGateway.d.ts.map +0 -1
- package/dist/infrastructure/context/goals/get/LocalGetGoalsGateway.js +0 -36
- package/dist/infrastructure/context/goals/get/LocalGetGoalsGateway.js.map +0 -1
- package/dist/infrastructure/context/goals/get/LocalShowGoalGateway.d.ts +0 -10
- package/dist/infrastructure/context/goals/get/LocalShowGoalGateway.d.ts.map +0 -1
- package/dist/infrastructure/context/goals/get/LocalShowGoalGateway.js +0 -14
- package/dist/infrastructure/context/goals/get/LocalShowGoalGateway.js.map +0 -1
- package/dist/infrastructure/context/relations/get/LocalGetRelationsGateway.d.ts +0 -10
- package/dist/infrastructure/context/relations/get/LocalGetRelationsGateway.d.ts.map +0 -1
- package/dist/infrastructure/context/relations/get/LocalGetRelationsGateway.js +0 -18
- package/dist/infrastructure/context/relations/get/LocalGetRelationsGateway.js.map +0 -1
- package/dist/infrastructure/context/sessions/get/LocalGetSessionsGateway.d.ts +0 -10
- package/dist/infrastructure/context/sessions/get/LocalGetSessionsGateway.d.ts.map +0 -1
- package/dist/infrastructure/context/sessions/get/LocalGetSessionsGateway.js +0 -14
- package/dist/infrastructure/context/sessions/get/LocalGetSessionsGateway.js.map +0 -1
- package/dist/presentation/cli/commands/goals/complete/GoalCompleteOutputBuilder.d.ts +0 -29
- package/dist/presentation/cli/commands/goals/complete/GoalCompleteOutputBuilder.d.ts.map +0 -1
- package/dist/presentation/cli/commands/goals/complete/GoalCompleteOutputBuilder.js +0 -105
- package/dist/presentation/cli/commands/goals/complete/GoalCompleteOutputBuilder.js.map +0 -1
- package/dist/presentation/cli/commands/goals/complete/goal.complete.d.ts +0 -20
- package/dist/presentation/cli/commands/goals/complete/goal.complete.d.ts.map +0 -1
- package/dist/presentation/cli/commands/goals/complete/goal.complete.js +0 -58
- package/dist/presentation/cli/commands/goals/complete/goal.complete.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/db/rebuild/db.rebuild.d.ts +0 -26
- package/dist/presentation/cli/commands/maintenance/db/rebuild/db.rebuild.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/db/rebuild/db.rebuild.js +0 -68
- package/dist/presentation/cli/commands/maintenance/db/rebuild/db.rebuild.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/MigrateDependenciesOutputBuilder.d.ts +0 -14
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/MigrateDependenciesOutputBuilder.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/MigrateDependenciesOutputBuilder.js +0 -61
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/MigrateDependenciesOutputBuilder.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/dependency.migrate.d.ts +0 -23
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/dependency.migrate.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/dependency.migrate.js +0 -59
- package/dist/presentation/cli/commands/maintenance/migrate-dependencies/dependency.migrate.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/repair/RepairOutputBuilder.d.ts +0 -24
- package/dist/presentation/cli/commands/maintenance/repair/RepairOutputBuilder.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/repair/RepairOutputBuilder.js +0 -49
- package/dist/presentation/cli/commands/maintenance/repair/RepairOutputBuilder.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/repair/maintenance.repair.d.ts +0 -27
- package/dist/presentation/cli/commands/maintenance/repair/maintenance.repair.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/repair/maintenance.repair.js +0 -85
- package/dist/presentation/cli/commands/maintenance/repair/maintenance.repair.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/upgrade/UpgradeOutputBuilder.d.ts +0 -16
- package/dist/presentation/cli/commands/maintenance/upgrade/UpgradeOutputBuilder.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/upgrade/UpgradeOutputBuilder.js +0 -40
- package/dist/presentation/cli/commands/maintenance/upgrade/UpgradeOutputBuilder.js.map +0 -1
- package/dist/presentation/cli/commands/maintenance/upgrade/db.upgrade.d.ts +0 -26
- package/dist/presentation/cli/commands/maintenance/upgrade/db.upgrade.d.ts.map +0 -1
- package/dist/presentation/cli/commands/maintenance/upgrade/db.upgrade.js +0 -64
- package/dist/presentation/cli/commands/maintenance/upgrade/db.upgrade.js.map +0 -1
- package/dist/presentation/cli/commands/repair/RepairOutputBuilder.d.ts +0 -24
- package/dist/presentation/cli/commands/repair/RepairOutputBuilder.d.ts.map +0 -1
- package/dist/presentation/cli/commands/repair/RepairOutputBuilder.js +0 -50
- package/dist/presentation/cli/commands/repair/RepairOutputBuilder.js.map +0 -1
- package/dist/presentation/cli/commands/repair/repair.d.ts +0 -31
- package/dist/presentation/cli/commands/repair/repair.d.ts.map +0 -1
- package/dist/presentation/cli/commands/repair/repair.js +0 -88
- package/dist/presentation/cli/commands/repair/repair.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
-- Drop orphaned session_summary_views table.
|
|
2
|
-
-- SessionSummaryProjection was replaced by query-time assembled SessionContext
|
|
3
|
-
-- in the V2 namespace remodel. No code reads or writes this table anymore.
|
|
4
|
-
|
|
5
|
-
DROP TABLE IF EXISTS session_summary_views;
|
|
1
|
+
-- Drop orphaned session_summary_views table.
|
|
2
|
+
-- SessionSummaryProjection was replaced by query-time assembled SessionContext
|
|
3
|
+
-- in the V2 namespace remodel. No code reads or writes this table anymore.
|
|
4
|
+
|
|
5
|
+
DROP TABLE IF EXISTS session_summary_views;
|
|
@@ -12,11 +12,11 @@ class SqliteSessionStartedProjector {
|
|
|
12
12
|
this.db = db;
|
|
13
13
|
}
|
|
14
14
|
async applySessionStarted(event) {
|
|
15
|
-
const stmt = this.db.prepare(`
|
|
16
|
-
INSERT OR REPLACE INTO session_views (
|
|
17
|
-
sessionId, focus, status, contextSnapshot,
|
|
18
|
-
version, startedAt, endedAt, createdAt, updatedAt
|
|
19
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
15
|
+
const stmt = this.db.prepare(`
|
|
16
|
+
INSERT OR REPLACE INTO session_views (
|
|
17
|
+
sessionId, focus, status, contextSnapshot,
|
|
18
|
+
version, startedAt, endedAt, createdAt, updatedAt
|
|
19
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
20
20
|
`);
|
|
21
21
|
stmt.run(event.aggregateId, null, // Focus is set at session end, not start
|
|
22
22
|
"active", null, // No context snapshot anymore
|
package/dist/infrastructure/context/value-propositions/add/SqliteValuePropositionAddedProjector.js
CHANGED
|
@@ -12,11 +12,11 @@ class SqliteValuePropositionAddedProjector {
|
|
|
12
12
|
this.db = db;
|
|
13
13
|
}
|
|
14
14
|
async applyValuePropositionAdded(event) {
|
|
15
|
-
const stmt = this.db.prepare(`
|
|
16
|
-
INSERT OR REPLACE INTO value_proposition_views (
|
|
17
|
-
valuePropositionId, title, description, benefit,
|
|
18
|
-
measurableOutcome, version, createdAt, updatedAt
|
|
19
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
15
|
+
const stmt = this.db.prepare(`
|
|
16
|
+
INSERT OR REPLACE INTO value_proposition_views (
|
|
17
|
+
valuePropositionId, title, description, benefit,
|
|
18
|
+
measurableOutcome, version, createdAt, updatedAt
|
|
19
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
20
20
|
`);
|
|
21
21
|
stmt.run(event.aggregateId, event.payload.title, event.payload.description, event.payload.benefit, event.payload.measurableOutcome, event.version, event.timestamp, event.timestamp);
|
|
22
22
|
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
-- Value proposition views table for materialized projections
|
|
2
|
-
-- Namespace: project-knowledge/value-propositions
|
|
3
|
-
|
|
4
|
-
CREATE TABLE IF NOT EXISTS value_proposition_views (
|
|
5
|
-
valuePropositionId TEXT PRIMARY KEY,
|
|
6
|
-
title TEXT NOT NULL,
|
|
7
|
-
description TEXT NOT NULL,
|
|
8
|
-
benefit TEXT NOT NULL,
|
|
9
|
-
measurableOutcome TEXT,
|
|
10
|
-
version INTEGER NOT NULL,
|
|
11
|
-
createdAt TEXT NOT NULL,
|
|
12
|
-
updatedAt TEXT NOT NULL
|
|
13
|
-
);
|
|
14
|
-
|
|
15
|
-
-- Indexes for common queries
|
|
16
|
-
CREATE INDEX IF NOT EXISTS idx_value_proposition_title
|
|
17
|
-
ON value_proposition_views(title);
|
|
18
|
-
CREATE INDEX IF NOT EXISTS idx_value_proposition_created
|
|
19
|
-
ON value_proposition_views(createdAt);
|
|
1
|
+
-- Value proposition views table for materialized projections
|
|
2
|
+
-- Namespace: project-knowledge/value-propositions
|
|
3
|
+
|
|
4
|
+
CREATE TABLE IF NOT EXISTS value_proposition_views (
|
|
5
|
+
valuePropositionId TEXT PRIMARY KEY,
|
|
6
|
+
title TEXT NOT NULL,
|
|
7
|
+
description TEXT NOT NULL,
|
|
8
|
+
benefit TEXT NOT NULL,
|
|
9
|
+
measurableOutcome TEXT,
|
|
10
|
+
version INTEGER NOT NULL,
|
|
11
|
+
createdAt TEXT NOT NULL,
|
|
12
|
+
updatedAt TEXT NOT NULL
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
-- Indexes for common queries
|
|
16
|
+
CREATE INDEX IF NOT EXISTS idx_value_proposition_title
|
|
17
|
+
ON value_proposition_views(title);
|
|
18
|
+
CREATE INDEX IF NOT EXISTS idx_value_proposition_created
|
|
19
|
+
ON value_proposition_views(createdAt);
|
|
@@ -12,8 +12,8 @@ class SqliteValuePropositionRemovedProjector {
|
|
|
12
12
|
this.db = db;
|
|
13
13
|
}
|
|
14
14
|
async applyValuePropositionRemoved(event) {
|
|
15
|
-
const stmt = this.db.prepare(`
|
|
16
|
-
DELETE FROM value_proposition_views WHERE valuePropositionId = ?
|
|
15
|
+
const stmt = this.db.prepare(`
|
|
16
|
+
DELETE FROM value_proposition_views WHERE valuePropositionId = ?
|
|
17
17
|
`);
|
|
18
18
|
stmt.run(event.aggregateId);
|
|
19
19
|
}
|
|
@@ -35,10 +35,10 @@ class SqliteValuePropositionUpdatedProjector {
|
|
|
35
35
|
updates.push("version = ?");
|
|
36
36
|
updates.push("updatedAt = ?");
|
|
37
37
|
values.push(event.version, event.timestamp, event.aggregateId);
|
|
38
|
-
const stmt = this.db.prepare(`
|
|
39
|
-
UPDATE value_proposition_views
|
|
40
|
-
SET ${updates.join(", ")}
|
|
41
|
-
WHERE valuePropositionId = ?
|
|
38
|
+
const stmt = this.db.prepare(`
|
|
39
|
+
UPDATE value_proposition_views
|
|
40
|
+
SET ${updates.join(", ")}
|
|
41
|
+
WHERE valuePropositionId = ?
|
|
42
42
|
`);
|
|
43
43
|
stmt.run(...values);
|
|
44
44
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
-- Workers table for worker identity persistence
|
|
2
|
-
-- Namespace: host/workers
|
|
3
|
-
|
|
4
|
-
CREATE TABLE IF NOT EXISTS workers (
|
|
5
|
-
workerId TEXT PRIMARY KEY,
|
|
6
|
-
hostSessionKey TEXT NOT NULL UNIQUE,
|
|
7
|
-
mode TEXT,
|
|
8
|
-
createdAt TEXT NOT NULL,
|
|
9
|
-
lastSeenAt TEXT NOT NULL
|
|
10
|
-
);
|
|
11
|
-
|
|
12
|
-
CREATE INDEX IF NOT EXISTS idx_workers_host_session_key ON workers(hostSessionKey);
|
|
1
|
+
-- Workers table for worker identity persistence
|
|
2
|
+
-- Namespace: host/workers
|
|
3
|
+
|
|
4
|
+
CREATE TABLE IF NOT EXISTS workers (
|
|
5
|
+
workerId TEXT PRIMARY KEY,
|
|
6
|
+
hostSessionKey TEXT NOT NULL UNIQUE,
|
|
7
|
+
mode TEXT,
|
|
8
|
+
createdAt TEXT NOT NULL,
|
|
9
|
+
lastSeenAt TEXT NOT NULL
|
|
10
|
+
);
|
|
11
|
+
|
|
12
|
+
CREATE INDEX IF NOT EXISTS idx_workers_host_session_key ON workers(hostSessionKey);
|
|
@@ -40,15 +40,15 @@ class MigrationRunner {
|
|
|
40
40
|
* namespace-specific versioning.
|
|
41
41
|
*/
|
|
42
42
|
ensureMigrationsTable() {
|
|
43
|
-
this.db.exec(`
|
|
44
|
-
CREATE TABLE IF NOT EXISTS schema_migrations (
|
|
45
|
-
namespace TEXT NOT NULL,
|
|
46
|
-
version INTEGER NOT NULL,
|
|
47
|
-
name TEXT NOT NULL,
|
|
48
|
-
applied_at TEXT NOT NULL,
|
|
49
|
-
checksum TEXT,
|
|
50
|
-
PRIMARY KEY (namespace, version)
|
|
51
|
-
);
|
|
43
|
+
this.db.exec(`
|
|
44
|
+
CREATE TABLE IF NOT EXISTS schema_migrations (
|
|
45
|
+
namespace TEXT NOT NULL,
|
|
46
|
+
version INTEGER NOT NULL,
|
|
47
|
+
name TEXT NOT NULL,
|
|
48
|
+
applied_at TEXT NOT NULL,
|
|
49
|
+
checksum TEXT,
|
|
50
|
+
PRIMARY KEY (namespace, version)
|
|
51
|
+
);
|
|
52
52
|
`);
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
@@ -146,7 +146,7 @@ class MigrationRunner {
|
|
|
146
146
|
this.db.exec(sql);
|
|
147
147
|
// Record migration as applied
|
|
148
148
|
this.db
|
|
149
|
-
.prepare(`INSERT INTO schema_migrations (namespace, version, name, applied_at, checksum)
|
|
149
|
+
.prepare(`INSERT INTO schema_migrations (namespace, version, name, applied_at, checksum)
|
|
150
150
|
VALUES (?, ?, ?, ?, ?)`)
|
|
151
151
|
.run(migration.namespace, migration.version, migration.name, new Date().toISOString(), checksum);
|
|
152
152
|
})();
|
|
@@ -21,31 +21,31 @@ class FsSettingsInitializer {
|
|
|
21
21
|
if (await fs_extra_1.default.pathExists(this.settingsFilePath)) {
|
|
22
22
|
return;
|
|
23
23
|
}
|
|
24
|
-
const content = `{
|
|
25
|
-
// Quality Assurance settings for goal completion
|
|
26
|
-
"qa": {
|
|
27
|
-
// Default turn limit for QA iterations on goal completion
|
|
28
|
-
// When this limit is reached, the goal is automatically completed
|
|
29
|
-
"defaultTurnLimit": 3
|
|
30
|
-
},
|
|
31
|
-
|
|
32
|
-
// Claim settings for goal ownership and concurrency control
|
|
33
|
-
"claims": {
|
|
34
|
-
// Duration in minutes that a goal claim remains valid
|
|
35
|
-
// After this duration, the claim expires and another worker can claim the goal
|
|
36
|
-
"claimDurationMinutes": 30
|
|
37
|
-
},
|
|
38
|
-
|
|
39
|
-
// Telemetry consent and anonymous identity settings
|
|
40
|
-
"telemetry": {
|
|
41
|
-
// Whether anonymous usage telemetry is enabled (opt-out model)
|
|
42
|
-
"enabled": true,
|
|
43
|
-
// Anonymous identifier used for telemetry events after consent
|
|
44
|
-
"anonymousId": null,
|
|
45
|
-
// Whether the user has explicitly made a telemetry consent decision
|
|
46
|
-
"consentGiven": false
|
|
47
|
-
}
|
|
48
|
-
}
|
|
24
|
+
const content = `{
|
|
25
|
+
// Quality Assurance settings for goal completion
|
|
26
|
+
"qa": {
|
|
27
|
+
// Default turn limit for QA iterations on goal completion
|
|
28
|
+
// When this limit is reached, the goal is automatically completed
|
|
29
|
+
"defaultTurnLimit": 3
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
// Claim settings for goal ownership and concurrency control
|
|
33
|
+
"claims": {
|
|
34
|
+
// Duration in minutes that a goal claim remains valid
|
|
35
|
+
// After this duration, the claim expires and another worker can claim the goal
|
|
36
|
+
"claimDurationMinutes": 30
|
|
37
|
+
},
|
|
38
|
+
|
|
39
|
+
// Telemetry consent and anonymous identity settings
|
|
40
|
+
"telemetry": {
|
|
41
|
+
// Whether anonymous usage telemetry is enabled (opt-out model)
|
|
42
|
+
"enabled": true,
|
|
43
|
+
// Anonymous identifier used for telemetry events after consent
|
|
44
|
+
"anonymousId": null,
|
|
45
|
+
// Whether the user has explicitly made a telemetry consent decision
|
|
46
|
+
"consentGiven": false
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
49
|
`;
|
|
50
50
|
await fs_extra_1.default.writeFile(this.settingsFilePath, content, "utf-8");
|
|
51
51
|
}
|
|
@@ -124,31 +124,31 @@ class FsSettingsReader {
|
|
|
124
124
|
const anonymousIdValue = settings.telemetry.anonymousId === null
|
|
125
125
|
? "null"
|
|
126
126
|
: `"${settings.telemetry.anonymousId}"`;
|
|
127
|
-
return `{
|
|
128
|
-
// Quality Assurance settings for goal completion
|
|
129
|
-
"qa": {
|
|
130
|
-
// Default turn limit for QA iterations on goal completion
|
|
131
|
-
// When this limit is reached, the goal is automatically completed
|
|
132
|
-
"defaultTurnLimit": ${settings.qa.defaultTurnLimit}
|
|
133
|
-
},
|
|
134
|
-
|
|
135
|
-
// Claim settings for goal ownership and concurrency control
|
|
136
|
-
"claims": {
|
|
137
|
-
// Duration in minutes that a goal claim remains valid
|
|
138
|
-
// After this duration, the claim expires and another worker can claim the goal
|
|
139
|
-
"claimDurationMinutes": ${settings.claims.claimDurationMinutes}
|
|
140
|
-
},
|
|
141
|
-
|
|
142
|
-
// Telemetry consent and anonymous identity settings
|
|
143
|
-
"telemetry": {
|
|
144
|
-
// Whether anonymous usage telemetry is enabled (opt-out model)
|
|
145
|
-
"enabled": ${settings.telemetry.enabled},
|
|
146
|
-
// Anonymous identifier used for telemetry events after consent
|
|
147
|
-
"anonymousId": ${anonymousIdValue},
|
|
148
|
-
// Whether the user has explicitly made a telemetry consent decision
|
|
149
|
-
"consentGiven": ${settings.telemetry.consentGiven}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
127
|
+
return `{
|
|
128
|
+
// Quality Assurance settings for goal completion
|
|
129
|
+
"qa": {
|
|
130
|
+
// Default turn limit for QA iterations on goal completion
|
|
131
|
+
// When this limit is reached, the goal is automatically completed
|
|
132
|
+
"defaultTurnLimit": ${settings.qa.defaultTurnLimit}
|
|
133
|
+
},
|
|
134
|
+
|
|
135
|
+
// Claim settings for goal ownership and concurrency control
|
|
136
|
+
"claims": {
|
|
137
|
+
// Duration in minutes that a goal claim remains valid
|
|
138
|
+
// After this duration, the claim expires and another worker can claim the goal
|
|
139
|
+
"claimDurationMinutes": ${settings.claims.claimDurationMinutes}
|
|
140
|
+
},
|
|
141
|
+
|
|
142
|
+
// Telemetry consent and anonymous identity settings
|
|
143
|
+
"telemetry": {
|
|
144
|
+
// Whether anonymous usage telemetry is enabled (opt-out model)
|
|
145
|
+
"enabled": ${settings.telemetry.enabled},
|
|
146
|
+
// Anonymous identifier used for telemetry events after consent
|
|
147
|
+
"anonymousId": ${anonymousIdValue},
|
|
148
|
+
// Whether the user has explicitly made a telemetry consent decision
|
|
149
|
+
"consentGiven": ${settings.telemetry.consentGiven}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
152
|
`;
|
|
153
153
|
}
|
|
154
154
|
async readRawSettings() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.init.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/project/init/project.init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAqDjG;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,eAsCtB,CAAC;AA4FF;;GAEG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE;IACP,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,EACD,SAAS,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"project.init.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/project/init/project.init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAqDjG;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,eAsCtB,CAAC;AA4FF;;GAEG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE;IACP,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,EACD,SAAS,EAAE,qBAAqB,iBAkFjC"}
|
|
@@ -235,6 +235,9 @@ async function projectInit(options, container) {
|
|
|
235
235
|
}
|
|
236
236
|
renderer.success("Welcome to Jumbo! Project initialized successfully.", data);
|
|
237
237
|
renderer.info("");
|
|
238
|
-
renderer.info("Next steps:
|
|
238
|
+
renderer.info("Next steps: Create your first goal then start your coding agent.");
|
|
239
|
+
renderer.info("Jumbo will guide you, then your agent, through everything.");
|
|
240
|
+
renderer.info("Run 'jumbo goal add --help' to see available options for creating your first goal.");
|
|
241
|
+
renderer.info("Example: 'jumbo goal add --title \"Set up database\" --objective \"Install PostgreSQL and create initial schema\" --criteria \"Database installed\" \"Initial schema created\" \"Migrations set up\"'");
|
|
239
242
|
}
|
|
240
243
|
//# sourceMappingURL=project.init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.init.js","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/project/init/project.init.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;AAkMH,
|
|
1
|
+
{"version":3,"file":"project.init.js","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/project/init/project.init.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "jumbo-cli",
|
|
3
|
-
"version": "2.0.
|
|
4
|
-
"description": "Memory and Context Orchestration for Coding Agents",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"cli",
|
|
7
|
-
"command-line",
|
|
8
|
-
"coding-agent-context",
|
|
9
|
-
"terminal",
|
|
10
|
-
"agent-context",
|
|
11
|
-
"ai-agent-context",
|
|
12
|
-
"llm-agent-context",
|
|
13
|
-
"coding-agent-memory",
|
|
14
|
-
"agent-memory",
|
|
15
|
-
"ai-agent-memory",
|
|
16
|
-
"llm-agent-memory",
|
|
17
|
-
"context-engineering",
|
|
18
|
-
"developer-tools"
|
|
19
|
-
],
|
|
20
|
-
"homepage": "https://jumbocontext.com",
|
|
21
|
-
"bugs": {
|
|
22
|
-
"url": "https://github.com/jumbocontext/jumbo.cli/issues"
|
|
23
|
-
},
|
|
24
|
-
"repository": {
|
|
25
|
-
"type": "git",
|
|
26
|
-
"url": "git+https://github.com/jumbocontext/jumbo.cli.git"
|
|
27
|
-
},
|
|
28
|
-
"license": "AGPL-3.0",
|
|
29
|
-
"author": "Josh Wheelock <hello@jumbocontext.com> (https://jumbocontext.com)",
|
|
30
|
-
"main": "dist/index.js",
|
|
31
|
-
"bin": {
|
|
32
|
-
"jumbo": "dist/cli.js"
|
|
33
|
-
},
|
|
34
|
-
"files": [
|
|
35
|
-
"dist",
|
|
36
|
-
"assets"
|
|
37
|
-
],
|
|
38
|
-
"scripts": {
|
|
39
|
-
"generate:commands": "node build/generate-command-registry.mjs",
|
|
40
|
-
"prebuild": "npm run generate:commands",
|
|
41
|
-
"build": "tsc && npm run copy:migrations",
|
|
42
|
-
"copy:migrations": "node build/copy-migrations.mjs",
|
|
43
|
-
"dev": "tsc --watch",
|
|
44
|
-
"test": "jest",
|
|
45
|
-
"lint": "eslint --config eslint.config.mjs \"src/**/*.ts\"",
|
|
46
|
-
"format": "prettier --write \"src/**/*.ts\"",
|
|
47
|
-
"prepublishOnly": "npm run build",
|
|
48
|
-
"clean:testdata": "rm -rf .jumbo test-integration-*"
|
|
49
|
-
},
|
|
50
|
-
"dependencies": {
|
|
51
|
-
"better-sqlite3": "^12.4.1",
|
|
52
|
-
"boxen": "^8.0.1",
|
|
53
|
-
"chalk": "^4.1.2",
|
|
54
|
-
"commander": "^11.1.0",
|
|
55
|
-
"date-fns": "^3.0.6",
|
|
56
|
-
"fast-glob": "^3.3.2",
|
|
57
|
-
"fs-extra": "^11.3.2",
|
|
58
|
-
"ink": "^3.2.0",
|
|
59
|
-
"inquirer": "^8.2.5",
|
|
60
|
-
"inversify": "^7.10.4",
|
|
61
|
-
"jsonc-parser": "^3.3.1",
|
|
62
|
-
"posthog-node": "^5.21.2",
|
|
63
|
-
"react": "^17.0.2",
|
|
64
|
-
"react-dom": "^17.0.2",
|
|
65
|
-
"reflect-metadata": "^0.2.2",
|
|
66
|
-
"strip-ansi": "^6.0.1",
|
|
67
|
-
"ulid": "^2.3.0",
|
|
68
|
-
"uuid": "^13.0.0",
|
|
69
|
-
"yaml": "^2.8.1"
|
|
70
|
-
},
|
|
71
|
-
"devDependencies": {
|
|
72
|
-
"@eslint/js": "^9.0.0",
|
|
73
|
-
"@types/better-sqlite3": "^7.6.13",
|
|
74
|
-
"@types/fs-extra": "^11.0.4",
|
|
75
|
-
"@types/inquirer": "^8.2.10",
|
|
76
|
-
"@types/jest": "^29.5.11",
|
|
77
|
-
"@types/node": "^20.19.19",
|
|
78
|
-
"@types/uuid": "^10.0.0",
|
|
79
|
-
"eslint": "^9.0.0",
|
|
80
|
-
"jest": "^29.7.0",
|
|
81
|
-
"prettier": "^3.1.1",
|
|
82
|
-
"ts-jest": "^29.1.1",
|
|
83
|
-
"typescript": "^5.9.3",
|
|
84
|
-
"typescript-eslint": "^8.0.0"
|
|
85
|
-
},
|
|
86
|
-
"engines": {
|
|
87
|
-
"node": ">=18.18.0"
|
|
88
|
-
}
|
|
89
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "jumbo-cli",
|
|
3
|
+
"version": "2.0.2",
|
|
4
|
+
"description": "Memory and Context Orchestration for Coding Agents",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"cli",
|
|
7
|
+
"command-line",
|
|
8
|
+
"coding-agent-context",
|
|
9
|
+
"terminal",
|
|
10
|
+
"agent-context",
|
|
11
|
+
"ai-agent-context",
|
|
12
|
+
"llm-agent-context",
|
|
13
|
+
"coding-agent-memory",
|
|
14
|
+
"agent-memory",
|
|
15
|
+
"ai-agent-memory",
|
|
16
|
+
"llm-agent-memory",
|
|
17
|
+
"context-engineering",
|
|
18
|
+
"developer-tools"
|
|
19
|
+
],
|
|
20
|
+
"homepage": "https://jumbocontext.com",
|
|
21
|
+
"bugs": {
|
|
22
|
+
"url": "https://github.com/jumbocontext/jumbo.cli/issues"
|
|
23
|
+
},
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "git+https://github.com/jumbocontext/jumbo.cli.git"
|
|
27
|
+
},
|
|
28
|
+
"license": "AGPL-3.0",
|
|
29
|
+
"author": "Josh Wheelock <hello@jumbocontext.com> (https://jumbocontext.com)",
|
|
30
|
+
"main": "dist/index.js",
|
|
31
|
+
"bin": {
|
|
32
|
+
"jumbo": "dist/cli.js"
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"dist",
|
|
36
|
+
"assets"
|
|
37
|
+
],
|
|
38
|
+
"scripts": {
|
|
39
|
+
"generate:commands": "node build/generate-command-registry.mjs",
|
|
40
|
+
"prebuild": "npm run generate:commands",
|
|
41
|
+
"build": "tsc && npm run copy:migrations",
|
|
42
|
+
"copy:migrations": "node build/copy-migrations.mjs",
|
|
43
|
+
"dev": "tsc --watch",
|
|
44
|
+
"test": "jest",
|
|
45
|
+
"lint": "eslint --config eslint.config.mjs \"src/**/*.ts\"",
|
|
46
|
+
"format": "prettier --write \"src/**/*.ts\"",
|
|
47
|
+
"prepublishOnly": "npm run build",
|
|
48
|
+
"clean:testdata": "rm -rf .jumbo test-integration-*"
|
|
49
|
+
},
|
|
50
|
+
"dependencies": {
|
|
51
|
+
"better-sqlite3": "^12.4.1",
|
|
52
|
+
"boxen": "^8.0.1",
|
|
53
|
+
"chalk": "^4.1.2",
|
|
54
|
+
"commander": "^11.1.0",
|
|
55
|
+
"date-fns": "^3.0.6",
|
|
56
|
+
"fast-glob": "^3.3.2",
|
|
57
|
+
"fs-extra": "^11.3.2",
|
|
58
|
+
"ink": "^3.2.0",
|
|
59
|
+
"inquirer": "^8.2.5",
|
|
60
|
+
"inversify": "^7.10.4",
|
|
61
|
+
"jsonc-parser": "^3.3.1",
|
|
62
|
+
"posthog-node": "^5.21.2",
|
|
63
|
+
"react": "^17.0.2",
|
|
64
|
+
"react-dom": "^17.0.2",
|
|
65
|
+
"reflect-metadata": "^0.2.2",
|
|
66
|
+
"strip-ansi": "^6.0.1",
|
|
67
|
+
"ulid": "^2.3.0",
|
|
68
|
+
"uuid": "^13.0.0",
|
|
69
|
+
"yaml": "^2.8.1"
|
|
70
|
+
},
|
|
71
|
+
"devDependencies": {
|
|
72
|
+
"@eslint/js": "^9.0.0",
|
|
73
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
74
|
+
"@types/fs-extra": "^11.0.4",
|
|
75
|
+
"@types/inquirer": "^8.2.10",
|
|
76
|
+
"@types/jest": "^29.5.11",
|
|
77
|
+
"@types/node": "^20.19.19",
|
|
78
|
+
"@types/uuid": "^10.0.0",
|
|
79
|
+
"eslint": "^9.0.0",
|
|
80
|
+
"jest": "^29.7.0",
|
|
81
|
+
"prettier": "^3.1.1",
|
|
82
|
+
"ts-jest": "^29.1.1",
|
|
83
|
+
"typescript": "^5.9.3",
|
|
84
|
+
"typescript-eslint": "^8.0.0"
|
|
85
|
+
},
|
|
86
|
+
"engines": {
|
|
87
|
+
"node": ">=18.18.0"
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompleteGoalCommand.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/complete/CompleteGoalCommand.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompleteGoalCommand.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/complete/CompleteGoalCommand.ts"],"names":[],"mappings":""}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { CompleteGoalCommand } from "./CompleteGoalCommand.js";
|
|
2
|
-
import { IGoalCompletedEventWriter } from "./IGoalCompletedEventWriter.js";
|
|
3
|
-
import { IGoalCompletedEventReader } from "./IGoalCompletedEventReader.js";
|
|
4
|
-
import { IGoalCompleteReader } from "./IGoalCompleteReader.js";
|
|
5
|
-
import { IEventBus } from "../../../messaging/IEventBus.js";
|
|
6
|
-
import { GoalClaimPolicy } from "../claims/GoalClaimPolicy.js";
|
|
7
|
-
import { IWorkerIdentityReader } from "../../../host/workers/IWorkerIdentityReader.js";
|
|
8
|
-
import { GoalContextQueryHandler } from "../get/GoalContextQueryHandler.js";
|
|
9
|
-
import { ContextualGoalView } from "../get/ContextualGoalView.js";
|
|
10
|
-
/**
|
|
11
|
-
* Handles completion of a goal.
|
|
12
|
-
* Loads aggregate from event history, calls domain logic, persists event.
|
|
13
|
-
* Releases goal claims on successful completion.
|
|
14
|
-
* Returns ContextualGoalView for presentation layer.
|
|
15
|
-
*/
|
|
16
|
-
export declare class CompleteGoalCommandHandler {
|
|
17
|
-
private readonly eventWriter;
|
|
18
|
-
private readonly eventReader;
|
|
19
|
-
private readonly goalReader;
|
|
20
|
-
private readonly eventBus;
|
|
21
|
-
private readonly claimPolicy;
|
|
22
|
-
private readonly workerIdentityReader;
|
|
23
|
-
private readonly goalContextQueryHandler;
|
|
24
|
-
constructor(eventWriter: IGoalCompletedEventWriter, eventReader: IGoalCompletedEventReader, goalReader: IGoalCompleteReader, eventBus: IEventBus, claimPolicy: GoalClaimPolicy, workerIdentityReader: IWorkerIdentityReader, goalContextQueryHandler: GoalContextQueryHandler);
|
|
25
|
-
execute(command: CompleteGoalCommand): Promise<ContextualGoalView>;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=CompleteGoalCommandHandler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompleteGoalCommandHandler.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/complete/CompleteGoalCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE;;;;;GAKG;AACH,qBAAa,0BAA0B;IAEnC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;gBANvB,WAAW,EAAE,yBAAyB,EACtC,WAAW,EAAE,yBAAyB,EACtC,UAAU,EAAE,mBAAmB,EAC/B,QAAQ,EAAE,SAAS,EACnB,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,uBAAuB,EAAE,uBAAuB;IAG7D,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAuCzE"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CompleteGoalCommandHandler = void 0;
|
|
4
|
-
const Goal_js_1 = require("../../../../domain/goals/Goal.js");
|
|
5
|
-
const Constants_js_1 = require("../../../../domain/goals/Constants.js");
|
|
6
|
-
/**
|
|
7
|
-
* Handles completion of a goal.
|
|
8
|
-
* Loads aggregate from event history, calls domain logic, persists event.
|
|
9
|
-
* Releases goal claims on successful completion.
|
|
10
|
-
* Returns ContextualGoalView for presentation layer.
|
|
11
|
-
*/
|
|
12
|
-
class CompleteGoalCommandHandler {
|
|
13
|
-
constructor(eventWriter, eventReader, goalReader, eventBus, claimPolicy, workerIdentityReader, goalContextQueryHandler) {
|
|
14
|
-
this.eventWriter = eventWriter;
|
|
15
|
-
this.eventReader = eventReader;
|
|
16
|
-
this.goalReader = goalReader;
|
|
17
|
-
this.eventBus = eventBus;
|
|
18
|
-
this.claimPolicy = claimPolicy;
|
|
19
|
-
this.workerIdentityReader = workerIdentityReader;
|
|
20
|
-
this.goalContextQueryHandler = goalContextQueryHandler;
|
|
21
|
-
}
|
|
22
|
-
async execute(command) {
|
|
23
|
-
// 1. Check goal exists (query projection for fast check)
|
|
24
|
-
const view = await this.goalReader.findById(command.goalId);
|
|
25
|
-
if (!view) {
|
|
26
|
-
throw new Error((0, Constants_js_1.formatErrorMessage)(Constants_js_1.GoalErrorMessages.GOAL_NOT_FOUND, { id: command.goalId }));
|
|
27
|
-
}
|
|
28
|
-
// 2. Validate claim ownership - only the claimant can complete a goal
|
|
29
|
-
const workerId = this.workerIdentityReader.workerId;
|
|
30
|
-
const claimValidation = this.claimPolicy.canClaim(command.goalId, workerId);
|
|
31
|
-
if (!claimValidation.allowed) {
|
|
32
|
-
throw new Error((0, Constants_js_1.formatErrorMessage)(Constants_js_1.GoalErrorMessages.GOAL_CLAIMED_BY_ANOTHER_WORKER, {
|
|
33
|
-
expiresAt: claimValidation.existingClaim.claimExpiresAt,
|
|
34
|
-
}));
|
|
35
|
-
}
|
|
36
|
-
// 3. Rehydrate aggregate from event history (event sourcing)
|
|
37
|
-
const history = await this.eventReader.readStream(command.goalId);
|
|
38
|
-
const goal = Goal_js_1.Goal.rehydrate(command.goalId, history);
|
|
39
|
-
// 4. Domain logic produces event (validates state)
|
|
40
|
-
const event = goal.complete();
|
|
41
|
-
// 5. Persist event to file store
|
|
42
|
-
await this.eventWriter.append(event);
|
|
43
|
-
// 6. Release claim after successful completion
|
|
44
|
-
this.claimPolicy.releaseClaim(command.goalId);
|
|
45
|
-
// 7. Publish event to bus (projections will update via subscriptions)
|
|
46
|
-
await this.eventBus.publish(event);
|
|
47
|
-
// 8. Query goal context
|
|
48
|
-
return this.goalContextQueryHandler.execute(command.goalId);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
exports.CompleteGoalCommandHandler = CompleteGoalCommandHandler;
|
|
52
|
-
//# sourceMappingURL=CompleteGoalCommandHandler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CompleteGoalCommandHandler.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/complete/CompleteGoalCommandHandler.ts"],"names":[],"mappings":";;;AAKA,8DAAwD;AACxD,wEAA8F;AAM9F;;;;;GAKG;AACH,MAAa,0BAA0B;IACrC,YACmB,WAAsC,EACtC,WAAsC,EACtC,UAA+B,EAC/B,QAAmB,EACnB,WAA4B,EAC5B,oBAA2C,EAC3C,uBAAgD;QANhD,gBAAW,GAAX,WAAW,CAA2B;QACtC,gBAAW,GAAX,WAAW,CAA2B;QACtC,eAAU,GAAV,UAAU,CAAqB;QAC/B,aAAQ,GAAR,QAAQ,CAAW;QACnB,gBAAW,GAAX,WAAW,CAAiB;QAC5B,yBAAoB,GAApB,oBAAoB,CAAuB;QAC3C,4BAAuB,GAAvB,uBAAuB,CAAyB;IAChE,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA4B;QACxC,yDAAyD;QACzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,gCAAiB,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAC7E,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC5E,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,gCAAiB,CAAC,8BAA8B,EAAE;gBACnE,SAAS,EAAE,eAAe,CAAC,aAAa,CAAC,cAAc;aACxD,CAAC,CACH,CAAC;QACJ,CAAC;QAED,6DAA6D;QAC7D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,cAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,OAAc,CAAC,CAAC;QAE5D,mDAAmD;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,iCAAiC;QACjC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAErC,+CAA+C;QAC/C,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE9C,sEAAsE;QACtE,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAEnC,wBAAwB;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CACF;AAlDD,gEAkDC"}
|