reflectt-node 0.1.14 → 0.1.16

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 (218) hide show
  1. package/README.md +54 -0
  2. package/defaults/TEAM-ROLES.starter.yaml +87 -0
  3. package/defaults/lane-templates/ops.json +32 -0
  4. package/defaults/lane-templates/workflow.json +32 -0
  5. package/defaults/reviewer-routing.yaml +34 -0
  6. package/dist/activationEvents.d.ts +7 -1
  7. package/dist/activationEvents.d.ts.map +1 -1
  8. package/dist/activationEvents.js +29 -3
  9. package/dist/activationEvents.js.map +1 -1
  10. package/dist/activity-stream-normalizer.d.ts +37 -0
  11. package/dist/activity-stream-normalizer.d.ts.map +1 -0
  12. package/dist/activity-stream-normalizer.js +101 -0
  13. package/dist/activity-stream-normalizer.js.map +1 -0
  14. package/dist/agent-exec-guardrail.d.ts +9 -0
  15. package/dist/agent-exec-guardrail.d.ts.map +1 -0
  16. package/dist/agent-exec-guardrail.js +24 -0
  17. package/dist/agent-exec-guardrail.js.map +1 -0
  18. package/dist/agent-exec-guardrail.test.d.ts +2 -0
  19. package/dist/agent-exec-guardrail.test.d.ts.map +1 -0
  20. package/dist/agent-exec-guardrail.test.js +55 -0
  21. package/dist/agent-exec-guardrail.test.js.map +1 -0
  22. package/dist/agent-interface.d.ts +137 -0
  23. package/dist/agent-interface.d.ts.map +1 -0
  24. package/dist/agent-interface.js +463 -0
  25. package/dist/agent-interface.js.map +1 -0
  26. package/dist/agent-notifications.d.ts +51 -0
  27. package/dist/agent-notifications.d.ts.map +1 -0
  28. package/dist/agent-notifications.js +104 -0
  29. package/dist/agent-notifications.js.map +1 -0
  30. package/dist/agent-runs.d.ts +31 -7
  31. package/dist/agent-runs.d.ts.map +1 -1
  32. package/dist/agent-runs.js +137 -28
  33. package/dist/agent-runs.js.map +1 -1
  34. package/dist/artifact-mirror.d.ts.map +1 -1
  35. package/dist/artifact-mirror.js +4 -1
  36. package/dist/artifact-mirror.js.map +1 -1
  37. package/dist/assignment.d.ts.map +1 -1
  38. package/dist/assignment.js +54 -2
  39. package/dist/assignment.js.map +1 -1
  40. package/dist/boardHealthWorker.d.ts.map +1 -1
  41. package/dist/boardHealthWorker.js +15 -1
  42. package/dist/boardHealthWorker.js.map +1 -1
  43. package/dist/canvas-auto-state.d.ts +58 -0
  44. package/dist/canvas-auto-state.d.ts.map +1 -0
  45. package/dist/canvas-auto-state.js +89 -0
  46. package/dist/canvas-auto-state.js.map +1 -0
  47. package/dist/canvas-routes.d.ts +36 -0
  48. package/dist/canvas-routes.d.ts.map +1 -0
  49. package/dist/canvas-routes.js +47 -0
  50. package/dist/canvas-routes.js.map +1 -0
  51. package/dist/capability-readiness.d.ts +28 -0
  52. package/dist/capability-readiness.d.ts.map +1 -0
  53. package/dist/capability-readiness.js +162 -0
  54. package/dist/capability-readiness.js.map +1 -0
  55. package/dist/channels.d.ts.map +1 -1
  56. package/dist/channels.js +1 -0
  57. package/dist/channels.js.map +1 -1
  58. package/dist/cli.js +179 -4
  59. package/dist/cli.js.map +1 -1
  60. package/dist/cloud.d.ts +5 -0
  61. package/dist/cloud.d.ts.map +1 -1
  62. package/dist/cloud.js +485 -18
  63. package/dist/cloud.js.map +1 -1
  64. package/dist/comms-routing-policy.d.ts +31 -0
  65. package/dist/comms-routing-policy.d.ts.map +1 -0
  66. package/dist/comms-routing-policy.js +128 -0
  67. package/dist/comms-routing-policy.js.map +1 -0
  68. package/dist/config.d.ts.map +1 -1
  69. package/dist/config.js +1 -0
  70. package/dist/config.js.map +1 -1
  71. package/dist/continuity-loop.d.ts.map +1 -1
  72. package/dist/continuity-loop.js +26 -0
  73. package/dist/continuity-loop.js.map +1 -1
  74. package/dist/cost-enforcement.d.ts.map +1 -1
  75. package/dist/cost-enforcement.js +22 -0
  76. package/dist/cost-enforcement.js.map +1 -1
  77. package/dist/db.d.ts.map +1 -1
  78. package/dist/db.js +56 -5
  79. package/dist/db.js.map +1 -1
  80. package/dist/doctor.js +2 -2
  81. package/dist/e2e-loop-proof.test.js +11 -1
  82. package/dist/e2e-loop-proof.test.js.map +1 -1
  83. package/dist/events.d.ts +4 -2
  84. package/dist/events.d.ts.map +1 -1
  85. package/dist/events.js +22 -1
  86. package/dist/events.js.map +1 -1
  87. package/dist/executionSweeper.d.ts.map +1 -1
  88. package/dist/executionSweeper.js +155 -0
  89. package/dist/executionSweeper.js.map +1 -1
  90. package/dist/health.d.ts +21 -1
  91. package/dist/health.d.ts.map +1 -1
  92. package/dist/health.js +164 -19
  93. package/dist/health.js.map +1 -1
  94. package/dist/inbox.d.ts +4 -0
  95. package/dist/inbox.d.ts.map +1 -1
  96. package/dist/inbox.js +38 -1
  97. package/dist/inbox.js.map +1 -1
  98. package/dist/index.js +90 -14
  99. package/dist/index.js.map +1 -1
  100. package/dist/insight-auto-tagger.d.ts +58 -0
  101. package/dist/insight-auto-tagger.d.ts.map +1 -0
  102. package/dist/insight-auto-tagger.js +331 -0
  103. package/dist/insight-auto-tagger.js.map +1 -0
  104. package/dist/insight-task-bridge.d.ts +9 -0
  105. package/dist/insight-task-bridge.d.ts.map +1 -1
  106. package/dist/insight-task-bridge.js +43 -7
  107. package/dist/insight-task-bridge.js.map +1 -1
  108. package/dist/insights.d.ts +6 -0
  109. package/dist/insights.d.ts.map +1 -1
  110. package/dist/insights.js +13 -0
  111. package/dist/insights.js.map +1 -1
  112. package/dist/lane-config.d.ts.map +1 -1
  113. package/dist/lane-config.js +1 -0
  114. package/dist/lane-config.js.map +1 -1
  115. package/dist/lane-template-successor.d.ts +13 -0
  116. package/dist/lane-template-successor.d.ts.map +1 -0
  117. package/dist/lane-template-successor.js +132 -0
  118. package/dist/lane-template-successor.js.map +1 -0
  119. package/dist/local-whisper.d.ts +21 -0
  120. package/dist/local-whisper.d.ts.map +1 -0
  121. package/dist/local-whisper.js +137 -0
  122. package/dist/local-whisper.js.map +1 -0
  123. package/dist/macos-accessibility.d.ts +50 -0
  124. package/dist/macos-accessibility.d.ts.map +1 -0
  125. package/dist/macos-accessibility.js +185 -0
  126. package/dist/macos-accessibility.js.map +1 -0
  127. package/dist/manage.d.ts.map +1 -1
  128. package/dist/manage.js +47 -1
  129. package/dist/manage.js.map +1 -1
  130. package/dist/mcp.d.ts.map +1 -1
  131. package/dist/mcp.js +123 -0
  132. package/dist/mcp.js.map +1 -1
  133. package/dist/notification-worker.d.ts +66 -0
  134. package/dist/notification-worker.d.ts.map +1 -0
  135. package/dist/notification-worker.js +232 -0
  136. package/dist/notification-worker.js.map +1 -0
  137. package/dist/openclaw-usage-sync.d.ts +28 -0
  138. package/dist/openclaw-usage-sync.d.ts.map +1 -0
  139. package/dist/openclaw-usage-sync.js +161 -0
  140. package/dist/openclaw-usage-sync.js.map +1 -0
  141. package/dist/policy.js +1 -1
  142. package/dist/policy.js.map +1 -1
  143. package/dist/pr-link-reconciler.d.ts +61 -0
  144. package/dist/pr-link-reconciler.d.ts.map +1 -0
  145. package/dist/pr-link-reconciler.js +127 -0
  146. package/dist/pr-link-reconciler.js.map +1 -0
  147. package/dist/preflight.js +2 -2
  148. package/dist/presence-narrator.d.ts +52 -0
  149. package/dist/presence-narrator.d.ts.map +1 -0
  150. package/dist/presence-narrator.js +193 -0
  151. package/dist/presence-narrator.js.map +1 -0
  152. package/dist/presence.d.ts +2 -0
  153. package/dist/presence.d.ts.map +1 -1
  154. package/dist/presence.js +23 -3
  155. package/dist/presence.js.map +1 -1
  156. package/dist/product-observation-source.d.ts +52 -0
  157. package/dist/product-observation-source.d.ts.map +1 -0
  158. package/dist/product-observation-source.js +326 -0
  159. package/dist/product-observation-source.js.map +1 -0
  160. package/dist/reflection-automation.d.ts +25 -0
  161. package/dist/reflection-automation.d.ts.map +1 -1
  162. package/dist/reflection-automation.js +163 -42
  163. package/dist/reflection-automation.js.map +1 -1
  164. package/dist/review-autoclose.d.ts +62 -0
  165. package/dist/review-autoclose.d.ts.map +1 -0
  166. package/dist/review-autoclose.js +75 -0
  167. package/dist/review-autoclose.js.map +1 -0
  168. package/dist/routing-enforcement.test.js +32 -56
  169. package/dist/routing-enforcement.test.js.map +1 -1
  170. package/dist/sentry-webhook.d.ts +69 -0
  171. package/dist/sentry-webhook.d.ts.map +1 -0
  172. package/dist/sentry-webhook.js +88 -0
  173. package/dist/sentry-webhook.js.map +1 -0
  174. package/dist/sentry.d.ts +29 -0
  175. package/dist/sentry.d.ts.map +1 -0
  176. package/dist/sentry.js +86 -0
  177. package/dist/sentry.js.map +1 -0
  178. package/dist/server.d.ts.map +1 -1
  179. package/dist/server.js +5130 -233
  180. package/dist/server.js.map +1 -1
  181. package/dist/stale-candidate-reconciler.d.ts +69 -0
  182. package/dist/stale-candidate-reconciler.d.ts.map +1 -0
  183. package/dist/stale-candidate-reconciler.js +236 -0
  184. package/dist/stale-candidate-reconciler.js.map +1 -0
  185. package/dist/system-loop-state.d.ts +1 -1
  186. package/dist/system-loop-state.d.ts.map +1 -1
  187. package/dist/system-loop-state.js +1 -0
  188. package/dist/system-loop-state.js.map +1 -1
  189. package/dist/taskPrecheck.d.ts.map +1 -1
  190. package/dist/taskPrecheck.js +47 -2
  191. package/dist/taskPrecheck.js.map +1 -1
  192. package/dist/tasks.d.ts.map +1 -1
  193. package/dist/tasks.js +130 -0
  194. package/dist/tasks.js.map +1 -1
  195. package/dist/trust-events.d.ts +61 -0
  196. package/dist/trust-events.d.ts.map +1 -0
  197. package/dist/trust-events.js +148 -0
  198. package/dist/trust-events.js.map +1 -0
  199. package/dist/types.d.ts +1 -0
  200. package/dist/types.d.ts.map +1 -1
  201. package/dist/usage-tracking.d.ts +6 -0
  202. package/dist/usage-tracking.d.ts.map +1 -1
  203. package/dist/usage-tracking.js +14 -0
  204. package/dist/usage-tracking.js.map +1 -1
  205. package/dist/voice-sessions.d.ts +51 -0
  206. package/dist/voice-sessions.d.ts.map +1 -0
  207. package/dist/voice-sessions.js +143 -0
  208. package/dist/voice-sessions.js.map +1 -0
  209. package/dist/workflow-templates.d.ts.map +1 -1
  210. package/dist/workflow-templates.js +18 -3
  211. package/dist/workflow-templates.js.map +1 -1
  212. package/dist/working-contract.d.ts +22 -1
  213. package/dist/working-contract.d.ts.map +1 -1
  214. package/dist/working-contract.js +31 -2
  215. package/dist/working-contract.js.map +1 -1
  216. package/package.json +4 -4
  217. package/public/dashboard.js +12 -4
  218. package/public/docs.md +98 -10
package/README.md CHANGED
@@ -31,6 +31,8 @@ reflectt start
31
31
 
32
32
  Open **[http://localhost:4445/dashboard](http://localhost:4445/dashboard)** — a starter team and first task are already there.
33
33
 
34
+ > **Developing locally?** Clone the repo and run `npm run dev` — no build step needed, auto-restarts on file changes.
35
+
34
36
  > Just want to try it first? `npx reflectt-node` starts immediately, no install required.
35
37
 
36
38
  > **Using yarn?** `yarn global add reflectt-node` works, but run `yarn global bin` and add it to your `$PATH` if you get `reflectt: command not found`.
@@ -108,6 +110,33 @@ Get your token at [app.reflectt.ai](https://app.reflectt.ai). Your node syncs to
108
110
 
109
111
  ---
110
112
 
113
+ ## Quick start — team in 2 minutes
114
+
115
+ The fastest way to get a team running with 3 default agents (builder, researcher, coordinator):
116
+
117
+ ```bash
118
+ # 1. Get the files
119
+ git clone https://github.com/reflectt/reflectt-node.git && cd reflectt-node
120
+
121
+ # 2. Set your LLM API key
122
+ cp .env.starter .env
123
+ echo "ANTHROPIC_API_KEY=your_key_here" >> .env # or OPENAI_API_KEY
124
+
125
+ # 3. Start
126
+ docker compose -f docker-compose.starter.yml up -d
127
+ ```
128
+
129
+ That's it. Open [http://localhost:4445](http://localhost:4445) — your team is running.
130
+
131
+ **Connect to app.reflectt.ai for presence + cloud sync:**
132
+ 1. Sign up at [app.reflectt.ai](https://app.reflectt.ai) → Connect a host → copy your join token
133
+ 2. `docker exec reflectt-starter reflectt host connect --join-token <TOKEN>`
134
+ 3. Your team appears in presence within 60 seconds
135
+
136
+ Customize the team by editing `defaults/TEAM-ROLES.starter.yaml` and restarting.
137
+
138
+ ---
139
+
111
140
  ## Docker
112
141
 
113
142
  ```bash
@@ -117,6 +146,31 @@ docker run -d --name reflectt-node \
117
146
  ghcr.io/reflectt/reflectt-node:latest
118
147
  ```
119
148
 
149
+ ### Docker Compose — one-command team setup
150
+
151
+ Get a full team in presence in under 2 minutes:
152
+
153
+ ```bash
154
+ # 1. Copy the env template and add your LLM key
155
+ cp .env.starter .env
156
+ echo 'ANTHROPIC_API_KEY=sk-ant-...' >> .env
157
+
158
+ # 2. Start
159
+ docker compose -f docker-compose.starter.yml up -d
160
+
161
+ # 3. Open http://localhost:4445/dashboard
162
+ # → 3 starter agents already in presence
163
+ ```
164
+
165
+ To connect to [app.reflectt.ai](https://app.reflectt.ai) for cloud presence:
166
+
167
+ ```bash
168
+ # After signing up, get your join token and run:
169
+ docker exec reflectt-starter reflectt host connect --join-token <TOKEN>
170
+ ```
171
+
172
+ That's it — your team appears in the presence view within ~30 seconds.
173
+
120
174
  ---
121
175
 
122
176
  ## API
@@ -0,0 +1,87 @@
1
+ # Starter Team — 3 default agents for new reflectt-node users
2
+ #
3
+ # These are generic, useful agents for any team.
4
+ # Customize names, roles, and routing to fit your workflow.
5
+ # Full reference: docs/TEAM-ROLES.md
6
+
7
+ agents:
8
+ - name: builder
9
+ role: engineer
10
+ description: Builds features, fixes bugs, and ships code. Owns backend and frontend implementation.
11
+ affinityTags:
12
+ - backend
13
+ - frontend
14
+ - api
15
+ - bug
16
+ - feature
17
+ - code
18
+ - typescript
19
+ - database
20
+ alwaysRoute:
21
+ - backend
22
+ - api
23
+ - bug
24
+ - code
25
+ wipCap: 2
26
+
27
+ - name: researcher
28
+ role: analyst
29
+ description: Researches questions, summarizes findings, drafts docs and reports. Owns knowledge work.
30
+ affinityTags:
31
+ - research
32
+ - analysis
33
+ - docs
34
+ - summary
35
+ - report
36
+ - writing
37
+ - content
38
+ alwaysRoute:
39
+ - research
40
+ - docs
41
+ - analysis
42
+ wipCap: 2
43
+
44
+ - name: coordinator
45
+ role: project-manager
46
+ description: Tracks tasks, flags blockers, routes work to the right agent. Keeps the team moving.
47
+ affinityTags:
48
+ - coordination
49
+ - planning
50
+ - prioritization
51
+ - blocker
52
+ - routing
53
+ - status
54
+ alwaysRoute:
55
+ - coordination
56
+ - planning
57
+ wipCap: 2
58
+
59
+ # Decision authority
60
+ decision_authority:
61
+ team_decides:
62
+ - Task creation, assignment, and prioritization
63
+ - Technical approach and architecture
64
+ - Content and documentation
65
+ escalate_to_human:
66
+ - External credentials and secrets
67
+ - Legal agreements or compliance sign-offs
68
+ - Major strategic decisions
69
+ escalation_channel: task comment or email
70
+ note: Make reversible decisions. Escalate only when the stakes are irreversible.
71
+
72
+ # Lanes
73
+ lanes:
74
+ - name: engineering
75
+ agents: [builder]
76
+ readyFloor: 1
77
+ wipLimit: 2
78
+
79
+ - name: knowledge
80
+ agents: [researcher]
81
+ readyFloor: 1
82
+ wipLimit: 2
83
+
84
+ - name: coordination
85
+ agents: [coordinator]
86
+ readyFloor: 1
87
+ wipLimit: 2
@@ -0,0 +1,32 @@
1
+ {
2
+ "lane": "ops",
3
+ "description": "Template for ops-lane tasks. On completion, auto-generates the next ops health check or process-improvement task.",
4
+ "done_criteria_template": [
5
+ "Artifact committed at {{artifact_path}}",
6
+ "No regressions in existing tests",
7
+ "Status posted to task comments with shipped/blocker/next"
8
+ ],
9
+ "successor_rule": {
10
+ "strategy": "insight_or_default",
11
+ "insight_pool": "ops",
12
+ "default_task": {
13
+ "title": "ops: board health sweep — verify ready floors and stale task cleanup",
14
+ "priority": "P3",
15
+ "assignee": "rhythm",
16
+ "tags": ["ops", "board-health", "auto-generated"],
17
+ "done_criteria": [
18
+ "All lanes at or above ready floor",
19
+ "No tasks stale in doing > 24h without comment",
20
+ "Placeholder tasks purged or rescoped"
21
+ ]
22
+ },
23
+ "idempotency_key_template": "successor:ops:{{parent_task_id}}",
24
+ "max_successors_per_parent": 1
25
+ },
26
+ "transition_hook": "onTaskDone",
27
+ "transition_guard": {
28
+ "require_artifact": true,
29
+ "require_reviewer_approval": false,
30
+ "skip_if_successor_exists": true
31
+ }
32
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "lane": "workflow",
3
+ "description": "Template for workflow/process tasks. On completion, auto-generates a validation or follow-up task.",
4
+ "done_criteria_template": [
5
+ "Process artifact committed at {{artifact_path}}",
6
+ "Owner notified",
7
+ "No open blockers"
8
+ ],
9
+ "successor_rule": {
10
+ "strategy": "insight_or_default",
11
+ "insight_pool": "workflow",
12
+ "default_task": {
13
+ "title": "ops: verify workflow adoption — confirm previous process change is in active use",
14
+ "priority": "P3",
15
+ "assignee": "rhythm",
16
+ "tags": ["ops", "workflow", "adoption-check", "auto-generated"],
17
+ "done_criteria": [
18
+ "Confirm the shipped process change is used in at least one real task cycle",
19
+ "Document any friction or deviation observed",
20
+ "Flag if abandoned or superseded"
21
+ ]
22
+ },
23
+ "idempotency_key_template": "successor:workflow:{{parent_task_id}}",
24
+ "max_successors_per_parent": 1
25
+ },
26
+ "transition_hook": "onTaskDone",
27
+ "transition_guard": {
28
+ "require_artifact": true,
29
+ "require_reviewer_approval": false,
30
+ "skip_if_successor_exists": true
31
+ }
32
+ }
@@ -0,0 +1,34 @@
1
+ # Reviewer auto-assignment routing rules
2
+ # Consumed by src/assignment.ts → suggestReviewer()
3
+ # Self-review conflict: fall back one step in the chain (primary → fallback)
4
+ # Catch-all applies when no domain pattern matches
5
+
6
+ version: 1
7
+
8
+ domains:
9
+ - name: canvas-ui-frontend
10
+ keywords: [canvas, ui, frontend, css, design, animation, layout, component, styling, visual, modal, overlay, orb]
11
+ primary: pixel
12
+ fallback: link
13
+
14
+ - name: android
15
+ keywords: [android, kotlin, apk, google-play, jetpack, compose, gradle, firebase-android]
16
+ primary: kotlin
17
+ fallback: link
18
+
19
+ - name: ios
20
+ keywords: [ios, swift, xcode, apple, macos, swiftui, cocoa, testflight, app-store]
21
+ primary: swift
22
+ fallback: link
23
+
24
+ - name: security
25
+ keywords: [security, auth, rls, audit, vulnerability, cve, exploit, privilege, injection, csrf, xss, token, secret, encrypt]
26
+ primary: shield
27
+ fallback: sage
28
+
29
+ - name: node-api-backend
30
+ keywords: [node, api, backend, server, endpoint, route, database, db, migration, schema, typescript, integration]
31
+ primary: link
32
+ fallback: kai
33
+
34
+ catch_all: kai
@@ -1,4 +1,10 @@
1
- export type ActivationEventType = 'signup_completed' | 'host_preflight_passed' | 'host_preflight_failed' | 'workspace_ready' | 'first_task_started' | 'first_task_completed' | 'first_team_message_sent' | 'day2_return_action';
1
+ export type ActivationEventType = 'signup_completed' | 'host_preflight_passed' | 'host_preflight_failed' | 'workspace_ready' | 'workspace_not_ready' | 'first_task_started' | 'first_task_completed' | 'first_team_message_sent' | 'day2_return_action' | 'canvas_opened' | 'canvas_first_action';
2
+ /**
3
+ * Reason codes for workspace_not_ready events.
4
+ * Used to categorise funnel drop-off during workspace setup.
5
+ * task-1773529423279-8htqicvom
6
+ */
7
+ export type WorkspaceNotReadyReason = 'permissions_error' | 'disk_full' | 'path_not_found' | 'timeout' | 'unknown';
2
8
  export interface ActivationEvent {
3
9
  type: ActivationEventType;
4
10
  userId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"activationEvents.d.ts","sourceRoot":"","sources":["../src/activationEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activationEvents.d.ts","sourceRoot":"","sources":["../src/activationEvents.ts"],"names":[],"mappings":"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"}
@@ -135,6 +135,13 @@ export async function emitActivationEvent(type, userId, metadata) {
135
135
  console.warn(`[ActivationFunnel] host_preflight_failed for userId=${userId} has no failed_checks or first_blocker metadata. ` +
136
136
  `Failure reason will appear as "unspecified" in the funnel. Emit metadata.failed_checks=[...] and metadata.first_blocker=<checkId>.`);
137
137
  }
138
+ // Warn at ingestion time if workspace_not_ready arrives without a reason code.
139
+ // reason should be one of: permissions_error | disk_full | path_not_found | timeout | unknown
140
+ // task-1773529423279-8htqicvom
141
+ if (type === 'workspace_not_ready' && (!metadata || !metadata.reason)) {
142
+ console.warn(`[ActivationFunnel] workspace_not_ready for userId=${userId} has no reason code. ` +
143
+ `Set metadata.reason to one of: permissions_error, disk_full, path_not_found, timeout, unknown.`);
144
+ }
138
145
  const timestamp = Date.now();
139
146
  userMap.set(type, timestamp);
140
147
  const event = { type, userId, timestamp, metadata };
@@ -162,10 +169,13 @@ export function getUserFunnelState(userId) {
162
169
  host_preflight_passed: null,
163
170
  host_preflight_failed: null,
164
171
  workspace_ready: null,
172
+ workspace_not_ready: null, // tracked but not a forward funnel step
165
173
  first_task_started: null,
166
174
  first_task_completed: null,
167
175
  first_team_message_sent: null,
168
176
  day2_return_action: null,
177
+ canvas_opened: null,
178
+ canvas_first_action: null,
169
179
  };
170
180
  let currentStep = 0;
171
181
  if (userMap) {
@@ -208,10 +218,13 @@ export function getFunnelSummary(opts) {
208
218
  host_preflight_passed: 0,
209
219
  host_preflight_failed: 0,
210
220
  workspace_ready: 0,
221
+ workspace_not_ready: 0,
211
222
  first_task_started: 0,
212
223
  first_task_completed: 0,
213
224
  first_team_message_sent: 0,
214
225
  day2_return_action: 0,
226
+ canvas_opened: 0,
227
+ canvas_first_action: 0,
215
228
  };
216
229
  const funnelByUser = [];
217
230
  let completedUsers = 0;
@@ -407,10 +420,20 @@ export function getFailureDistribution() {
407
420
  // metadata null/undefined: falls through to unspecified
408
421
  }
409
422
  }
410
- // Workspace-ready drops: we don't have a dedicated failure event type yet.
411
- // Provide an actionable bucket instead of leaving everything "unspecified".
423
+ // Workspace-ready drops: check for workspace_not_ready events first.
424
+ // If the user emitted workspace_not_ready, use its reason code for attribution.
425
+ // task-1773529423279-8htqicvom
412
426
  if (step === 'workspace_ready') {
413
- reasonCounts.set('workspace_ready_not_emitted', (reasonCounts.get('workspace_ready_not_emitted') || 0) + 1);
427
+ const notReadyEvents = eventLog.filter(e => e.userId === u.userId && e.type === 'workspace_not_ready');
428
+ if (notReadyEvents.length > 0) {
429
+ for (const nre of notReadyEvents) {
430
+ const reason = String(nre.metadata?.reason || 'unknown');
431
+ reasonCounts.set(`workspace_not_ready:${reason}`, (reasonCounts.get(`workspace_not_ready:${reason}`) || 0) + 1);
432
+ }
433
+ }
434
+ else {
435
+ reasonCounts.set('workspace_ready_not_emitted', (reasonCounts.get('workspace_ready_not_emitted') || 0) + 1);
436
+ }
414
437
  }
415
438
  // Generic: check for explicit failure metadata on any events for this user.
416
439
  const stepFailEvents = eventLog.filter(e => e.userId === u.userId && e.metadata?.failedAt === step);
@@ -456,10 +479,13 @@ export function getWeeklyTrends(weekCount = 12) {
456
479
  host_preflight_passed: 0,
457
480
  host_preflight_failed: 0,
458
481
  workspace_ready: 0,
482
+ workspace_not_ready: 0,
459
483
  first_task_started: 0,
460
484
  first_task_completed: 0,
461
485
  first_team_message_sent: 0,
462
486
  day2_return_action: 0,
487
+ canvas_opened: 0,
488
+ canvas_first_action: 0,
463
489
  };
464
490
  let newUsers = 0;
465
491
  let completedUsers = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"activationEvents.js","sourceRoot":"","sources":["../src/activationEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activationEvents.js","sourceRoot":"","sources":["../src/activationEvents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Activity Stream Event Normalizer
3
+ *
4
+ * Transforms raw eventBus events into a consistent shape:
5
+ * { id, type, agent, title, detail, taskId, prUrl, timestamp }
6
+ *
7
+ * This ensures all activity-stream SSE consumers receive events
8
+ * in a predictable format regardless of the source event type.
9
+ */
10
+ export interface NormalizedActivityEvent {
11
+ id: string;
12
+ type: string;
13
+ agent: string | null;
14
+ title: string;
15
+ detail: string | null;
16
+ taskId: string | null;
17
+ prUrl: string | null;
18
+ timestamp: number;
19
+ /** Original raw data preserved for consumers that need full detail */
20
+ _raw?: unknown;
21
+ }
22
+ interface RawEvent {
23
+ id: string;
24
+ type: string;
25
+ timestamp: number;
26
+ data: Record<string, unknown>;
27
+ }
28
+ /**
29
+ * Normalize a raw eventBus event into the standard activity-stream shape.
30
+ */
31
+ export declare function normalizeActivityEvent(event: RawEvent): NormalizedActivityEvent;
32
+ /**
33
+ * Strip the _raw field for lightweight payloads.
34
+ */
35
+ export declare function normalizeActivityEventSlim(event: RawEvent): Omit<NormalizedActivityEvent, '_raw'>;
36
+ export {};
37
+ //# sourceMappingURL=activity-stream-normalizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-stream-normalizer.d.ts","sourceRoot":"","sources":["../src/activity-stream-normalizer.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,GAAG,uBAAuB,CA2C/E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAIjG"}
@@ -0,0 +1,101 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (c) Reflectt AI
3
+ /**
4
+ * Normalize a raw eventBus event into the standard activity-stream shape.
5
+ */
6
+ export function normalizeActivityEvent(event) {
7
+ const data = (event.data ?? {});
8
+ // Extract agent from various field names
9
+ const agent = extractString(data, 'agentId')
10
+ ?? extractString(data, 'agent')
11
+ ?? extractString(data, 'name')
12
+ ?? extractNestedString(data, 'presence', 'name')
13
+ ?? null;
14
+ // Extract title based on event type
15
+ const title = deriveTitle(event.type, data);
16
+ // Extract detail
17
+ const detail = extractString(data, 'transcript')
18
+ ?? extractString(data, 'text')
19
+ ?? extractNestedString(data, 'data', 'text')
20
+ ?? extractString(data, 'query')
21
+ ?? null;
22
+ // Extract task reference
23
+ const taskId = extractString(data, 'taskId')
24
+ ?? extractString(data, 'task_id')
25
+ ?? extractNestedString(data, 'activeTask', 'id')
26
+ ?? extractNestedString(data, 'payload', 'activeTask', 'id')
27
+ ?? null;
28
+ // Extract PR URL
29
+ const prUrl = extractString(data, 'prUrl')
30
+ ?? extractString(data, 'pr_url')
31
+ ?? null;
32
+ return {
33
+ id: event.id,
34
+ type: event.type,
35
+ agent,
36
+ title,
37
+ detail,
38
+ taskId,
39
+ prUrl,
40
+ timestamp: event.timestamp,
41
+ _raw: data,
42
+ };
43
+ }
44
+ /**
45
+ * Strip the _raw field for lightweight payloads.
46
+ */
47
+ export function normalizeActivityEventSlim(event) {
48
+ const normalized = normalizeActivityEvent(event);
49
+ const { _raw, ...slim } = normalized;
50
+ return slim;
51
+ }
52
+ // ── Helpers ──
53
+ function extractString(obj, key) {
54
+ const val = obj[key];
55
+ return typeof val === 'string' && val.length > 0 ? val : null;
56
+ }
57
+ function extractNestedString(obj, ...keys) {
58
+ let current = obj;
59
+ for (const key of keys) {
60
+ if (current == null || typeof current !== 'object')
61
+ return null;
62
+ current = current[key];
63
+ }
64
+ return typeof current === 'string' && current.length > 0 ? current : null;
65
+ }
66
+ function deriveTitle(type, data) {
67
+ switch (type) {
68
+ case 'canvas_message': {
69
+ const subType = extractString(data, 'type');
70
+ if (subType === 'voice_transcript')
71
+ return 'Voice transcript';
72
+ if (subType === 'info')
73
+ return 'Info';
74
+ if (data.isResponse)
75
+ return 'Agent response';
76
+ if (data.query)
77
+ return 'Canvas query';
78
+ return 'Message';
79
+ }
80
+ case 'canvas_render': {
81
+ const state = extractString(data, 'state');
82
+ const agent = extractString(data, 'agentId') ?? 'Agent';
83
+ if (state === 'thinking')
84
+ return `${agent} thinking`;
85
+ if (state === 'handoff')
86
+ return `${agent} handing off`;
87
+ if (state === 'decision')
88
+ return `${agent} needs attention`;
89
+ if (state === 'ambient')
90
+ return `${agent} idle`;
91
+ return `${agent} state: ${state ?? 'unknown'}`;
92
+ }
93
+ case 'canvas_expression':
94
+ return extractString(data, 'expression') ?? 'Expression';
95
+ case 'canvas_burst':
96
+ return extractString(data, 'reason') ?? 'Activity burst';
97
+ default:
98
+ return type.replace(/_/g, ' ');
99
+ }
100
+ }
101
+ //# sourceMappingURL=activity-stream-normalizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity-stream-normalizer.js","sourceRoot":"","sources":["../src/activity-stream-normalizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { RunKind } from "./agent-interface.js";
2
+ export declare const ALLOWED_ACTIONS: RunKind[];
3
+ export declare const ALLOWED_DOMAINS: string[];
4
+ export declare function checkActionAllowed(kind: RunKind, target?: string): {
5
+ allowed: boolean;
6
+ reason?: string;
7
+ };
8
+ export declare function requiresApprovalGate(_kind: RunKind): boolean;
9
+ //# sourceMappingURL=agent-exec-guardrail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-exec-guardrail.d.ts","sourceRoot":"","sources":["../src/agent-exec-guardrail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,eAAO,MAAM,eAAe,EAAE,OAAO,EAA+C,CAAC;AACrF,eAAO,MAAM,eAAe,EAAE,MAAM,EAAmB,CAAC;AAExD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,EACb,MAAM,CAAC,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAWvC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG5D"}
@@ -0,0 +1,24 @@
1
+ export const ALLOWED_ACTIONS = ["github_issue_create", "macos_ui_action"];
2
+ export const ALLOWED_DOMAINS = ["github.com"];
3
+ export function checkActionAllowed(kind, target) {
4
+ if (!ALLOWED_ACTIONS.includes(kind)) {
5
+ return { allowed: false, reason: `Action "${kind}" is not in the approved action list` };
6
+ }
7
+ if (target) {
8
+ const url = (() => { try {
9
+ return new URL(target);
10
+ }
11
+ catch {
12
+ return null;
13
+ } })();
14
+ if (url && !ALLOWED_DOMAINS.some(d => url.hostname === d || url.hostname.endsWith("." + d))) {
15
+ return { allowed: false, reason: `Domain "${url.hostname}" is not in the approved domain list` };
16
+ }
17
+ }
18
+ return { allowed: true };
19
+ }
20
+ export function requiresApprovalGate(_kind) {
21
+ // All v1 actions are irreversible — always require human approval
22
+ return true;
23
+ }
24
+ //# sourceMappingURL=agent-exec-guardrail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-exec-guardrail.js","sourceRoot":"","sources":["../src/agent-exec-guardrail.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAc,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;AACrF,MAAM,CAAC,MAAM,eAAe,GAAa,CAAC,YAAY,CAAC,CAAC;AAExD,MAAM,UAAU,kBAAkB,CAChC,IAAa,EACb,MAAe;IAEf,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,IAAI,sCAAsC,EAAE,CAAC;IAC3F,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAAC,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,CAAC,QAAQ,sCAAsC,EAAE,CAAC;QACnG,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,kEAAkE;IAClE,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=agent-exec-guardrail.test.d.ts.map