crewly 1.15.0 → 1.16.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 (205) hide show
  1. package/README.md +6 -4
  2. package/config/roles/developer/prompt.md +1 -1
  3. package/config/runtime_scripts/runtime-config.json +7 -0
  4. package/config/skills/agent/core/count-json/SKILL.md +61 -0
  5. package/config/skills/agent/core/count-json/execute.sh +52 -0
  6. package/config/skills/agent/core/count-json/execute.test.sh +35 -0
  7. package/config/skills/agent/core/record-prediction/SKILL.md +61 -0
  8. package/config/skills/agent/core/record-prediction/execute.sh +90 -0
  9. package/config/skills/agent/core/record-prediction/execute.test.sh +67 -0
  10. package/config/skills/agent/core/resolve-prediction/SKILL.md +61 -0
  11. package/config/skills/agent/core/resolve-prediction/execute.sh +87 -0
  12. package/config/skills/agent/core/resolve-prediction/execute.test.sh +74 -0
  13. package/config/skills/agent/core/set-focus/SKILL.md +64 -0
  14. package/config/skills/agent/core/set-focus/execute.sh +73 -0
  15. package/config/skills/agent/core/set-focus/execute.test.sh +67 -0
  16. package/config/skills/agent/core/suppress-noise/SKILL.md +59 -0
  17. package/config/skills/agent/core/suppress-noise/execute.sh +68 -0
  18. package/config/skills/agent/core/suppress-noise/execute.test.sh +58 -0
  19. package/dist/backend/backend/src/constants.d.ts +61 -0
  20. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  21. package/dist/backend/backend/src/constants.js +71 -0
  22. package/dist/backend/backend/src/constants.js.map +1 -1
  23. package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.d.ts +76 -0
  24. package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.d.ts.map +1 -0
  25. package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.js +262 -0
  26. package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.js.map +1 -0
  27. package/dist/backend/backend/src/controllers/oauth/oauth.routes.d.ts.map +1 -1
  28. package/dist/backend/backend/src/controllers/oauth/oauth.routes.js +31 -0
  29. package/dist/backend/backend/src/controllers/oauth/oauth.routes.js.map +1 -1
  30. package/dist/backend/backend/src/controllers/request-types.d.ts +6 -2
  31. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  32. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  33. package/dist/backend/backend/src/controllers/team/team.controller.js +4 -0
  34. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  35. package/dist/backend/backend/src/index.d.ts +1 -0
  36. package/dist/backend/backend/src/index.d.ts.map +1 -1
  37. package/dist/backend/backend/src/index.js +53 -0
  38. package/dist/backend/backend/src/index.js.map +1 -1
  39. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  40. package/dist/backend/backend/src/routes/api.routes.js +6 -0
  41. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  42. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +10 -0
  43. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  44. package/dist/backend/backend/src/services/agent/agent-registration.service.js +32 -4
  45. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  46. package/dist/backend/backend/src/services/agent/opencode-runtime.service.d.ts +114 -0
  47. package/dist/backend/backend/src/services/agent/opencode-runtime.service.d.ts.map +1 -0
  48. package/dist/backend/backend/src/services/agent/opencode-runtime.service.js +185 -0
  49. package/dist/backend/backend/src/services/agent/opencode-runtime.service.js.map +1 -0
  50. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  51. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +22 -1
  52. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  53. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +1 -1
  54. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  55. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +15 -3
  56. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  57. package/dist/backend/backend/src/services/agent/runtime-service.factory.d.ts.map +1 -1
  58. package/dist/backend/backend/src/services/agent/runtime-service.factory.js +9 -0
  59. package/dist/backend/backend/src/services/agent/runtime-service.factory.js.map +1 -1
  60. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts +23 -0
  61. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  62. package/dist/backend/backend/src/services/ai/prompt-builder.service.js +45 -0
  63. package/dist/backend/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  64. package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts +43 -3
  65. package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts.map +1 -1
  66. package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.js +85 -4
  67. package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.js.map +1 -1
  68. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +2 -0
  69. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  70. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  71. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
  72. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +6 -0
  73. package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
  74. package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts +45 -0
  75. package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts.map +1 -0
  76. package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.js +59 -0
  77. package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.js.map +1 -0
  78. package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.d.ts +137 -0
  79. package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.d.ts.map +1 -0
  80. package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.js +216 -0
  81. package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.js.map +1 -0
  82. package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts +4 -1
  83. package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts.map +1 -1
  84. package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.js +3 -1
  85. package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.js.map +1 -1
  86. package/dist/backend/backend/src/services/mcp-tool-definitions.d.ts +1 -1
  87. package/dist/backend/backend/src/services/mcp-tool-definitions.js +1 -1
  88. package/dist/backend/backend/src/services/mcp-tool-definitions.js.map +1 -1
  89. package/dist/backend/backend/src/services/runtime-adapter.d.ts +10 -1
  90. package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -1
  91. package/dist/backend/backend/src/services/runtime-adapter.js +12 -1
  92. package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -1
  93. package/dist/backend/backend/src/services/settings/settings.service.d.ts.map +1 -1
  94. package/dist/backend/backend/src/services/settings/settings.service.js +1 -0
  95. package/dist/backend/backend/src/services/settings/settings.service.js.map +1 -1
  96. package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.d.ts +78 -0
  97. package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.d.ts.map +1 -0
  98. package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.js +129 -0
  99. package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.js.map +1 -0
  100. package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.d.ts +117 -0
  101. package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.d.ts.map +1 -0
  102. package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.js +214 -0
  103. package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.js.map +1 -0
  104. package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts +2 -0
  105. package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts.map +1 -1
  106. package/dist/backend/backend/src/services/v3/mission-reminder.service.js +16 -0
  107. package/dist/backend/backend/src/services/v3/mission-reminder.service.js.map +1 -1
  108. package/dist/backend/backend/src/types/index.d.ts +11 -1
  109. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  110. package/dist/backend/backend/src/types/index.js.map +1 -1
  111. package/dist/backend/backend/src/types/settings.types.d.ts +1 -1
  112. package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
  113. package/dist/backend/backend/src/types/settings.types.js +7 -0
  114. package/dist/backend/backend/src/types/settings.types.js.map +1 -1
  115. package/dist/backend/backend/src/types/team-template.types.d.ts +2 -2
  116. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  117. package/dist/backend/backend/src/types/team-template.types.js +1 -1
  118. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  119. package/dist/backend/backend/src/utils/terminal-string-ops.d.ts +2 -0
  120. package/dist/backend/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
  121. package/dist/backend/backend/src/utils/terminal-string-ops.js +14 -0
  122. package/dist/backend/backend/src/utils/terminal-string-ops.js.map +1 -1
  123. package/dist/backend/build-info.json +2 -2
  124. package/dist/cli/backend/src/constants.d.ts +61 -0
  125. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  126. package/dist/cli/backend/src/constants.js +71 -0
  127. package/dist/cli/backend/src/constants.js.map +1 -1
  128. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +10 -0
  129. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  130. package/dist/cli/backend/src/services/agent/agent-registration.service.js +32 -4
  131. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  132. package/dist/cli/backend/src/services/agent/opencode-runtime.service.d.ts +114 -0
  133. package/dist/cli/backend/src/services/agent/opencode-runtime.service.d.ts.map +1 -0
  134. package/dist/cli/backend/src/services/agent/opencode-runtime.service.js +185 -0
  135. package/dist/cli/backend/src/services/agent/opencode-runtime.service.js.map +1 -0
  136. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  137. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +22 -1
  138. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  139. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts +1 -1
  140. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  141. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +15 -3
  142. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  143. package/dist/cli/backend/src/services/agent/runtime-service.factory.d.ts.map +1 -1
  144. package/dist/cli/backend/src/services/agent/runtime-service.factory.js +9 -0
  145. package/dist/cli/backend/src/services/agent/runtime-service.factory.js.map +1 -1
  146. package/dist/cli/backend/src/services/ai/prompt-builder.service.d.ts +23 -0
  147. package/dist/cli/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  148. package/dist/cli/backend/src/services/ai/prompt-builder.service.js +45 -0
  149. package/dist/cli/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  150. package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts +43 -3
  151. package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts.map +1 -1
  152. package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.js +85 -4
  153. package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.js.map +1 -1
  154. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +2 -0
  155. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  156. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  157. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
  158. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js +6 -0
  159. package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
  160. package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts +45 -0
  161. package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts.map +1 -0
  162. package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.js +59 -0
  163. package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.js.map +1 -0
  164. package/dist/cli/backend/src/services/ai/self-improvement/attention.service.d.ts +74 -0
  165. package/dist/cli/backend/src/services/ai/self-improvement/attention.service.d.ts.map +1 -0
  166. package/dist/cli/backend/src/services/ai/self-improvement/attention.service.js +132 -0
  167. package/dist/cli/backend/src/services/ai/self-improvement/attention.service.js.map +1 -0
  168. package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.d.ts +107 -0
  169. package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.d.ts.map +1 -0
  170. package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.js +183 -0
  171. package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.js.map +1 -0
  172. package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts +100 -0
  173. package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts.map +1 -0
  174. package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.js +130 -0
  175. package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.js.map +1 -0
  176. package/dist/cli/backend/src/services/mcp-tool-definitions.d.ts +1 -1
  177. package/dist/cli/backend/src/services/mcp-tool-definitions.js +1 -1
  178. package/dist/cli/backend/src/services/mcp-tool-definitions.js.map +1 -1
  179. package/dist/cli/backend/src/services/settings/settings.service.d.ts.map +1 -1
  180. package/dist/cli/backend/src/services/settings/settings.service.js +1 -0
  181. package/dist/cli/backend/src/services/settings/settings.service.js.map +1 -1
  182. package/dist/cli/backend/src/types/index.d.ts +11 -1
  183. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  184. package/dist/cli/backend/src/types/index.js.map +1 -1
  185. package/dist/cli/backend/src/types/settings.types.d.ts +1 -1
  186. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
  187. package/dist/cli/backend/src/types/settings.types.js +7 -0
  188. package/dist/cli/backend/src/types/settings.types.js.map +1 -1
  189. package/dist/cli/backend/src/types/team-template.types.d.ts +2 -2
  190. package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -1
  191. package/dist/cli/backend/src/types/team-template.types.js +1 -1
  192. package/dist/cli/backend/src/types/team-template.types.js.map +1 -1
  193. package/dist/cli/backend/src/utils/terminal-string-ops.d.ts +2 -0
  194. package/dist/cli/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
  195. package/dist/cli/backend/src/utils/terminal-string-ops.js +14 -0
  196. package/dist/cli/backend/src/utils/terminal-string-ops.js.map +1 -1
  197. package/dist/cli/cli/src/commands/onboard.d.ts +2 -2
  198. package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
  199. package/dist/cli/cli/src/commands/onboard.js +15 -7
  200. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  201. package/frontend/dist/assets/{index-203224f9.js → index-019817e2.js} +272 -272
  202. package/frontend/dist/assets/index-a56613e7.css +42 -0
  203. package/frontend/dist/index.html +2 -2
  204. package/package.json +1 -1
  205. package/frontend/dist/assets/index-dcaf6c88.css +0 -42
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Fallback Trigger Cleanup — cancels a delegation's "fallback check" timer
3
+ * the moment the delegated WorkItem reaches a terminal status.
4
+ *
5
+ * `delegate-task` arms a one-shot time trigger named
6
+ * `fallback-<target>-<wi8>` whose action creates a self-targeted "Fallback
7
+ * check on <target> for task <wi8>" WorkItem for the orchestrator. Nothing
8
+ * ever cancelled it, so on steamfun-ops it fired after every delegation
9
+ * whether the work was long verified or not: 26 of 65 real WorkItems in
10
+ * three days were these checks, each one a full orchestrator turn
11
+ * (2026-09-18). The skill's default was raised to 2 h; this subscriber
12
+ * removes the timer as soon as the work is done, verified or cancelled so it
13
+ * never fires for finished work at all.
14
+ *
15
+ * @module services/v3/fallback-trigger-cleanup.subscriber
16
+ */
17
+ import { LoggerService } from '../core/logger.service.js';
18
+ import { formatError } from '../../utils/format-error.js';
19
+ import { TriggerEngine } from './trigger-engine.service.js';
20
+ /** Events after which a delegation's fallback timer is pointless. */
21
+ export const FALLBACK_CLEANUP_EVENTS = [
22
+ 'task:done',
23
+ 'task:verified',
24
+ 'task:cancelled',
25
+ ];
26
+ /** Length of the WorkItem-id prefix `delegate-task` puts in the trigger name. */
27
+ const WI_ID_PREFIX_LENGTH = 8;
28
+ /**
29
+ * Name `delegate-task` gives the fallback timer for a WorkItem.
30
+ *
31
+ * @param workItemId - Full WorkItem id
32
+ * @param target - Session the work was delegated to
33
+ * @returns The trigger name
34
+ */
35
+ export function fallbackTriggerName(workItemId, target) {
36
+ return `fallback-${target}-${workItemId.slice(0, WI_ID_PREFIX_LENGTH)}`;
37
+ }
38
+ /**
39
+ * Whether a trigger is the fallback timer for the given WorkItem, regardless
40
+ * of target (the event may not carry the target session).
41
+ *
42
+ * @param trigger - Candidate trigger
43
+ * @param workItemId - Full WorkItem id
44
+ * @returns True when the name matches `fallback-*-<wi8>`
45
+ */
46
+ export function isFallbackTriggerFor(trigger, workItemId) {
47
+ const name = trigger.name ?? '';
48
+ return name.startsWith('fallback-') && name.endsWith(`-${workItemId.slice(0, WI_ID_PREFIX_LENGTH)}`);
49
+ }
50
+ /**
51
+ * Subscribes to task terminal events and cancels matching fallback timers.
52
+ */
53
+ export class FallbackTriggerCleanupSubscriber {
54
+ logger;
55
+ eventBus;
56
+ triggers;
57
+ unsubscribers = [];
58
+ started = false;
59
+ constructor(deps) {
60
+ this.logger = LoggerService.getInstance().createComponentLogger('FallbackTriggerCleanup');
61
+ this.eventBus = deps.eventBus;
62
+ this.triggers = deps.triggers;
63
+ }
64
+ /**
65
+ * Production wiring.
66
+ *
67
+ * @param eventBus - The process event bus
68
+ * @returns A subscriber bound to the trigger engine singleton
69
+ */
70
+ static boot(eventBus) {
71
+ return new FallbackTriggerCleanupSubscriber({ eventBus, triggers: TriggerEngine.getInstance() });
72
+ }
73
+ /** Subscribe. Idempotent. */
74
+ start() {
75
+ if (this.started)
76
+ return;
77
+ this.started = true;
78
+ for (const eventType of FALLBACK_CLEANUP_EVENTS) {
79
+ this.unsubscribers.push(this.eventBus.onInProcess(eventType, (e) => {
80
+ void this.handle(e).catch((err) => {
81
+ this.logger.warn('Fallback trigger cleanup failed', { eventType, error: formatError(err) });
82
+ });
83
+ }));
84
+ }
85
+ this.logger.info('FallbackTriggerCleanup subscribed', { eventTypes: [...FALLBACK_CLEANUP_EVENTS] });
86
+ }
87
+ /** Unsubscribe. Safe to call twice. */
88
+ stop() {
89
+ for (const u of this.unsubscribers) {
90
+ try {
91
+ u();
92
+ }
93
+ catch {
94
+ // ignore
95
+ }
96
+ }
97
+ this.unsubscribers = [];
98
+ this.started = false;
99
+ }
100
+ /**
101
+ * Cancel every live fallback timer for the event's WorkItem.
102
+ *
103
+ * @param event - A task terminal event
104
+ * @returns Number of triggers cancelled
105
+ */
106
+ async handle(event) {
107
+ const workItemId = event.workItemId;
108
+ if (!workItemId)
109
+ return 0;
110
+ let cancelled = 0;
111
+ for (const trigger of this.triggers.list()) {
112
+ if (trigger.status !== 'active' && trigger.status !== 'paused')
113
+ continue;
114
+ if (!isFallbackTriggerFor(trigger, workItemId))
115
+ continue;
116
+ if (await this.triggers.cancel(trigger.id)) {
117
+ cancelled += 1;
118
+ this.logger.info('Cancelled fallback timer for finished WorkItem', {
119
+ workItemId,
120
+ triggerId: trigger.id,
121
+ name: trigger.name,
122
+ event: event.type,
123
+ });
124
+ }
125
+ }
126
+ return cancelled;
127
+ }
128
+ }
129
+ //# sourceMappingURL=fallback-trigger-cleanup.subscriber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback-trigger-cleanup.subscriber.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/fallback-trigger-cleanup.subscriber.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * KR Skill Measurer — fills `measurementSource: 'skill_output'` Key Results
3
+ * from a skill's JSON output.
4
+ *
5
+ * Until 2026-09-18 a KR's value had exactly three ways to change and all of
6
+ * them were a hand-made API call, so "tickets waiting for acceptance" or
7
+ * "build pass rate" could only be tracked by someone remembering to type the
8
+ * number in. A KR configured as
9
+ *
10
+ * ```json
11
+ * { "measurementSource": "skill_output",
12
+ * "measurementConfig": { "skill": "steamfun-ticket-count",
13
+ * "args": { "status": "review" },
14
+ * "jsonPath": ".count" } }
15
+ * ```
16
+ *
17
+ * is now measured on every mission sweep: the named skill's `execute.sh` is
18
+ * run with the JSON args, the number at `jsonPath` is read from its stdout
19
+ * and recorded as a measurement (deduped when unchanged since the last one).
20
+ *
21
+ * Safety: `skill` is a bare name (`[a-z0-9-]`) resolved against the known
22
+ * skill roots only — never a path — and runs with a hard timeout and a
23
+ * bounded output size. This is the same trust boundary as an agent running
24
+ * the skill itself, not a new one.
25
+ *
26
+ * @module services/v3/kr-skill-measurer.service
27
+ */
28
+ import { KRTrackingService } from './kr-tracking.service.js';
29
+ import type { KeyResult } from '../../types/v2/key-result.types.js';
30
+ /** Shape of `measurementConfig` for a `skill_output` KR. */
31
+ export interface SkillOutputMeasurementConfig {
32
+ /** Bare skill directory name, e.g. `steamfun-ticket-count`. */
33
+ skill: string;
34
+ /** JSON object passed to the skill as its single argument. */
35
+ args?: Record<string, unknown>;
36
+ /** Dot path into the skill's JSON stdout, e.g. `.count` or `.data.total`. Default `.value`. */
37
+ jsonPath?: string;
38
+ }
39
+ /** What one measurement attempt produced. */
40
+ export interface SkillMeasurementOutcome {
41
+ krId: string;
42
+ status: 'recorded' | 'unchanged' | 'skipped' | 'failed';
43
+ value?: number;
44
+ reason?: string;
45
+ }
46
+ /** Runs a resolved skill and returns its stdout. Injectable for tests. */
47
+ export type SkillRunner = (executePath: string, argsJson: string, timeoutMs: number) => Promise<string>;
48
+ /**
49
+ * Default runner: `bash <execute.sh> '<json>'` with a timeout and output cap.
50
+ *
51
+ * @param executePath - Absolute path of the skill's execute.sh
52
+ * @param argsJson - JSON argument string
53
+ * @param timeoutMs - Kill the skill after this long
54
+ * @returns stdout
55
+ */
56
+ export declare const defaultSkillRunner: SkillRunner;
57
+ /**
58
+ * Read a dot path (`.a.b.c`, leading dot optional) out of parsed JSON.
59
+ *
60
+ * @param value - Parsed JSON
61
+ * @param jsonPath - Dot path
62
+ * @returns The value at the path, or undefined
63
+ */
64
+ export declare function readJsonPath(value: unknown, jsonPath: string): unknown;
65
+ /**
66
+ * Coerce a skill output value to a number: numbers as is, booleans to 1/0,
67
+ * numeric strings parsed. Anything else is undefined.
68
+ *
69
+ * @param raw - Value read from the skill output
70
+ * @returns A finite number or undefined
71
+ */
72
+ export declare function coerceMeasurement(raw: unknown): number | undefined;
73
+ /**
74
+ * Measures `skill_output` Key Results by running their skill.
75
+ */
76
+ export declare class KRSkillMeasurerService {
77
+ private static instance;
78
+ private readonly logger;
79
+ private readonly runner;
80
+ private readonly skillRoots;
81
+ private readonly krTracking;
82
+ /**
83
+ * @param opts - Test seams: skill roots to search, a runner, a KR service
84
+ */
85
+ constructor(opts?: {
86
+ skillRoots?: string[];
87
+ runner?: SkillRunner;
88
+ krTracking?: KRTrackingService;
89
+ projectRoot?: string;
90
+ });
91
+ static getInstance(): KRSkillMeasurerService;
92
+ static setInstance(next: KRSkillMeasurerService | null): void;
93
+ /**
94
+ * Resolve a bare skill name to its `execute.sh`, searching the known roots.
95
+ *
96
+ * @param skill - Bare directory name
97
+ * @returns Absolute path, or null when the name is invalid or not found
98
+ */
99
+ resolveSkill(skill: string): string | null;
100
+ /**
101
+ * Measure every `skill_output` KR of a mission. Failure-soft: one KR's
102
+ * error never stops the others, and nothing throws to the sweep.
103
+ *
104
+ * @param missionId - Mission whose KRs to measure
105
+ * @returns One outcome per skill_output KR
106
+ */
107
+ measureMission(missionId: string): Promise<SkillMeasurementOutcome[]>;
108
+ /**
109
+ * Measure one KR. Exposed for the manual `POST …/measure-now` path.
110
+ *
111
+ * @param missionId - Owning mission
112
+ * @param kr - The KR (must be `skill_output`)
113
+ * @returns The outcome
114
+ */
115
+ measureOne(missionId: string, kr: KeyResult): Promise<SkillMeasurementOutcome>;
116
+ }
117
+ //# sourceMappingURL=kr-skill-measurer.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kr-skill-measurer.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/kr-skill-measurer.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAOH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAGpE,4DAA4D;AAC5D,MAAM,WAAW,4BAA4B;IAC3C,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,6CAA6C;AAC7C,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,0EAA0E;AAC1E,MAAM,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAIxG;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAa7B,CAAC;AAEL;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAQtE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQlE;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAE/C;;OAEG;gBACS,IAAI,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO;IAe5H,MAAM,CAAC,WAAW,IAAI,sBAAsB;IAK5C,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,sBAAsB,GAAG,IAAI,GAAG,IAAI;IAI7D;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAS1C;;;;;;OAMG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAmB3E;;;;;;OAMG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAuCrF"}
@@ -0,0 +1,214 @@
1
+ /**
2
+ * KR Skill Measurer — fills `measurementSource: 'skill_output'` Key Results
3
+ * from a skill's JSON output.
4
+ *
5
+ * Until 2026-09-18 a KR's value had exactly three ways to change and all of
6
+ * them were a hand-made API call, so "tickets waiting for acceptance" or
7
+ * "build pass rate" could only be tracked by someone remembering to type the
8
+ * number in. A KR configured as
9
+ *
10
+ * ```json
11
+ * { "measurementSource": "skill_output",
12
+ * "measurementConfig": { "skill": "steamfun-ticket-count",
13
+ * "args": { "status": "review" },
14
+ * "jsonPath": ".count" } }
15
+ * ```
16
+ *
17
+ * is now measured on every mission sweep: the named skill's `execute.sh` is
18
+ * run with the JSON args, the number at `jsonPath` is read from its stdout
19
+ * and recorded as a measurement (deduped when unchanged since the last one).
20
+ *
21
+ * Safety: `skill` is a bare name (`[a-z0-9-]`) resolved against the known
22
+ * skill roots only — never a path — and runs with a hard timeout and a
23
+ * bounded output size. This is the same trust boundary as an agent running
24
+ * the skill itself, not a new one.
25
+ *
26
+ * @module services/v3/kr-skill-measurer.service
27
+ */
28
+ import { execFile } from 'child_process';
29
+ import * as fs from 'fs';
30
+ import * as os from 'os';
31
+ import * as path from 'path';
32
+ import { LoggerService } from '../core/logger.service.js';
33
+ import { KRTrackingService } from './kr-tracking.service.js';
34
+ import { KR_SKILL_MEASURER_CONSTANTS } from '../../constants.js';
35
+ const SKILL_NAME_RE = /^[a-z0-9][a-z0-9-]{0,63}$/;
36
+ /**
37
+ * Default runner: `bash <execute.sh> '<json>'` with a timeout and output cap.
38
+ *
39
+ * @param executePath - Absolute path of the skill's execute.sh
40
+ * @param argsJson - JSON argument string
41
+ * @param timeoutMs - Kill the skill after this long
42
+ * @returns stdout
43
+ */
44
+ export const defaultSkillRunner = (executePath, argsJson, timeoutMs) => new Promise((resolve, reject) => {
45
+ execFile('bash', [executePath, argsJson], {
46
+ timeout: timeoutMs,
47
+ maxBuffer: KR_SKILL_MEASURER_CONSTANTS.MAX_OUTPUT_BYTES,
48
+ cwd: path.dirname(executePath),
49
+ env: { ...process.env, CREWLY_SKILL_FULL_OUTPUT: '1' },
50
+ }, (err, stdout) => (err ? reject(err) : resolve(String(stdout))));
51
+ });
52
+ /**
53
+ * Read a dot path (`.a.b.c`, leading dot optional) out of parsed JSON.
54
+ *
55
+ * @param value - Parsed JSON
56
+ * @param jsonPath - Dot path
57
+ * @returns The value at the path, or undefined
58
+ */
59
+ export function readJsonPath(value, jsonPath) {
60
+ const parts = jsonPath.replace(/^\./, '').split('.').filter(Boolean);
61
+ let cur = value;
62
+ for (const part of parts) {
63
+ if (cur === null || typeof cur !== 'object')
64
+ return undefined;
65
+ cur = cur[part];
66
+ }
67
+ return cur;
68
+ }
69
+ /**
70
+ * Coerce a skill output value to a number: numbers as is, booleans to 1/0,
71
+ * numeric strings parsed. Anything else is undefined.
72
+ *
73
+ * @param raw - Value read from the skill output
74
+ * @returns A finite number or undefined
75
+ */
76
+ export function coerceMeasurement(raw) {
77
+ if (typeof raw === 'number')
78
+ return Number.isFinite(raw) ? raw : undefined;
79
+ if (typeof raw === 'boolean')
80
+ return raw ? 1 : 0;
81
+ if (typeof raw === 'string' && raw.trim() !== '') {
82
+ const n = Number(raw);
83
+ return Number.isFinite(n) ? n : undefined;
84
+ }
85
+ return undefined;
86
+ }
87
+ /**
88
+ * Measures `skill_output` Key Results by running their skill.
89
+ */
90
+ export class KRSkillMeasurerService {
91
+ static instance = null;
92
+ logger;
93
+ runner;
94
+ skillRoots;
95
+ krTracking;
96
+ /**
97
+ * @param opts - Test seams: skill roots to search, a runner, a KR service
98
+ */
99
+ constructor(opts = {}) {
100
+ this.logger = LoggerService.getInstance().createComponentLogger('KRSkillMeasurer');
101
+ this.runner = opts.runner ?? defaultSkillRunner;
102
+ this.krTracking = opts.krTracking ?? KRTrackingService.getInstance();
103
+ const projectRoot = opts.projectRoot ?? process.cwd();
104
+ this.skillRoots = opts.skillRoots ?? [
105
+ path.join(os.homedir(), '.crewly', 'skills', 'agent'),
106
+ path.join(os.homedir(), '.crewly', 'marketplace', 'skills'),
107
+ path.join(projectRoot, 'config', 'skills', 'agent'),
108
+ path.join(projectRoot, 'config', 'skills', 'agent', 'core'),
109
+ path.join(projectRoot, 'config', 'skills', 'orchestrator'),
110
+ path.join(projectRoot, 'config', 'skills', 'team-leader'),
111
+ ];
112
+ }
113
+ static getInstance() {
114
+ if (!this.instance)
115
+ this.instance = new KRSkillMeasurerService();
116
+ return this.instance;
117
+ }
118
+ static setInstance(next) {
119
+ this.instance = next;
120
+ }
121
+ /**
122
+ * Resolve a bare skill name to its `execute.sh`, searching the known roots.
123
+ *
124
+ * @param skill - Bare directory name
125
+ * @returns Absolute path, or null when the name is invalid or not found
126
+ */
127
+ resolveSkill(skill) {
128
+ if (!SKILL_NAME_RE.test(skill))
129
+ return null;
130
+ for (const root of this.skillRoots) {
131
+ const candidate = path.join(root, skill, 'execute.sh');
132
+ if (fs.existsSync(candidate))
133
+ return candidate;
134
+ }
135
+ return null;
136
+ }
137
+ /**
138
+ * Measure every `skill_output` KR of a mission. Failure-soft: one KR's
139
+ * error never stops the others, and nothing throws to the sweep.
140
+ *
141
+ * @param missionId - Mission whose KRs to measure
142
+ * @returns One outcome per skill_output KR
143
+ */
144
+ async measureMission(missionId) {
145
+ let krs;
146
+ try {
147
+ krs = await this.krTracking.listByMission(missionId);
148
+ }
149
+ catch (err) {
150
+ this.logger.warn('Could not list KRs for skill measurement', {
151
+ missionId,
152
+ error: err instanceof Error ? err.message : String(err),
153
+ });
154
+ return [];
155
+ }
156
+ const outcomes = [];
157
+ for (const kr of krs) {
158
+ if (kr.measurementSource !== 'skill_output')
159
+ continue;
160
+ outcomes.push(await this.measureOne(missionId, kr));
161
+ }
162
+ return outcomes;
163
+ }
164
+ /**
165
+ * Measure one KR. Exposed for the manual `POST …/measure-now` path.
166
+ *
167
+ * @param missionId - Owning mission
168
+ * @param kr - The KR (must be `skill_output`)
169
+ * @returns The outcome
170
+ */
171
+ async measureOne(missionId, kr) {
172
+ const cfg = (kr.measurementConfig ?? {});
173
+ if (typeof cfg.skill !== 'string') {
174
+ return { krId: kr.id, status: 'skipped', reason: 'measurementConfig.skill missing' };
175
+ }
176
+ const executePath = this.resolveSkill(cfg.skill);
177
+ if (!executePath) {
178
+ return { krId: kr.id, status: 'failed', reason: `skill not found: ${cfg.skill}` };
179
+ }
180
+ let stdout;
181
+ try {
182
+ stdout = await this.runner(executePath, JSON.stringify(cfg.args ?? {}), KR_SKILL_MEASURER_CONSTANTS.TIMEOUT_MS);
183
+ }
184
+ catch (err) {
185
+ const reason = err instanceof Error ? err.message : String(err);
186
+ this.logger.warn('skill_output measurement failed', { missionId, krId: kr.id, skill: cfg.skill, reason });
187
+ return { krId: kr.id, status: 'failed', reason };
188
+ }
189
+ let parsed;
190
+ try {
191
+ const start = stdout.search(/[[{]/);
192
+ parsed = JSON.parse(start >= 0 ? stdout.slice(start) : stdout);
193
+ }
194
+ catch {
195
+ return { krId: kr.id, status: 'failed', reason: 'skill output is not JSON' };
196
+ }
197
+ const value = coerceMeasurement(readJsonPath(parsed, cfg.jsonPath ?? KR_SKILL_MEASURER_CONSTANTS.DEFAULT_JSON_PATH));
198
+ if (value === undefined) {
199
+ return { krId: kr.id, status: 'failed', reason: `no number at ${cfg.jsonPath ?? KR_SKILL_MEASURER_CONSTANTS.DEFAULT_JSON_PATH}` };
200
+ }
201
+ if (kr.measurements.length > 0 && kr.current === value) {
202
+ return { krId: kr.id, status: 'unchanged', value };
203
+ }
204
+ try {
205
+ await this.krTracking.recordMeasurement(missionId, kr.id, value, 'skill_output', `skill ${cfg.skill}`);
206
+ }
207
+ catch (err) {
208
+ return { krId: kr.id, status: 'failed', reason: err instanceof Error ? err.message : String(err) };
209
+ }
210
+ this.logger.info('KR measured from skill output', { missionId, krId: kr.id, skill: cfg.skill, value });
211
+ return { krId: kr.id, status: 'recorded', value };
212
+ }
213
+ }
214
+ //# sourceMappingURL=kr-skill-measurer.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kr-skill-measurer.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/kr-skill-measurer.service.ts"],"names":[],"mappings":"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"}
@@ -112,6 +112,8 @@ export declare class MissionReminderService {
112
112
  reviewsAutoContinued: number;
113
113
  /** Missions flagged stale this sweep (`mission:stale` published, staleCycles bumped). */
114
114
  staleFlagged: number;
115
+ /** KRs re-measured from skill output this sweep */
116
+ skillMeasured: number;
115
117
  }>;
116
118
  /**
117
119
  * Result of {@link maybeCreateReviewWorkItem} — `'created'` when a new
@@ -1 +1 @@
1
- {"version":3,"file":"mission-reminder.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/mission-reminder.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAWH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAUzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAOvE,YAAY,EAAE,YAAY,EAAE,CAAC;AAuE7B;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAgC;IAEhD;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAgC;IAEhD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IAExD,6EAA6E;IAC7E,OAAO,CAAC,WAAW,CAAqB;IAExC,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAE/C,OAAO;IAMP;;;;;;OAMG;IACH,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IAED;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAOnB,MAAM,CAAC,WAAW,IAAI,sBAAsB;IAO5C,MAAM,CAAC,aAAa,IAAI,IAAI;IAI5B;;;;;OAKG;IACH,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAIrD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,QAAQ,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC;QAC9C,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,wFAAwF;QACxF,oBAAoB,EAAE,MAAM,CAAC;QAC7B,yFAAyF;QACzF,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IAsHF;;;;;;;;OAQG;YACW,yBAAyB;IAoLvC;;;;OAIG;YACW,gBAAgB;IAa9B;;;;;;;;;;OAUG;YACW,WAAW;IAyDzB,mEAAmE;IACnE,OAAO,CAAC,mBAAmB;IAO3B;;;;;;;;;;;OAWG;YACW,sBAAsB;IAmBpC;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;;;OAYG;YACW,sBAAsB;IAcpC;;OAEG;YACW,YAAY;IAoC1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;YACW,gBAAgB;IAqB9B;;;;;OAKG;YACW,qBAAqB;IAuBnC;;OAEG;YACW,WAAW;IASzB;;OAEG;YACW,WAAW;CAI1B"}
1
+ {"version":3,"file":"mission-reminder.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/mission-reminder.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAUzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAOvE,YAAY,EAAE,YAAY,EAAE,CAAC;AAuE7B;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAgC;IAEhD;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAgC;IAEhD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IAExD,6EAA6E;IAC7E,OAAO,CAAC,WAAW,CAAqB;IAExC,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAE/C,OAAO;IAMP;;;;;;OAMG;IACH,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IAED;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAOnB,MAAM,CAAC,WAAW,IAAI,sBAAsB;IAO5C,MAAM,CAAC,aAAa,IAAI,IAAI;IAI5B;;;;;OAKG;IACH,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAIrD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,QAAQ,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC;QAC9C,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,wFAAwF;QACxF,oBAAoB,EAAE,MAAM,CAAC;QAC7B,yFAAyF;QACzF,YAAY,EAAE,MAAM,CAAC;QACrB,mDAAmD;QACnD,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IAoIF;;;;;;;;OAQG;YACW,yBAAyB;IAoLvC;;;;OAIG;YACW,gBAAgB;IAa9B;;;;;;;;;;OAUG;YACW,WAAW;IAyDzB,mEAAmE;IACnE,OAAO,CAAC,mBAAmB;IAO3B;;;;;;;;;;;OAWG;YACW,sBAAsB;IAmBpC;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;;;OAYG;YACW,sBAAsB;IAcpC;;OAEG;YACW,YAAY;IAoC1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;YACW,gBAAgB;IAqB9B;;;;;OAKG;YACW,qBAAqB;IAuBnC;;OAEG;YACW,WAAW;IASzB;;OAEG;YACW,WAAW;CAI1B"}
@@ -22,6 +22,7 @@ import { StorageService } from '../core/storage.service.js';
22
22
  import { KRTrackingService } from './kr-tracking.service.js';
23
23
  import { OKRReviewService } from './okr-review.service.js';
24
24
  import { MissionPeriodService } from './mission-period.service.js';
25
+ import { KRSkillMeasurerService } from './kr-skill-measurer.service.js';
25
26
  import { getSlackOrchestratorBridge } from '../slack/slack-orchestrator-bridge.js';
26
27
  import { TaskPoolService } from '../task-pool/task-pool.service.js';
27
28
  import { isMissionExecutable } from '../../types/v2/mission.types.js';
@@ -211,6 +212,7 @@ export class MissionReminderService {
211
212
  reviewsSkipped: 0,
212
213
  reviewsAutoContinued: 0,
213
214
  staleFlagged: 0,
215
+ skillMeasured: 0,
214
216
  };
215
217
  this.logger.info('Starting Mission OKR reminder sweep', { count: missions.length });
216
218
  // One pool read per sweep for the stale detector (not per mission).
@@ -244,6 +246,20 @@ export class MissionReminderService {
244
246
  });
245
247
  }
246
248
  }
249
+ // Refresh skill-measured KRs before reading progress, so the sweep
250
+ // reviews this hour's numbers rather than whatever was typed in last.
251
+ try {
252
+ const measured = await KRSkillMeasurerService.getInstance().measureMission(mission.id);
253
+ const recorded = measured.filter((m) => m.status === 'recorded').length;
254
+ if (recorded > 0)
255
+ result.skillMeasured += recorded;
256
+ }
257
+ catch (err) {
258
+ this.logger.warn('skill_output measurement failed for mission', {
259
+ missionId: mission.id,
260
+ error: err instanceof Error ? err.message : String(err),
261
+ });
262
+ }
247
263
  let summary = null;
248
264
  try {
249
265
  // Get OKR progress summary — needed for both the reminder DM
@@ -1 +1 @@
1
- {"version":3,"file":"mission-reminder.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/mission-reminder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mission-reminder.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/mission-reminder.service.ts"],"names":[],"mappings":"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"}