jumbo-cli 2.8.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +1 -0
  2. package/assets/skills/define-jumbo-goals/SKILL.md +2 -0
  3. package/assets/skills/jumbo-design-goal/SKILL.md +123 -0
  4. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.d.ts.map +1 -1
  5. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js +5 -0
  6. package/dist/application/context/relations/deactivate/DeactivateRelationCommandHandler.js.map +1 -1
  7. package/dist/infrastructure/host/HostBuilder.d.ts.map +1 -1
  8. package/dist/infrastructure/host/HostBuilder.js +4 -6
  9. package/dist/infrastructure/host/HostBuilder.js.map +1 -1
  10. package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts +9 -13
  11. package/dist/infrastructure/local/LocalDatabaseRebuildService.d.ts.map +1 -1
  12. package/dist/infrastructure/local/LocalDatabaseRebuildService.js +36 -29
  13. package/dist/infrastructure/local/LocalDatabaseRebuildService.js.map +1 -1
  14. package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts +25 -0
  15. package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts.map +1 -0
  16. package/dist/infrastructure/messaging/ProjectionBusFactory.js +242 -0
  17. package/dist/infrastructure/messaging/ProjectionBusFactory.js.map +1 -0
  18. package/dist/presentation/cli/animations/BrailleSpinner.d.ts +31 -0
  19. package/dist/presentation/cli/animations/BrailleSpinner.d.ts.map +1 -0
  20. package/dist/presentation/cli/animations/BrailleSpinner.js +67 -0
  21. package/dist/presentation/cli/animations/BrailleSpinner.js.map +1 -0
  22. package/dist/presentation/cli/animations/GlimmerEffect.d.ts +32 -0
  23. package/dist/presentation/cli/animations/GlimmerEffect.d.ts.map +1 -0
  24. package/dist/presentation/cli/animations/GlimmerEffect.js +55 -0
  25. package/dist/presentation/cli/animations/GlimmerEffect.js.map +1 -0
  26. package/dist/presentation/cli/animations/GradientPalette.d.ts +36 -0
  27. package/dist/presentation/cli/animations/GradientPalette.d.ts.map +1 -0
  28. package/dist/presentation/cli/animations/GradientPalette.js +133 -0
  29. package/dist/presentation/cli/animations/GradientPalette.js.map +1 -0
  30. package/dist/presentation/cli/commands/registry/generated-commands.d.ts.map +1 -1
  31. package/dist/presentation/cli/commands/registry/generated-commands.js +6 -0
  32. package/dist/presentation/cli/commands/registry/generated-commands.js.map +1 -1
  33. package/dist/presentation/cli/commands/work/refine/RefineryDisplay.d.ts +45 -0
  34. package/dist/presentation/cli/commands/work/refine/RefineryDisplay.d.ts.map +1 -0
  35. package/dist/presentation/cli/commands/work/refine/RefineryDisplay.js +100 -0
  36. package/dist/presentation/cli/commands/work/refine/RefineryDisplay.js.map +1 -0
  37. package/dist/presentation/cli/commands/work/refine/work.refine.d.ts +20 -0
  38. package/dist/presentation/cli/commands/work/refine/work.refine.d.ts.map +1 -0
  39. package/dist/presentation/cli/commands/work/refine/work.refine.js +181 -0
  40. package/dist/presentation/cli/commands/work/refine/work.refine.js.map +1 -0
  41. package/dist/presentation/cli/rendering/StyleConfig.d.ts +11 -0
  42. package/dist/presentation/cli/rendering/StyleConfig.d.ts.map +1 -1
  43. package/dist/presentation/cli/rendering/StyleConfig.js +12 -1
  44. package/dist/presentation/cli/rendering/StyleConfig.js.map +1 -1
  45. package/package.json +1 -1
  46. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts +0 -43
  47. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.d.ts.map +0 -1
  48. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js +0 -441
  49. package/dist/infrastructure/local/TemporarySequentialDatabaseRebuildService.js.map +0 -1
  50. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts +0 -37
  51. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.d.ts.map +0 -1
  52. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.js +0 -64
  53. package/dist/infrastructure/messaging/TemporarySequentialRebuildEventBus.js.map +0 -1
package/README.md CHANGED
@@ -166,6 +166,7 @@ Spread some ❤️ and sponsor the projects or buy them a cup of coffee. I have.
166
166
  | [Session Management](docs/reference/commands/session.md) | Manage pause, resume, and session continuity |
167
167
  | [Advanced Workflows](docs/guides/advanced-workflows.md) | Command chaining and multi-agent collaboration patterns |
168
168
  | [Command Reference](docs/reference/) | Full command documentation |
169
+ | [Shared Memories](https://github.com/jumbocontext/shared-jumbo-memories) | Pluggable invariants, guidelines, and patterns to prime your project |
169
170
 
170
171
 
171
172
  ## FAQs
@@ -82,6 +82,8 @@ A goal is **right-sized** when:
82
82
  - `--prerequisite-goals <ids>`: Hard dependency — goal cannot start until prerequisites are complete.
83
83
  - `--previous-goal <id>` / `--next-goal <id>`: Suggested ordering — chains goals for sequential flow.
84
84
 
85
+ When chaining goals, prefix each goal's title with its position in the chain (e.g., `1/3 Deprecate Architecture entity`, `2/3 Migrate context packets`, `3/3 Remove Architecture entity`). This communicates execution order to users and agents reviewing the backlog.
86
+
85
87
  ### 4. Author Each Goal
86
88
 
87
89
  For each goal, compose the three pillars: **objective**, **criteria**, and **scope**.
@@ -0,0 +1,123 @@
1
+ ---
2
+ name: jumbo-design-goal
3
+ description: Pre-definition collaborative discovery. Aligns a proposed goal with project audience, pains, and value propositions; surfaces design gaps and open questions before handing off to define-jumbo-goals.
4
+ ---
5
+
6
+ # Design Jumbo Goal
7
+
8
+ **Prompt:** Guide collaborative goal design by aligning a proposed piece of work with the project's audience, audience pains, and value propositions — surfacing design gaps and open questions before handing off to the define-jumbo-goals skill for formal decomposition and registration.
9
+
10
+ ## Why Design Precedes Definition
11
+
12
+ Definition without alignment produces goals that solve the wrong problem or miss the audience's actual pain. The define-jumbo-goals skill assumes the *what* and *why* are already clear — it focuses on decomposition, criteria, and scope. If those inputs are vague or misaligned, every downstream artifact (criteria, relations, implementation) inherits the drift. Design is where alignment happens.
13
+
14
+ ## Protocol
15
+
16
+ ### 1. Load Project Context
17
+
18
+ Before discussing the goal, load the project's north-star context:
19
+
20
+ ```bash
21
+ jumbo architecture view
22
+ ```
23
+
24
+ Also extract the `projectContext` from your session start output. From these two sources, note:
25
+
26
+ - **Audiences** — who the project serves
27
+ - **Audience pains** — what problems those audiences face
28
+ - **Value propositions** — what the project promises to deliver
29
+
30
+ These three lists are the alignment targets for every goal.
31
+
32
+ ### 2. Elicit the Goal Idea
33
+
34
+ Ask the user what they want to achieve and why. Extract the raw intent before shaping it:
35
+
36
+ - "What problem are you trying to solve, or what capability are you trying to add?"
37
+ - "What prompted this — a user complaint, a technical limitation, a new requirement?"
38
+ - "Is there anything you've already decided about how this should work?"
39
+
40
+ Listen for the *what* and the *why*. Do not jump to solution design. The goal at this stage is understanding, not specification.
41
+
42
+ ### 3. Align with Project Context
43
+
44
+ Map the proposed goal against each alignment target:
45
+
46
+ | Alignment Target | Question |
47
+ |------------------|----------|
48
+ | Each **audience** | Does this goal serve this audience? If so, how? |
49
+ | Each **audience pain** | Does this goal address this pain? Directly or indirectly? |
50
+ | Each **value proposition** | Does this goal advance this value proposition? |
51
+
52
+ Document which targets the goal serves. If the goal does not align with any audience pain or value proposition, surface that explicitly:
53
+
54
+ > "This goal doesn't appear to address any of the project's stated audience pains or value propositions. That may be fine — it could be infrastructure, tech debt, or a new direction. But let's confirm that's intentional before proceeding."
55
+
56
+ Misalignment is not a blocker — it is a signal that needs acknowledgment.
57
+
58
+ ### 4. Identify Design Gaps
59
+
60
+ Surface missing information that would prevent clean definition. For each category, ask targeted questions:
61
+
62
+ | Gap Category | What to Surface |
63
+ |--------------|-----------------|
64
+ | **Unclear scope** | What is included? What is explicitly excluded? Where are the boundaries? |
65
+ | **Unstated assumptions** | What is being taken for granted about the current system, user behavior, or environment? |
66
+ | **Unknown constraints** | Are there performance, compatibility, security, or process constraints? |
67
+ | **Missing success criteria** | How will we know this is done? What does "correct" look like? |
68
+ | **Unresolved dependencies** | Does this require other work to be completed first? Does it depend on external systems or teams? |
69
+
70
+ Ask one category at a time. Iterate until each gap is resolved or explicitly deferred. Do not overwhelm the user with all questions at once.
71
+
72
+ ### 5. Confirm Readiness
73
+
74
+ Before handing off, verify the following checklist:
75
+
76
+ - [ ] **Objective is clear** — the *what* and *why* can be stated in one sentence
77
+ - [ ] **Audience alignment is explicit** — at least one audience is identified as the beneficiary
78
+ - [ ] **Pain or value proposition is served** — at least one is addressed, or misalignment is acknowledged
79
+ - [ ] **No open questions remain** — all design gaps are resolved or explicitly deferred with rationale
80
+ - [ ] **User has approved the design** — the user confirms this captures their intent
81
+
82
+ If any item is unresolved, return to the relevant protocol step. Do not proceed with open gaps.
83
+
84
+ ### 6. Hand Off to Definition
85
+
86
+ Once the design is confirmed, invoke the define-jumbo-goals skill:
87
+
88
+ ```
89
+ /define-jumbo-goals
90
+ ```
91
+
92
+ Carry forward the gathered context: the objective, the audience alignment, the resolved design gaps, and any constraints or dependencies discovered. The define-jumbo-goals skill will handle decomposition, criteria authoring, scope definition, and goal registration.
93
+
94
+ If the user prefers to defer definition, output a structured summary they can carry forward:
95
+
96
+ ```
97
+ ## Goal Design Summary
98
+ - **Objective:** [one-sentence what + why]
99
+ - **Audiences served:** [list]
100
+ - **Pains addressed:** [list]
101
+ - **Value propositions advanced:** [list]
102
+ - **Constraints:** [list]
103
+ - **Dependencies:** [list]
104
+ - **Deferred questions:** [list, if any]
105
+ ```
106
+
107
+ ## Rules
108
+
109
+ 1. **Never skip project context loading.** Always load audience, pains, and value propositions before discussing alignment. Design without context is guessing.
110
+ 2. **Never proceed to definition with open design questions.** Every gap must be resolved or explicitly deferred with the user's acknowledgment.
111
+ 3. **Never fabricate alignment.** If the goal does not align with any audience pain or value proposition, say so. Do not force-fit connections that do not exist.
112
+ 4. **Never assume the user's intent.** If the raw idea is ambiguous, ask. Do not infer scope, constraints, or success criteria the user has not stated.
113
+ 5. **Never skip user approval.** The user must confirm the design before handoff. The agent's job is to facilitate, not to decide.
114
+
115
+ ## Anti-Patterns
116
+
117
+ | Anti-Pattern | Problem | Fix |
118
+ |--------------|---------|-----|
119
+ | Skipping straight to definition without design | Goals are defined without alignment, producing work that misses the audience's actual pain | Always run the design protocol first — load context, elicit intent, align, identify gaps |
120
+ | Assuming alignment without checking | The goal feels related to the project but no explicit mapping was done | Walk through each audience, pain, and value proposition explicitly |
121
+ | Asking too many questions at once | The user is overwhelmed and gives shallow answers | Iterate one gap category at a time, confirming resolution before moving on |
122
+ | Force-fitting alignment | The agent claims the goal serves a pain it does not actually address | State misalignment honestly — the user may have context that resolves it, or may accept the gap |
123
+ | Treating design as a gate instead of a collaboration | The agent blocks progress because alignment is imperfect | Misalignment is a signal, not a blocker — surface it, discuss it, let the user decide |
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivateRelationCommandHandler.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBAAa,gCAAgC;IAEzC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,WAAW,EAAE,+BAA+B,EAC5C,WAAW,EAAE,+BAA+B,EAC5C,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,0BAA0B;IAG/C,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAuBjE"}
1
+ {"version":3,"file":"DeactivateRelationCommandHandler.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBAAa,gCAAgC;IAEzC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHN,WAAW,EAAE,+BAA+B,EAC5C,WAAW,EAAE,+BAA+B,EAC5C,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,0BAA0B;IAG/C,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CA8BjE"}
@@ -25,6 +25,11 @@ class DeactivateRelationCommandHandler {
25
25
  }
26
26
  const history = await this.eventReader.readStream(command.relationId);
27
27
  const relation = Relation_js_1.Relation.rehydrate(command.relationId, history);
28
+ // The projection may be stale during event replay (evolve). The rehydrated
29
+ // aggregate is authoritative — skip if already deactivated or removed.
30
+ if (relation.snapshot.status !== 'active') {
31
+ return;
32
+ }
28
33
  const event = relation.deactivate(command.reason);
29
34
  await this.eventWriter.append(event);
30
35
  await this.eventBus.publish(event);
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivateRelationCommandHandler.js","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":";;;AACA,0EAAoE;AAEpE,4EAAsG;AACtG,uFAAoF;AACpF,8FAA0F;AAM1F,MAAa,gCAAgC;IAC3C,YACmB,WAA4C,EAC5C,WAA4C,EAC5C,QAAmB,EACnB,MAAkC;QAHlC,gBAAW,GAAX,WAAW,CAAiC;QAC5C,gBAAW,GAAX,WAAW,CAAiC;QAC5C,aAAQ,GAAR,QAAQ,CAAW;QACnB,WAAM,GAAN,MAAM,CAA4B;IAClD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;QAEhE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,oCAAqB,CAAC,kBAAkB,EAAE;gBAC3D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,aAAa,IAAI,gBAAgB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,sBAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,OAA0B,CAAC,CAAC;QACpF,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF;AA/BD,4EA+BC"}
1
+ {"version":3,"file":"DeactivateRelationCommandHandler.js","sourceRoot":"","sources":["../../../../../src/application/context/relations/deactivate/DeactivateRelationCommandHandler.ts"],"names":[],"mappings":";;;AACA,0EAAoE;AAEpE,4EAAsG;AACtG,uFAAoF;AACpF,8FAA0F;AAM1F,MAAa,gCAAgC;IAC3C,YACmB,WAA4C,EAC5C,WAA4C,EAC5C,QAAmB,EACnB,MAAkC;QAHlC,gBAAW,GAAX,WAAW,CAAiC;QAC5C,gBAAW,GAAX,WAAW,CAAiC;QAC5C,aAAQ,GAAR,QAAQ,CAAW;QACnB,WAAM,GAAN,MAAM,CAA4B;IAClD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;QAEhE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,IAAA,iCAAkB,EAAC,oCAAqB,CAAC,kBAAkB,EAAE;gBAC3D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,aAAa,IAAI,gBAAgB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,sBAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,OAA0B,CAAC,CAAC;QAEpF,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF;AAtCD,4EAsCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HostBuilder.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/host/HostBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AASxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAuhBnF,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAE1B;gBAGZ,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,uBAAuB,CAAC,EAAE,CAAC,eAAe,EAAE,gBAAgB,KAAK,IAAI;IAOvE;;;;;;;OAOG;IACG,KAAK,IAAI,OAAO,CAAC,qBAAqB,CAAC;CA8mD9C"}
1
+ {"version":3,"file":"HostBuilder.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/host/HostBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AASxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAshBnF,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAE1B;gBAGZ,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,uBAAuB,CAAC,EAAE,CAAC,eAAe,EAAE,gBAAgB,KAAK,IAAI;IAOvE;;;;;;;OAOG;IACG,KAAK,IAAI,OAAO,CAAC,qBAAqB,CAAC;CA8mD9C"}
@@ -64,9 +64,8 @@ const SystemClock_js_1 = require("../time-and-date/SystemClock.js");
64
64
  const FileLogger_js_1 = require("../logging/FileLogger.js");
65
65
  const ILogger_js_1 = require("../../application/logging/ILogger.js");
66
66
  const path = __importStar(require("path"));
67
- // TEMPORARY: Use sequential rebuild service to avoid race conditions
68
- // TODO: Swap back to LocalDatabaseRebuildService when Epic/Feature/Task redesign is complete
69
- const TemporarySequentialDatabaseRebuildService_js_1 = require("../local/TemporarySequentialDatabaseRebuildService.js");
67
+ const LocalDatabaseRebuildService_js_1 = require("../local/LocalDatabaseRebuildService.js");
68
+ const ProjectionBusFactory_js_1 = require("../messaging/ProjectionBusFactory.js");
70
69
  const MigrationRunner_js_1 = require("../persistence/MigrationRunner.js");
71
70
  const migrations_config_js_1 = require("../persistence/migrations.config.js");
72
71
  // Session Event Stores - decomposed by use case
@@ -616,9 +615,8 @@ class HostBuilder {
616
615
  const goalClaimStore = new SqliteGoalClaimStore_js_1.SqliteGoalClaimStore(this.db);
617
616
  const goalClaimPolicy = new GoalClaimPolicy_js_1.GoalClaimPolicy(goalClaimStore, clock);
618
617
  // Create database rebuild service and controller
619
- // TEMPORARY: Uses sequential event bus to avoid race conditions during rebuild
620
- // TODO: Swap back to LocalDatabaseRebuildService when Epic/Feature/Task redesign is complete
621
- const databaseRebuildService = new TemporarySequentialDatabaseRebuildService_js_1.TemporarySequentialDatabaseRebuildService(this.rootDir, this.db, eventStore, logger);
618
+ const projectionBusFactory = new ProjectionBusFactory_js_1.ProjectionBusFactory();
619
+ const databaseRebuildService = new LocalDatabaseRebuildService_js_1.LocalDatabaseRebuildService(this.rootDir, this.db, eventStore, (db) => projectionBusFactory.create(db), logger);
622
620
  const rebuildDatabaseGateway = new LocalRebuildDatabaseGateway_js_1.LocalRebuildDatabaseGateway(databaseRebuildService);
623
621
  const rebuildDatabaseController = new RebuildDatabaseController_js_1.RebuildDatabaseController(rebuildDatabaseGateway);
624
622
  // Upgrade command handler (uses event store + goal status reader created later)
@@ -1 +1 @@
1
- {"version":3,"file":"HostBuilder.js","sourceRoot":"","sources":["../../../src/infrastructure/host/HostBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HostBuilder.js","sourceRoot":"","sources":["../../../src/infrastructure/host/HostBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * Infrastructure implementation of database rebuild service.
3
3
  *
4
- * Handles all infrastructure concerns for rebuilding the database:
5
- * - Closing the existing database connection
6
- * - Deleting the database file
7
- * - Reinitializing the database with migrations
8
- * - Replaying all events through the event bus
4
+ * Rebuilds SQLite projections by replaying all persisted events through
5
+ * projection-only handlers. No side-effect handlers (cascades, maintenance
6
+ * goal registrars) run during rebuild — their output events are already
7
+ * in the event store from original execution and are replayed naturally.
9
8
  *
10
- * This keeps infrastructure concerns (file operations, connection management)
11
- * out of the presentation layer.
9
+ * Accepts a createProjectionBus callback that wires projection-only
10
+ * handlers for a given database instance. This avoids duplicating the
11
+ * composition root while keeping rebuild infrastructure-agnostic.
12
12
  */
13
13
  import Database from "better-sqlite3";
14
14
  import { ILogger } from "../../application/logging/ILogger.js";
@@ -19,14 +19,10 @@ export declare class LocalDatabaseRebuildService implements IDatabaseRebuildServ
19
19
  private readonly rootDir;
20
20
  private readonly db;
21
21
  private readonly eventStore;
22
- private readonly eventBus;
23
- private readonly reinitialize;
22
+ private readonly createProjectionBus;
24
23
  private readonly logger;
25
24
  private readonly tag;
26
- constructor(rootDir: string, db: Database.Database, eventStore: IEventStore, eventBus: IEventBus, reinitialize: () => {
27
- db: Database.Database;
28
- eventBus: IEventBus;
29
- }, logger: ILogger);
25
+ constructor(rootDir: string, db: Database.Database, eventStore: IEventStore, createProjectionBus: (db: Database.Database) => IEventBus, logger: ILogger);
30
26
  rebuild(): Promise<DatabaseRebuildResult>;
31
27
  }
32
28
  //# sourceMappingURL=LocalDatabaseRebuildService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalDatabaseRebuildService.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/local/LocalDatabaseRebuildService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,qEAAqE,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAErE,qBAAa,2BAA4B,YAAW,uBAAuB;IAIvE,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAuB;gBAGxB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,SAAS,EACnB,YAAY,EAAE,MAAM;QAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,EAClE,MAAM,EAAE,OAAO;IAG5B,OAAO,IAAI,OAAO,CAAC,qBAAqB,CAAC;CA2DhD"}
1
+ {"version":3,"file":"LocalDatabaseRebuildService.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/local/LocalDatabaseRebuildService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,qEAAqE,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAIrE,qBAAa,2BAA4B,YAAW,uBAAuB;IAIvE,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAPzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAuB;gBAGxB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,UAAU,EAAE,WAAW,EACvB,mBAAmB,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,KAAK,SAAS,EACzD,MAAM,EAAE,OAAO;IAG5B,OAAO,IAAI,OAAO,CAAC,qBAAqB,CAAC;CAkEhD"}
@@ -2,14 +2,14 @@
2
2
  /**
3
3
  * Infrastructure implementation of database rebuild service.
4
4
  *
5
- * Handles all infrastructure concerns for rebuilding the database:
6
- * - Closing the existing database connection
7
- * - Deleting the database file
8
- * - Reinitializing the database with migrations
9
- * - Replaying all events through the event bus
5
+ * Rebuilds SQLite projections by replaying all persisted events through
6
+ * projection-only handlers. No side-effect handlers (cascades, maintenance
7
+ * goal registrars) run during rebuild — their output events are already
8
+ * in the event store from original execution and are replayed naturally.
10
9
  *
11
- * This keeps infrastructure concerns (file operations, connection management)
12
- * out of the presentation layer.
10
+ * Accepts a createProjectionBus callback that wires projection-only
11
+ * handlers for a given database instance. This avoids duplicating the
12
+ * composition root while keeping rebuild infrastructure-agnostic.
13
13
  */
14
14
  var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -18,13 +18,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.LocalDatabaseRebuildService = void 0;
19
19
  const fs_extra_1 = __importDefault(require("fs-extra"));
20
20
  const path_1 = __importDefault(require("path"));
21
+ const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
22
+ const MigrationRunner_js_1 = require("../persistence/MigrationRunner.js");
23
+ const migrations_config_js_1 = require("../persistence/migrations.config.js");
21
24
  class LocalDatabaseRebuildService {
22
- constructor(rootDir, db, eventStore, eventBus, reinitialize, logger) {
25
+ constructor(rootDir, db, eventStore, createProjectionBus, logger) {
23
26
  this.rootDir = rootDir;
24
27
  this.db = db;
25
28
  this.eventStore = eventStore;
26
- this.eventBus = eventBus;
27
- this.reinitialize = reinitialize;
29
+ this.createProjectionBus = createProjectionBus;
28
30
  this.logger = logger;
29
31
  this.tag = "[DatabaseRebuild]";
30
32
  }
@@ -37,32 +39,32 @@ class LocalDatabaseRebuildService {
37
39
  this.db.pragma("wal_checkpoint(TRUNCATE)");
38
40
  this.db.close();
39
41
  }
40
- // Step 2: Delete the database file
41
- if (await fs_extra_1.default.pathExists(dbPath)) {
42
- this.logger.debug(`${this.tag} Deleting existing database file`, { dbPath });
43
- await fs_extra_1.default.remove(dbPath);
44
- }
45
- // Also remove WAL and SHM files if they exist
46
- const walPath = dbPath + "-wal";
47
- const shmPath = dbPath + "-shm";
48
- if (await fs_extra_1.default.pathExists(walPath)) {
49
- await fs_extra_1.default.remove(walPath);
50
- }
51
- if (await fs_extra_1.default.pathExists(shmPath)) {
52
- await fs_extra_1.default.remove(shmPath);
42
+ // Step 2: Delete the database file and WAL/SHM files
43
+ for (const filePath of [dbPath, `${dbPath}-wal`, `${dbPath}-shm`]) {
44
+ if (await fs_extra_1.default.pathExists(filePath)) {
45
+ this.logger.debug(`${this.tag} Deleting file`, { filePath });
46
+ await fs_extra_1.default.remove(filePath);
47
+ }
53
48
  }
54
- // Step 3: Reinitialize database (creates new connection with migrations)
55
- this.logger.debug(`${this.tag} Reinitializing database with migrations`);
56
- const { eventBus: newEventBus } = this.reinitialize();
57
- // Step 4: Get all events from event store (file-based, still intact)
49
+ // Step 3: Create new database connection and run migrations
50
+ this.logger.debug(`${this.tag} Creating new database and running migrations`);
51
+ const newDb = new better_sqlite3_1.default(dbPath);
52
+ newDb.pragma("journal_mode = WAL");
53
+ const infrastructureDir = path_1.default.resolve(__dirname, "..");
54
+ const migrations = (0, migrations_config_js_1.getNamespaceMigrations)(infrastructureDir);
55
+ const migrationRunner = new MigrationRunner_js_1.MigrationRunner(newDb);
56
+ migrationRunner.runNamespaceMigrations(migrations);
57
+ this.logger.debug(`${this.tag} Migrations complete`);
58
+ // Step 4: Create projection-only event bus
59
+ const projectionBus = this.createProjectionBus(newDb);
60
+ // Step 5: Replay all events through projection-only handlers
58
61
  this.logger.debug(`${this.tag} Loading events from event store`);
59
62
  const events = await this.eventStore.getAllEvents();
60
63
  this.logger.info(`${this.tag} Loaded events for replay`, { eventCount: events.length });
61
- // Step 5: Replay each event through the new event bus
62
64
  let processedCount = 0;
63
65
  for (const event of events) {
64
66
  try {
65
- await newEventBus.publish(event);
67
+ await projectionBus.publish(event);
66
68
  processedCount++;
67
69
  }
68
70
  catch (error) {
@@ -74,6 +76,11 @@ class LocalDatabaseRebuildService {
74
76
  throw error;
75
77
  }
76
78
  }
79
+ // Step 6: Close the rebuild database connection
80
+ if (newDb && newDb.open) {
81
+ newDb.pragma("wal_checkpoint(TRUNCATE)");
82
+ newDb.close();
83
+ }
77
84
  this.logger.info(`${this.tag} Database rebuild complete`, { eventsReplayed: processedCount });
78
85
  return {
79
86
  eventsReplayed: processedCount,
@@ -1 +1 @@
1
- {"version":3,"file":"LocalDatabaseRebuildService.js","sourceRoot":"","sources":["../../../src/infrastructure/local/LocalDatabaseRebuildService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalDatabaseRebuildService.js","sourceRoot":"","sources":["../../../src/infrastructure/local/LocalDatabaseRebuildService.ts"],"names":[],"mappings":"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"}