crewly 1.8.7 → 1.8.9

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 (165) hide show
  1. package/dist/backend/backend/src/constants.d.ts +12 -0
  2. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  3. package/dist/backend/backend/src/constants.js +12 -0
  4. package/dist/backend/backend/src/constants.js.map +1 -1
  5. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
  6. package/dist/backend/backend/src/controllers/browser/browser.controller.js +17 -0
  7. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  8. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  9. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +8 -1
  10. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  11. package/dist/backend/backend/src/index.d.ts.map +1 -1
  12. package/dist/backend/backend/src/index.js +15 -7
  13. package/dist/backend/backend/src/index.js.map +1 -1
  14. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts +7 -0
  15. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
  16. package/dist/backend/backend/src/services/browser/browser-bridge.service.js +69 -12
  17. package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
  18. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +122 -1
  19. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
  20. package/dist/backend/backend/src/services/browser/browser-proxy.service.js +252 -17
  21. package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
  22. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.d.ts +37 -3
  23. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.d.ts.map +1 -1
  24. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.js +140 -23
  25. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.js.map +1 -1
  26. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +75 -0
  27. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
  28. package/dist/backend/backend/src/services/cloud/cloud-client.service.js +164 -12
  29. package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
  30. package/dist/cli/backend/src/constants.d.ts +12 -0
  31. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  32. package/dist/cli/backend/src/constants.js +12 -0
  33. package/dist/cli/backend/src/constants.js.map +1 -1
  34. package/dist/cli/cli/src/index.js +0 -0
  35. package/package.json +1 -1
  36. package/config/constants.d.ts.map +0 -1
  37. package/config/index.d.ts.map +0 -1
  38. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +0 -169
  39. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +0 -1
  40. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +0 -1779
  41. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +0 -1
  42. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +0 -513
  43. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +0 -1
  44. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +0 -1568
  45. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +0 -1
  46. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.d.ts +0 -86
  47. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.d.ts.map +0 -1
  48. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.js +0 -147
  49. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.js.map +0 -1
  50. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts +0 -68
  51. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts.map +0 -1
  52. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js +0 -131
  53. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js.map +0 -1
  54. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts +0 -130
  55. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts.map +0 -1
  56. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js +0 -263
  57. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js.map +0 -1
  58. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts +0 -74
  59. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts.map +0 -1
  60. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js +0 -140
  61. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js.map +0 -1
  62. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts +0 -29
  63. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +0 -1
  64. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +0 -279
  65. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +0 -1
  66. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +0 -340
  67. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +0 -1
  68. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +0 -1176
  69. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +0 -1
  70. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.d.ts +0 -79
  71. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.d.ts.map +0 -1
  72. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.js +0 -145
  73. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.js.map +0 -1
  74. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts +0 -79
  75. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts.map +0 -1
  76. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js +0 -218
  77. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js.map +0 -1
  78. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +0 -16
  79. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +0 -1
  80. package/dist/backend/backend/src/services/agent/crewly-agent/index.js +0 -16
  81. package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +0 -1
  82. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts +0 -135
  83. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts.map +0 -1
  84. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js +0 -185
  85. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js.map +0 -1
  86. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +0 -141
  87. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +0 -1
  88. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +0 -310
  89. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +0 -1
  90. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts +0 -91
  91. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts.map +0 -1
  92. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js +0 -143
  93. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js.map +0 -1
  94. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts +0 -103
  95. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts.map +0 -1
  96. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js +0 -256
  97. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js.map +0 -1
  98. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts +0 -143
  99. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts.map +0 -1
  100. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js +0 -264
  101. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js.map +0 -1
  102. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts +0 -13
  103. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts.map +0 -1
  104. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +0 -91
  105. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js.map +0 -1
  106. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +0 -135
  107. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +0 -1
  108. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +0 -1937
  109. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +0 -1
  110. package/dist/backend/backend/src/services/autonomous/auto-assign.service.d.ts +0 -429
  111. package/dist/backend/backend/src/services/autonomous/auto-assign.service.d.ts.map +0 -1
  112. package/dist/backend/backend/src/services/autonomous/auto-assign.service.js +0 -852
  113. package/dist/backend/backend/src/services/autonomous/auto-assign.service.js.map +0 -1
  114. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts +0 -171
  115. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts.map +0 -1
  116. package/dist/backend/backend/src/services/project/task-tracking.service.js +0 -725
  117. package/dist/backend/backend/src/services/project/task-tracking.service.js.map +0 -1
  118. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts +0 -118
  119. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts.map +0 -1
  120. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js +0 -326
  121. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js.map +0 -1
  122. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.d.ts +0 -74
  123. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.d.ts.map +0 -1
  124. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.js +0 -154
  125. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.js.map +0 -1
  126. package/dist/backend/backend/src/types/auto-assign.types.d.ts +0 -271
  127. package/dist/backend/backend/src/types/auto-assign.types.d.ts.map +0 -1
  128. package/dist/backend/backend/src/types/auto-assign.types.js +0 -136
  129. package/dist/backend/backend/src/types/auto-assign.types.js.map +0 -1
  130. package/dist/backend/backend/src/utils/esm-require.utils.d.ts +0 -111
  131. package/dist/backend/backend/src/utils/esm-require.utils.d.ts.map +0 -1
  132. package/dist/backend/backend/src/utils/esm-require.utils.js +0 -124
  133. package/dist/backend/backend/src/utils/esm-require.utils.js.map +0 -1
  134. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +0 -220
  135. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +0 -1
  136. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js +0 -37
  137. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +0 -1
  138. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts +0 -56
  139. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +0 -1
  140. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js +0 -91
  141. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js.map +0 -1
  142. package/dist/cli/backend/src/services/knowledge/learnings-index.service.d.ts +0 -159
  143. package/dist/cli/backend/src/services/knowledge/learnings-index.service.d.ts.map +0 -1
  144. package/dist/cli/backend/src/services/knowledge/learnings-index.service.js +0 -304
  145. package/dist/cli/backend/src/services/knowledge/learnings-index.service.js.map +0 -1
  146. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts +0 -115
  147. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +0 -1
  148. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js +0 -215
  149. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js.map +0 -1
  150. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts +0 -78
  151. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts.map +0 -1
  152. package/dist/cli/backend/src/services/memory/embedding-provider.js +0 -179
  153. package/dist/cli/backend/src/services/memory/embedding-provider.js.map +0 -1
  154. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts +0 -331
  155. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts.map +0 -1
  156. package/dist/cli/backend/src/services/memory/vector-store.service.js +0 -814
  157. package/dist/cli/backend/src/services/memory/vector-store.service.js.map +0 -1
  158. package/dist/cli/backend/src/services/project/task-tracking.service.d.ts +0 -171
  159. package/dist/cli/backend/src/services/project/task-tracking.service.d.ts.map +0 -1
  160. package/dist/cli/backend/src/services/project/task-tracking.service.js +0 -725
  161. package/dist/cli/backend/src/services/project/task-tracking.service.js.map +0 -1
  162. package/dist/cli/backend/src/types/auto-assign.types.d.ts +0 -271
  163. package/dist/cli/backend/src/types/auto-assign.types.d.ts.map +0 -1
  164. package/dist/cli/backend/src/types/auto-assign.types.js +0 -136
  165. package/dist/cli/backend/src/types/auto-assign.types.js.map +0 -1
@@ -1,154 +0,0 @@
1
- /**
2
- * WikiChatSubscriberService — listens on chat-v2's `chat_message` event
3
- * and fires `WikiIngestService.ingest` for every user-authored message.
4
- *
5
- * Phase A (rules-only routing):
6
- * senderType === 'user' → ingest into the Crewly project vault.
7
- * senderType === 'agent' | 'system' → skip.
8
- *
9
- * Phase B (per spec §4.5) will replace the project-only routing with an
10
- * LLM-driven gate that picks team / project / global per source.
11
- *
12
- * Failure mode is FIRE-AND-FORGET: a malformed message, missing schema,
13
- * or filesystem error MUST NOT block the live chat flow. Errors are
14
- * logged at warn-level and swallowed.
15
- *
16
- * @module services/wiki/wiki-chat-subscriber.service
17
- */
18
- import * as path from 'path';
19
- import { LoggerService } from '../core/logger.service.js';
20
- import { WikiIngestService, detectMessageShape } from './wiki-ingest.service.js';
21
- /**
22
- * Process-singleton subscriber. Call `start()` once at server boot,
23
- * `stop()` at shutdown.
24
- */
25
- export class WikiChatSubscriberService {
26
- logger;
27
- chatService;
28
- projectVaultPath;
29
- ingestService;
30
- boundHandler = null;
31
- started = false;
32
- constructor(opts) {
33
- this.logger = LoggerService.getInstance().createComponentLogger('WikiChatSubscriber');
34
- this.chatService = opts.chatService;
35
- this.projectVaultPath = opts.projectVaultPath ?? resolveDefaultProjectVaultPath();
36
- this.ingestService = opts.ingestService ?? WikiIngestService.getInstance();
37
- }
38
- /**
39
- * Subscribe to `chat_message`. Idempotent — calling start() twice
40
- * leaves a single listener.
41
- */
42
- start() {
43
- if (this.started) {
44
- this.logger.debug('start() called twice — ignoring');
45
- return;
46
- }
47
- this.boundHandler = (dto) => {
48
- // Fire-and-forget; any thrown error is logged + swallowed in handle().
49
- void this.handle(dto);
50
- };
51
- this.chatService.on('chat_message', this.boundHandler);
52
- this.started = true;
53
- this.logger.info('WikiChatSubscriber started', {
54
- vaultPath: this.projectVaultPath,
55
- });
56
- }
57
- /** Detach. Safe to call when not started. */
58
- stop() {
59
- if (!this.started || !this.boundHandler)
60
- return;
61
- this.chatService.off('chat_message', this.boundHandler);
62
- this.boundHandler = null;
63
- this.started = false;
64
- this.logger.info('WikiChatSubscriber stopped');
65
- }
66
- /**
67
- * Handle a single chat message. Public for tests.
68
- */
69
- async handle(dto) {
70
- try {
71
- if (!this.isIngestable(dto)) {
72
- return;
73
- }
74
- const ingestInput = {
75
- vaultPath: this.projectVaultPath,
76
- sourceType: 'user_chat',
77
- sourceRef: `chat:${dto.channelId}:${dto.id}`,
78
- sourceBody: dto.content,
79
- callerSession: `user/${dto.senderId}`,
80
- };
81
- // Phase A rules-based promotion: decision-shaped chats land in
82
- // BOTH log.md (audit) and llm-curated/decisions/<date>-<slug>.md
83
- // (canonical). Phase B will replace `detectMessageShape` with an
84
- // LLM gate per v2.1 §4.
85
- const shape = detectMessageShape(dto.content);
86
- if (shape === 'decision') {
87
- const result = await this.ingestService.ingestDecision(ingestInput);
88
- if (!result.log.ok) {
89
- this.logger.warn('WikiChatSubscriber decision-log ingest refused', {
90
- reason: result.log.reason,
91
- messageId: dto.id,
92
- });
93
- }
94
- if (!result.decision.ok) {
95
- this.logger.warn('WikiChatSubscriber decisions/ promotion refused', {
96
- reason: result.decision.reason,
97
- messageId: dto.id,
98
- });
99
- }
100
- return;
101
- }
102
- const outcome = await this.ingestService.ingest(ingestInput);
103
- if (!outcome.ok) {
104
- this.logger.warn('WikiChatSubscriber ingest refused', {
105
- reason: outcome.reason,
106
- messageId: dto.id,
107
- });
108
- }
109
- }
110
- catch (err) {
111
- // Swallow — chat flow must not block on wiki write failures.
112
- this.logger.warn('WikiChatSubscriber.handle threw (swallowed)', {
113
- messageId: dto.id,
114
- error: err.message,
115
- });
116
- }
117
- }
118
- /**
119
- * Decide whether a chat-v2 message should drive a wiki write.
120
- * Public for tests; logic is conservative — only ingest user-authored
121
- * text messages, skip agents/system, mentions-only pings, and slash
122
- * commands.
123
- */
124
- isIngestable(dto) {
125
- if (dto.senderType !== 'user')
126
- return false;
127
- if (!dto.content || dto.content.trim().length === 0)
128
- return false;
129
- // Skip slash commands — they're orc-controls, not knowledge.
130
- if (dto.content.trimStart().startsWith('/'))
131
- return false;
132
- // chat-v2 defaults `contentType` to 'markdown' when sendMessage doesn't
133
- // supply one (chat-v2.service.ts ~line 1240). Accept the two readable
134
- // text-bearing types; reject binary/system flavors like 'system_note'.
135
- const acceptable = new Set(['text', 'markdown']);
136
- if (dto.contentType && !acceptable.has(dto.contentType))
137
- return false;
138
- return true;
139
- }
140
- }
141
- /**
142
- * Resolve a sensible default vault path:
143
- * 1. `CREWLY_PROJECT_VAULT_PATH` env var (explicit override)
144
- * 2. `<cwd>/.crewly/wiki` if it exists
145
- * 3. The Crewly repo's own project vault (the only one with SCHEMA.md today)
146
- */
147
- function resolveDefaultProjectVaultPath() {
148
- const fromEnv = process.env['CREWLY_PROJECT_VAULT_PATH'];
149
- if (fromEnv && path.isAbsolute(fromEnv)) {
150
- return fromEnv;
151
- }
152
- return path.join('/Users/yellowsunhy/Desktop/projects/crewly-projects/crewly', '.crewly/wiki');
153
- }
154
- //# sourceMappingURL=wiki-chat-subscriber.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wiki-chat-subscriber.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/wiki/wiki-chat-subscriber.service.ts"],"names":[],"mappings":"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"}
@@ -1,271 +0,0 @@
1
- /**
2
- * Auto-Assignment Type Definitions
3
- *
4
- * Types for the automatic task assignment system.
5
- *
6
- * @module types/auto-assign.types
7
- */
8
- /**
9
- * Prioritization strategy for task assignment
10
- */
11
- export type PrioritizationStrategy = 'fifo' | 'priority' | 'deadline' | 'custom';
12
- /**
13
- * Role matching rule for task assignment
14
- */
15
- export interface RoleMatchRule {
16
- /** The agent role this rule applies to */
17
- role: string;
18
- /** Task types this role can handle */
19
- taskTypes: string[];
20
- /** Priority order (lower = higher priority) */
21
- priority: number;
22
- /** If true, only this role can handle these task types */
23
- exclusive?: boolean;
24
- }
25
- /**
26
- * Load balancing configuration
27
- */
28
- export interface LoadBalancingConfig {
29
- /** Whether load balancing is enabled */
30
- enabled: boolean;
31
- /** Maximum tasks an agent can work on simultaneously */
32
- maxConcurrentTasks: number;
33
- /** Whether to prefer assigning to idle agents */
34
- preferIdleAgents: boolean;
35
- }
36
- /**
37
- * Dependency handling configuration
38
- */
39
- export interface DependencyConfig {
40
- /** Whether to respect blocking dependencies */
41
- respectBlocking: boolean;
42
- /** Whether to wait for dependencies before assignment */
43
- waitForDependencies: boolean;
44
- }
45
- /**
46
- * Complete assignment strategy configuration
47
- */
48
- export interface AssignmentStrategy {
49
- /** How tasks are prioritized */
50
- prioritization: PrioritizationStrategy;
51
- /** Role matching rules */
52
- roleMatching: RoleMatchRule[];
53
- /** Load balancing settings */
54
- loadBalancing: LoadBalancingConfig;
55
- /** Dependency handling settings */
56
- dependencies: DependencyConfig;
57
- }
58
- /**
59
- * Result of a task assignment operation
60
- */
61
- export interface TaskAssignmentResult {
62
- /** Task ID that was assigned */
63
- taskId: string;
64
- /** Path to the task file */
65
- taskPath: string;
66
- /** Agent ID that received the task */
67
- agentId: string;
68
- /** Session name of the agent */
69
- sessionName: string;
70
- /** When the task was assigned */
71
- assignedAt: string;
72
- /** Estimated completion time (optional) */
73
- estimatedCompletion?: string;
74
- }
75
- /**
76
- * Task in the assignment queue
77
- */
78
- export interface QueuedTask {
79
- /** Unique task identifier */
80
- taskId: string;
81
- /** Path to the task file */
82
- taskPath: string;
83
- /** Task title */
84
- title: string;
85
- /** Task priority (lower = higher priority) */
86
- priority: number;
87
- /** Type of task (feature, fix, test, etc.) */
88
- taskType?: string;
89
- /** Role required to complete this task */
90
- requiredRole?: string;
91
- /** Task IDs that must complete before this task */
92
- dependencies: string[];
93
- /** Task IDs currently blocking this task */
94
- blockedBy: string[];
95
- /** When the task was created */
96
- createdAt: string;
97
- /** Estimated hours to complete */
98
- estimatedHours?: number;
99
- /** Task labels/tags */
100
- labels?: string[];
101
- }
102
- /**
103
- * Assignment status
104
- */
105
- export type AssignmentStatus = 'active' | 'completed' | 'failed' | 'reassigned';
106
- /**
107
- * Record of a task assignment
108
- */
109
- export interface TaskAssignment {
110
- /** Task ID */
111
- taskId: string;
112
- /** Agent ID assigned to the task */
113
- agentId: string;
114
- /** Session name of the agent */
115
- sessionName: string;
116
- /** When the task was assigned */
117
- assignedAt: string;
118
- /** Current status of the assignment */
119
- status: AssignmentStatus;
120
- /** When the task was completed (if applicable) */
121
- completedAt?: string;
122
- /** Number of continuation iterations */
123
- iterations?: number;
124
- }
125
- /**
126
- * Task queue for a project
127
- */
128
- export interface TaskQueue {
129
- /** Project path */
130
- projectPath: string;
131
- /** All open tasks, sorted by priority */
132
- tasks: QueuedTask[];
133
- /** Assignment history */
134
- assignments: TaskAssignment[];
135
- /** Assignment strategy configuration */
136
- config: AssignmentStrategy;
137
- /** Last updated timestamp */
138
- lastUpdated: string;
139
- }
140
- /**
141
- * Types of assignment events
142
- */
143
- export type AssignmentEventType = 'task_assigned' | 'task_completed' | 'task_failed' | 'agent_idle' | 'no_tasks' | 'assignment_skipped';
144
- /**
145
- * Event emitted by the AutoAssignService
146
- */
147
- export interface AssignmentEvent {
148
- /** Type of event */
149
- type: AssignmentEventType;
150
- /** Agent ID involved */
151
- agentId: string;
152
- /** Session name of the agent */
153
- sessionName: string;
154
- /** Task ID (if applicable) */
155
- taskId?: string;
156
- /** Timestamp of the event */
157
- timestamp: string;
158
- /** Additional metadata */
159
- metadata?: Record<string, unknown>;
160
- }
161
- /**
162
- * Notification configuration for auto-assignment
163
- */
164
- export interface NotificationConfig {
165
- /** Notify when agent becomes idle */
166
- notifyOnIdle: boolean;
167
- /** Idle threshold in minutes before notification */
168
- idleThresholdMinutes: number;
169
- /** Notify when no tasks available */
170
- notifyOnNoTasks: boolean;
171
- }
172
- /**
173
- * Rate limits for auto-assignment
174
- */
175
- export interface AssignmentLimits {
176
- /** Maximum assignments per day per agent */
177
- maxAssignmentsPerDay: number;
178
- /** Cooldown between task assignments in seconds */
179
- cooldownBetweenTasks: number;
180
- }
181
- /**
182
- * Complete auto-assignment configuration
183
- */
184
- export interface AutoAssignConfig {
185
- /** Whether auto-assignment is enabled */
186
- enabled: boolean;
187
- /** Assignment strategy */
188
- strategy: AssignmentStrategy;
189
- /** Notification settings */
190
- notifications: NotificationConfig;
191
- /** Rate limits */
192
- limits: AssignmentLimits;
193
- }
194
- /**
195
- * Parameters for finding the next task
196
- */
197
- export interface FindNextTaskParams {
198
- /** Session name of the agent */
199
- sessionName: string;
200
- /** Agent's role */
201
- role: string;
202
- /** Project path */
203
- projectPath: string;
204
- /** Preferred task types (optional) */
205
- preferredTaskTypes?: string[];
206
- }
207
- /**
208
- * Result of finding the next task
209
- */
210
- export interface FindNextTaskResult {
211
- /** Whether a task was found */
212
- found: boolean;
213
- /** The task (if found) */
214
- task?: QueuedTask;
215
- /** Reason if no task found */
216
- reason?: 'no_tasks' | 'all_blocked' | 'role_mismatch' | 'at_limit' | 'cooldown';
217
- }
218
- /**
219
- * Auto-assignment related constants
220
- */
221
- export declare const AUTO_ASSIGN_CONSTANTS: {
222
- /** Default configuration values */
223
- readonly DEFAULTS: {
224
- readonly MAX_CONCURRENT_TASKS: 1;
225
- readonly MAX_ASSIGNMENTS_PER_DAY: 50;
226
- readonly COOLDOWN_BETWEEN_TASKS: 60;
227
- readonly IDLE_THRESHOLD_MINUTES: 5;
228
- };
229
- /** Task type categories */
230
- readonly TASK_TYPES: {
231
- readonly DEVELOPMENT: readonly ["feature", "fix", "refactor", "implement"];
232
- readonly TESTING: readonly ["test", "verify", "qa"];
233
- readonly FRONTEND: readonly ["ui", "component", "style", "frontend"];
234
- readonly BACKEND: readonly ["api", "service", "database", "backend"];
235
- readonly MANAGEMENT: readonly ["planning", "review", "coordination", "documentation"];
236
- };
237
- /** Priority levels */
238
- readonly PRIORITY: {
239
- readonly CRITICAL: 1;
240
- readonly HIGH: 2;
241
- readonly MEDIUM: 5;
242
- readonly LOW: 10;
243
- readonly BACKLOG: 20;
244
- };
245
- /** Configuration file paths */
246
- readonly PATHS: {
247
- readonly CONFIG_FILE: "auto-assign.yaml";
248
- readonly CONFIG_DIR: ".crewly/config";
249
- };
250
- };
251
- /**
252
- * Default role matching rules
253
- */
254
- export declare const DEFAULT_ROLE_MATCHING: RoleMatchRule[];
255
- /**
256
- * Default assignment strategy
257
- */
258
- export declare const DEFAULT_ASSIGNMENT_STRATEGY: AssignmentStrategy;
259
- /**
260
- * Default notification configuration
261
- */
262
- export declare const DEFAULT_NOTIFICATION_CONFIG: NotificationConfig;
263
- /**
264
- * Default assignment limits
265
- */
266
- export declare const DEFAULT_ASSIGNMENT_LIMITS: AssignmentLimits;
267
- /**
268
- * Default complete auto-assignment configuration
269
- */
270
- export declare const DEFAULT_AUTO_ASSIGN_CONFIG: AutoAssignConfig;
271
- //# sourceMappingURL=auto-assign.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-assign.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/auto-assign.types.ts"],"names":[],"mappings":"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"}
@@ -1,136 +0,0 @@
1
- /**
2
- * Auto-Assignment Type Definitions
3
- *
4
- * Types for the automatic task assignment system.
5
- *
6
- * @module types/auto-assign.types
7
- */
8
- // ======================
9
- // Constants
10
- // ======================
11
- /**
12
- * Auto-assignment related constants
13
- */
14
- export const AUTO_ASSIGN_CONSTANTS = {
15
- /** Default configuration values */
16
- DEFAULTS: {
17
- MAX_CONCURRENT_TASKS: 1,
18
- MAX_ASSIGNMENTS_PER_DAY: 50,
19
- COOLDOWN_BETWEEN_TASKS: 60, // seconds
20
- IDLE_THRESHOLD_MINUTES: 5,
21
- },
22
- /** Task type categories */
23
- TASK_TYPES: {
24
- DEVELOPMENT: ['feature', 'fix', 'refactor', 'implement'],
25
- TESTING: ['test', 'verify', 'qa'],
26
- FRONTEND: ['ui', 'component', 'style', 'frontend'],
27
- BACKEND: ['api', 'service', 'database', 'backend'],
28
- MANAGEMENT: ['planning', 'review', 'coordination', 'documentation'],
29
- },
30
- /** Priority levels */
31
- PRIORITY: {
32
- CRITICAL: 1,
33
- HIGH: 2,
34
- MEDIUM: 5,
35
- LOW: 10,
36
- BACKLOG: 20,
37
- },
38
- /** Configuration file paths */
39
- PATHS: {
40
- CONFIG_FILE: 'auto-assign.yaml',
41
- CONFIG_DIR: '.crewly/config',
42
- },
43
- };
44
- /**
45
- * Default role matching rules
46
- */
47
- export const DEFAULT_ROLE_MATCHING = [
48
- {
49
- role: 'developer',
50
- taskTypes: ['feature', 'fix', 'refactor', 'test', 'implement'],
51
- priority: 1,
52
- },
53
- {
54
- role: 'frontend-developer',
55
- taskTypes: ['feature', 'fix', 'ui', 'component', 'style', 'frontend'],
56
- priority: 1,
57
- },
58
- {
59
- role: 'backend-developer',
60
- taskTypes: ['feature', 'fix', 'api', 'service', 'database', 'backend'],
61
- priority: 1,
62
- },
63
- {
64
- role: 'qa',
65
- taskTypes: ['test', 'review', 'verify', 'qa'],
66
- priority: 1,
67
- exclusive: true,
68
- },
69
- {
70
- role: 'tester',
71
- taskTypes: ['test', 'review', 'verify'],
72
- priority: 2,
73
- },
74
- {
75
- role: 'pm',
76
- taskTypes: ['planning', 'review', 'coordination', 'documentation'],
77
- priority: 1,
78
- },
79
- {
80
- role: 'tpm',
81
- taskTypes: ['planning', 'coordination', 'tracking'],
82
- priority: 1,
83
- },
84
- {
85
- role: 'pgm',
86
- taskTypes: ['planning', 'management', 'coordination'],
87
- priority: 1,
88
- },
89
- {
90
- role: 'designer',
91
- taskTypes: ['design', 'ui', 'ux', 'mockup'],
92
- priority: 1,
93
- exclusive: true,
94
- },
95
- ];
96
- /**
97
- * Default assignment strategy
98
- */
99
- export const DEFAULT_ASSIGNMENT_STRATEGY = {
100
- prioritization: 'priority',
101
- roleMatching: DEFAULT_ROLE_MATCHING,
102
- loadBalancing: {
103
- enabled: true,
104
- maxConcurrentTasks: AUTO_ASSIGN_CONSTANTS.DEFAULTS.MAX_CONCURRENT_TASKS,
105
- preferIdleAgents: true,
106
- },
107
- dependencies: {
108
- respectBlocking: true,
109
- waitForDependencies: true,
110
- },
111
- };
112
- /**
113
- * Default notification configuration
114
- */
115
- export const DEFAULT_NOTIFICATION_CONFIG = {
116
- notifyOnIdle: true,
117
- idleThresholdMinutes: AUTO_ASSIGN_CONSTANTS.DEFAULTS.IDLE_THRESHOLD_MINUTES,
118
- notifyOnNoTasks: true,
119
- };
120
- /**
121
- * Default assignment limits
122
- */
123
- export const DEFAULT_ASSIGNMENT_LIMITS = {
124
- maxAssignmentsPerDay: AUTO_ASSIGN_CONSTANTS.DEFAULTS.MAX_ASSIGNMENTS_PER_DAY,
125
- cooldownBetweenTasks: AUTO_ASSIGN_CONSTANTS.DEFAULTS.COOLDOWN_BETWEEN_TASKS,
126
- };
127
- /**
128
- * Default complete auto-assignment configuration
129
- */
130
- export const DEFAULT_AUTO_ASSIGN_CONFIG = {
131
- enabled: true,
132
- strategy: DEFAULT_ASSIGNMENT_STRATEGY,
133
- notifications: DEFAULT_NOTIFICATION_CONFIG,
134
- limits: DEFAULT_ASSIGNMENT_LIMITS,
135
- };
136
- //# sourceMappingURL=auto-assign.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-assign.types.js","sourceRoot":"","sources":["../../../../../backend/src/types/auto-assign.types.ts"],"names":[],"mappings":"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"}