@a5c-ai/tasks-adapter 5.1.1-staging.0007199a1cb2

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 (202) hide show
  1. package/README.md +125 -0
  2. package/dist/auth/forge-interface.d.ts +67 -0
  3. package/dist/auth/forge-interface.d.ts.map +1 -0
  4. package/dist/auth/forge-interface.js +69 -0
  5. package/dist/auth/github-app.d.ts +64 -0
  6. package/dist/auth/github-app.d.ts.map +1 -0
  7. package/dist/auth/github-app.js +141 -0
  8. package/dist/auth/github-oauth.d.ts +27 -0
  9. package/dist/auth/github-oauth.d.ts.map +1 -0
  10. package/dist/auth/github-oauth.js +89 -0
  11. package/dist/auth/index.d.ts +8 -0
  12. package/dist/auth/index.d.ts.map +1 -0
  13. package/dist/auth/index.js +14 -0
  14. package/dist/auth/jwt.d.ts +24 -0
  15. package/dist/auth/jwt.d.ts.map +1 -0
  16. package/dist/auth/jwt.js +43 -0
  17. package/dist/auth/middleware.d.ts +22 -0
  18. package/dist/auth/middleware.d.ts.map +1 -0
  19. package/dist/auth/middleware.js +36 -0
  20. package/dist/auth/ssh-keys.d.ts +21 -0
  21. package/dist/auth/ssh-keys.d.ts.map +1 -0
  22. package/dist/auth/ssh-keys.js +59 -0
  23. package/dist/auth/types.d.ts +165 -0
  24. package/dist/auth/types.d.ts.map +1 -0
  25. package/dist/auth/types.js +53 -0
  26. package/dist/backend.d.ts +248 -0
  27. package/dist/backend.d.ts.map +1 -0
  28. package/dist/backend.js +40 -0
  29. package/dist/backends/adapters.d.ts +99 -0
  30. package/dist/backends/adapters.d.ts.map +1 -0
  31. package/dist/backends/adapters.js +308 -0
  32. package/dist/backends/external-tracker.d.ts +133 -0
  33. package/dist/backends/external-tracker.d.ts.map +1 -0
  34. package/dist/backends/external-tracker.js +731 -0
  35. package/dist/backends/git-native.d.ts +69 -0
  36. package/dist/backends/git-native.d.ts.map +1 -0
  37. package/dist/backends/git-native.js +797 -0
  38. package/dist/backends/github-issues.d.ts +78 -0
  39. package/dist/backends/github-issues.d.ts.map +1 -0
  40. package/dist/backends/github-issues.js +806 -0
  41. package/dist/backends/index.d.ts +52 -0
  42. package/dist/backends/index.d.ts.map +1 -0
  43. package/dist/backends/index.js +151 -0
  44. package/dist/backends/server.d.ts +42 -0
  45. package/dist/backends/server.d.ts.map +1 -0
  46. package/dist/backends/server.js +305 -0
  47. package/dist/cli/auth-store.d.ts +49 -0
  48. package/dist/cli/auth-store.d.ts.map +1 -0
  49. package/dist/cli/auth-store.js +150 -0
  50. package/dist/cli/client-config.d.ts +10 -0
  51. package/dist/cli/client-config.d.ts.map +1 -0
  52. package/dist/cli/client-config.js +87 -0
  53. package/dist/cli/commands/ask.d.ts +3 -0
  54. package/dist/cli/commands/ask.d.ts.map +1 -0
  55. package/dist/cli/commands/ask.js +171 -0
  56. package/dist/cli/commands/auth.d.ts +3 -0
  57. package/dist/cli/commands/auth.d.ts.map +1 -0
  58. package/dist/cli/commands/auth.js +510 -0
  59. package/dist/cli/commands/breakpoints.d.ts +3 -0
  60. package/dist/cli/commands/breakpoints.d.ts.map +1 -0
  61. package/dist/cli/commands/breakpoints.js +311 -0
  62. package/dist/cli/commands/responder-loop.d.ts +3 -0
  63. package/dist/cli/commands/responder-loop.d.ts.map +1 -0
  64. package/dist/cli/commands/responder-loop.js +78 -0
  65. package/dist/cli/commands/responders.d.ts +3 -0
  66. package/dist/cli/commands/responders.d.ts.map +1 -0
  67. package/dist/cli/commands/responders.js +157 -0
  68. package/dist/cli/commands/rules.d.ts +3 -0
  69. package/dist/cli/commands/rules.d.ts.map +1 -0
  70. package/dist/cli/commands/rules.js +105 -0
  71. package/dist/cli/commands/server.d.ts +3 -0
  72. package/dist/cli/commands/server.d.ts.map +1 -0
  73. package/dist/cli/commands/server.js +34 -0
  74. package/dist/cli/commands/tasks.d.ts +3 -0
  75. package/dist/cli/commands/tasks.d.ts.map +1 -0
  76. package/dist/cli/commands/tasks.js +281 -0
  77. package/dist/cli/commands/templates.d.ts +3 -0
  78. package/dist/cli/commands/templates.d.ts.map +1 -0
  79. package/dist/cli/commands/templates.js +100 -0
  80. package/dist/cli/index.d.ts +4 -0
  81. package/dist/cli/index.d.ts.map +1 -0
  82. package/dist/cli/index.js +9 -0
  83. package/dist/cli/output.d.ts +26 -0
  84. package/dist/cli/output.d.ts.map +1 -0
  85. package/dist/cli/output.js +143 -0
  86. package/dist/cli/program.d.ts +6 -0
  87. package/dist/cli/program.d.ts.map +1 -0
  88. package/dist/cli/program.js +38 -0
  89. package/dist/cli/tasks-adapter.d.ts +3 -0
  90. package/dist/cli/tasks-adapter.d.ts.map +1 -0
  91. package/dist/cli/tasks-adapter.js +4 -0
  92. package/dist/client/answer-poller.d.ts +52 -0
  93. package/dist/client/answer-poller.d.ts.map +1 -0
  94. package/dist/client/answer-poller.js +200 -0
  95. package/dist/client/auth-client.d.ts +200 -0
  96. package/dist/client/auth-client.d.ts.map +1 -0
  97. package/dist/client/auth-client.js +309 -0
  98. package/dist/client/breakpoint-router.d.ts +45 -0
  99. package/dist/client/breakpoint-router.d.ts.map +1 -0
  100. package/dist/client/breakpoint-router.js +45 -0
  101. package/dist/client/index.d.ts +17 -0
  102. package/dist/client/index.d.ts.map +1 -0
  103. package/dist/client/index.js +16 -0
  104. package/dist/client/profile-validator.d.ts +34 -0
  105. package/dist/client/profile-validator.d.ts.map +1 -0
  106. package/dist/client/profile-validator.js +89 -0
  107. package/dist/client/responder-client.d.ts +39 -0
  108. package/dist/client/responder-client.d.ts.map +1 -0
  109. package/dist/client/responder-client.js +72 -0
  110. package/dist/client/responder-matcher.d.ts +49 -0
  111. package/dist/client/responder-matcher.d.ts.map +1 -0
  112. package/dist/client/responder-matcher.js +226 -0
  113. package/dist/client/server-client.d.ts +124 -0
  114. package/dist/client/server-client.d.ts.map +1 -0
  115. package/dist/client/server-client.js +266 -0
  116. package/dist/client/timeout-manager.d.ts +47 -0
  117. package/dist/client/timeout-manager.d.ts.map +1 -0
  118. package/dist/client/timeout-manager.js +77 -0
  119. package/dist/config.d.ts +20 -0
  120. package/dist/config.d.ts.map +1 -0
  121. package/dist/config.js +93 -0
  122. package/dist/harness/index.d.ts +4 -0
  123. package/dist/harness/index.d.ts.map +1 -0
  124. package/dist/harness/index.js +2 -0
  125. package/dist/harness/interaction-provider.d.ts +71 -0
  126. package/dist/harness/interaction-provider.d.ts.map +1 -0
  127. package/dist/harness/interaction-provider.js +124 -0
  128. package/dist/harness/routing-rules.d.ts +7 -0
  129. package/dist/harness/routing-rules.d.ts.map +1 -0
  130. package/dist/harness/routing-rules.js +37 -0
  131. package/dist/index.d.ts +29 -0
  132. package/dist/index.d.ts.map +1 -0
  133. package/dist/index.js +33 -0
  134. package/dist/mcp/backend-resolver.d.ts +43 -0
  135. package/dist/mcp/backend-resolver.d.ts.map +1 -0
  136. package/dist/mcp/backend-resolver.js +111 -0
  137. package/dist/mcp/http-transport.d.ts +37 -0
  138. package/dist/mcp/http-transport.d.ts.map +1 -0
  139. package/dist/mcp/http-transport.js +103 -0
  140. package/dist/mcp/index.d.ts +16 -0
  141. package/dist/mcp/index.d.ts.map +1 -0
  142. package/dist/mcp/index.js +12 -0
  143. package/dist/mcp/server.d.ts +20 -0
  144. package/dist/mcp/server.d.ts.map +1 -0
  145. package/dist/mcp/server.js +259 -0
  146. package/dist/mcp/tools/answer-breakpoint.d.ts +32 -0
  147. package/dist/mcp/tools/answer-breakpoint.d.ts.map +1 -0
  148. package/dist/mcp/tools/answer-breakpoint.js +45 -0
  149. package/dist/mcp/tools/ask-breakpoint.d.ts +58 -0
  150. package/dist/mcp/tools/ask-breakpoint.d.ts.map +1 -0
  151. package/dist/mcp/tools/ask-breakpoint.js +78 -0
  152. package/dist/mcp/tools/check-status.d.ts +16 -0
  153. package/dist/mcp/tools/check-status.d.ts.map +1 -0
  154. package/dist/mcp/tools/check-status.js +18 -0
  155. package/dist/mcp/tools/claim-breakpoint.d.ts +18 -0
  156. package/dist/mcp/tools/claim-breakpoint.d.ts.map +1 -0
  157. package/dist/mcp/tools/claim-breakpoint.js +28 -0
  158. package/dist/mcp/tools/list-breakpoints.d.ts +16 -0
  159. package/dist/mcp/tools/list-breakpoints.d.ts.map +1 -0
  160. package/dist/mcp/tools/list-breakpoints.js +14 -0
  161. package/dist/mcp/tools/list-responders.d.ts +18 -0
  162. package/dist/mcp/tools/list-responders.d.ts.map +1 -0
  163. package/dist/mcp/tools/list-responders.js +37 -0
  164. package/dist/mcp/tools/native-tasks.d.ts +270 -0
  165. package/dist/mcp/tools/native-tasks.d.ts.map +1 -0
  166. package/dist/mcp/tools/native-tasks.js +481 -0
  167. package/dist/mcp/tools/poll-breakpoints.d.ts +18 -0
  168. package/dist/mcp/tools/poll-breakpoints.d.ts.map +1 -0
  169. package/dist/mcp/tools/poll-breakpoints.js +36 -0
  170. package/dist/mcp/tools/verify-answer.d.ts +16 -0
  171. package/dist/mcp/tools/verify-answer.d.ts.map +1 -0
  172. package/dist/mcp/tools/verify-answer.js +38 -0
  173. package/dist/proven/index.d.ts +5 -0
  174. package/dist/proven/index.d.ts.map +1 -0
  175. package/dist/proven/index.js +3 -0
  176. package/dist/proven/keys.d.ts +33 -0
  177. package/dist/proven/keys.d.ts.map +1 -0
  178. package/dist/proven/keys.js +117 -0
  179. package/dist/proven/sign.d.ts +16 -0
  180. package/dist/proven/sign.d.ts.map +1 -0
  181. package/dist/proven/sign.js +60 -0
  182. package/dist/proven/types.d.ts +26 -0
  183. package/dist/proven/types.d.ts.map +1 -0
  184. package/dist/proven/types.js +5 -0
  185. package/dist/proven/verify.d.ts +6 -0
  186. package/dist/proven/verify.d.ts.map +1 -0
  187. package/dist/proven/verify.js +58 -0
  188. package/dist/responders/types.d.ts +38 -0
  189. package/dist/responders/types.d.ts.map +1 -0
  190. package/dist/responders/types.js +1 -0
  191. package/dist/router.d.ts +51 -0
  192. package/dist/router.d.ts.map +1 -0
  193. package/dist/router.js +200 -0
  194. package/dist/types.d.ts +7711 -0
  195. package/dist/types.d.ts.map +1 -0
  196. package/dist/types.js +479 -0
  197. package/package.json +96 -0
  198. package/responder/README.md +42 -0
  199. package/responder/backend-responder.json +9 -0
  200. package/responder/devops-responder.json +9 -0
  201. package/responder/frontend-responder.json +9 -0
  202. package/responder/schema.json +89 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6B3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAuBD,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,gBAAgB,GACzB,8BAA8B,CAiBhC;AAID,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAI9E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAItF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
package/dist/types.js ADDED
@@ -0,0 +1,479 @@
1
+ import { z } from "zod";
2
+ import { randomBytes } from "node:crypto";
3
+ // ── Enums ────────────────────────────────────────────────────────────────
4
+ export const BreakpointStatusSchema = z.enum([
5
+ "pending",
6
+ "routed",
7
+ "claimed",
8
+ "answered",
9
+ "completed",
10
+ "expired",
11
+ "cancelled",
12
+ "assigned",
13
+ "in-progress",
14
+ "blocked",
15
+ "escalated",
16
+ ]);
17
+ export const BreakpointStrategySchema = z.enum([
18
+ "single",
19
+ "first-response-wins",
20
+ "collect-all",
21
+ "quorum",
22
+ ]);
23
+ export const ResponderTypeSchema = z.enum([
24
+ "human",
25
+ "agent",
26
+ "tracker",
27
+ "internal",
28
+ "auto",
29
+ ]);
30
+ // ── Urgency ──────────────────────────────────────────────────────────────
31
+ export const UrgencySchema = z.enum(["low", "medium", "high"]);
32
+ export const TaskPrioritySchema = z.enum(["low", "medium", "high", "critical"]);
33
+ // ── InteractionKind ──────────────────────────────────────────────────────
34
+ export const InteractionKindSchema = z.enum([
35
+ "clarification",
36
+ "approval",
37
+ "intervention",
38
+ "notification",
39
+ "handoff",
40
+ ]);
41
+ // ── Code Snippet ─────────────────────────────────────────────────────────
42
+ export const CodeSnippetSchema = z.union([
43
+ z.string(),
44
+ z.object({
45
+ filename: z.string(),
46
+ code: z.string(),
47
+ language: z.string().optional(),
48
+ }),
49
+ ]);
50
+ // ── BreakpointContext ────────────────────────────────────────────────────
51
+ export const BreakpointContextLinkSchema = z.object({
52
+ label: z.string().min(1),
53
+ url: z.string().url(),
54
+ kind: z.enum(["reference", "repo", "artifact", "external"]).optional(),
55
+ }).catchall(z.unknown());
56
+ export const BreakpointContextSectionSchema = z.object({
57
+ title: z.string().min(1),
58
+ markdown: z.string().min(1),
59
+ }).catchall(z.unknown());
60
+ export const BreakpointContextArtifactSchema = z.object({
61
+ label: z.string().min(1),
62
+ url: z.string().url(),
63
+ kind: z.enum(["image", "document", "trace", "log", "build", "external"]).optional(),
64
+ mimeType: z.string().min(1).optional(),
65
+ }).catchall(z.unknown());
66
+ export const BreakpointContextSchema = z.object({
67
+ description: z.string(),
68
+ codeSnippets: z.array(CodeSnippetSchema),
69
+ fileReferences: z.array(z.string()),
70
+ tags: z.array(z.string()),
71
+ title: z.string().optional(),
72
+ summary: z.string().optional(),
73
+ markdown: z.string().optional(),
74
+ domain: z.string().optional(),
75
+ urgency: UrgencySchema.optional(),
76
+ interactionKind: InteractionKindSchema.optional(),
77
+ links: z.array(BreakpointContextLinkSchema).optional(),
78
+ sections: z.array(BreakpointContextSectionSchema).optional(),
79
+ artifacts: z.array(BreakpointContextArtifactSchema).optional(),
80
+ metadata: z.record(z.string(), z.unknown()).optional(),
81
+ }).catchall(z.unknown());
82
+ // ── BreakpointRouting ────────────────────────────────────────────────────
83
+ export const BreakpointRoutingSchema = z.object({
84
+ strategy: BreakpointStrategySchema,
85
+ targetResponders: z.array(z.string()),
86
+ timeoutMs: z.number().positive(),
87
+ presentToUser: z.boolean(),
88
+ breakpointId: z.string().optional(),
89
+ autoApproveAfterN: z.number().int().optional(),
90
+ responderType: ResponderTypeSchema.optional(),
91
+ adapter: z.string().min(1).optional(),
92
+ model: z.string().min(1).optional(),
93
+ provider: z.string().min(1).optional(),
94
+ trackerBackend: z.string().min(1).optional(),
95
+ fallbackType: ResponderTypeSchema.optional(),
96
+ });
97
+ // ── ResponderProfile ─────────────────────────────────────────────────────
98
+ export const ResponderProfileSchema = z.object({
99
+ id: z.string().min(1),
100
+ type: ResponderTypeSchema.optional(),
101
+ name: z.string().min(1),
102
+ title: z.string(),
103
+ capabilities: z.array(z.string().min(1)).optional(),
104
+ domains: z.array(z.string()),
105
+ tags: z.array(z.string()),
106
+ availability: z.boolean(),
107
+ responseTimeSla: z.number().positive(),
108
+ publicKeyFingerprint: z.string().optional(),
109
+ adapter: z.string().min(1).optional(),
110
+ model: z.string().min(1).optional(),
111
+ provider: z.string().min(1).optional(),
112
+ trackerBackend: z.string().min(1).optional(),
113
+ trackerConfig: z.record(z.string(), z.unknown()).optional(),
114
+ }).strict();
115
+ // ── BreakpointAnswer ─────────────────────────────────────────────────────
116
+ export const BreakpointAnswerRatingSchema = z.object({
117
+ helpful: z.boolean(),
118
+ comment: z.string().optional(),
119
+ ratedAt: z.string().datetime(),
120
+ });
121
+ export const DecisionMemorySchema = z.object({
122
+ applicabilityContext: z.string().min(1),
123
+ reasoning: z.string().min(1),
124
+ enrichedContext: z.string().optional(),
125
+ savedAt: z.string().datetime(),
126
+ });
127
+ export const BreakpointAnswerSchema = z.object({
128
+ id: z.string().min(1),
129
+ breakpointId: z.string().min(1),
130
+ responderId: z.string().min(1),
131
+ responderName: z.string().min(1),
132
+ text: z.string(),
133
+ approved: z.boolean().optional(),
134
+ confidence: z.number().min(0).max(100),
135
+ references: z.array(z.string()),
136
+ followUpQuestions: z.array(z.string()),
137
+ answeredAt: z.string().datetime(),
138
+ rating: BreakpointAnswerRatingSchema.optional(),
139
+ decisionMemory: DecisionMemorySchema.optional(),
140
+ });
141
+ // ── Proven Breakpoint Types ──────────────────────────────────────────────
142
+ export const ProvenBreakpointAnswerSchema = BreakpointAnswerSchema.extend({
143
+ signature: z.string().min(1),
144
+ publicKeyFingerprint: z.string().min(1),
145
+ signedAt: z.string().datetime(),
146
+ signedFields: z.array(z.string()),
147
+ });
148
+ export const BreakpointPublicAnswerSchema = z.union([
149
+ ProvenBreakpointAnswerSchema,
150
+ BreakpointAnswerSchema,
151
+ ]);
152
+ export function isProvenBreakpointAnswer(answer) {
153
+ return ProvenBreakpointAnswerSchema.safeParse(answer).success;
154
+ }
155
+ export const ProvenVerificationResultSchema = z.object({
156
+ valid: z.boolean(),
157
+ publicKeyFingerprint: z.string().optional(),
158
+ responderName: z.string().optional(),
159
+ reason: z.string().optional(),
160
+ verifiedAt: z.string().datetime(),
161
+ });
162
+ // ── Breakpoint ───────────────────────────────────────────────────────────
163
+ export const BreakpointSubmitterSchema = z.object({
164
+ sub: z.string().min(1),
165
+ login: z.string().min(1),
166
+ name: z.string().min(1),
167
+ email: z.string().email().optional(),
168
+ avatarUrl: z.string().url().optional(),
169
+ });
170
+ export const BreakpointDependencySchema = z.object({
171
+ id: z.string().min(1),
172
+ requiredStatus: BreakpointStatusSchema.default("completed").optional(),
173
+ blocking: z.boolean().default(true),
174
+ }).catchall(z.unknown());
175
+ export const BreakpointCommentSchema = z.object({
176
+ id: z.string().min(1),
177
+ authorId: z.string().min(1),
178
+ authorName: z.string().min(1).optional(),
179
+ text: z.string().min(1),
180
+ createdAt: z.string().datetime(),
181
+ metadata: z.record(z.string(), z.unknown()).optional(),
182
+ }).catchall(z.unknown());
183
+ export const BreakpointHistoryEntrySchema = z.object({
184
+ id: z.string().min(1),
185
+ type: z.enum([
186
+ "created",
187
+ "assigned",
188
+ "status",
189
+ "comment",
190
+ "answer",
191
+ "bulk",
192
+ "audit",
193
+ "escalation",
194
+ ]),
195
+ at: z.string().datetime(),
196
+ actorId: z.string().min(1).optional(),
197
+ fromStatus: BreakpointStatusSchema.optional(),
198
+ toStatus: BreakpointStatusSchema.optional(),
199
+ message: z.string().optional(),
200
+ metadata: z.record(z.string(), z.unknown()).optional(),
201
+ }).catchall(z.unknown());
202
+ export const BreakpointAuditEntrySchema = z.object({
203
+ id: z.string().min(1),
204
+ action: z.string().min(1),
205
+ at: z.string().datetime(),
206
+ actorId: z.string().min(1).optional(),
207
+ redacted: z.boolean().default(false),
208
+ metadata: z.record(z.string(), z.unknown()).optional(),
209
+ }).catchall(z.unknown());
210
+ export const BreakpointFormFieldSchema = z.object({
211
+ id: z.string().min(1),
212
+ label: z.string().min(1),
213
+ type: z.enum(["text", "textarea", "number", "boolean", "select", "multiselect", "file"]),
214
+ required: z.boolean().default(false).optional(),
215
+ options: z.array(z.string()).optional(),
216
+ }).catchall(z.unknown());
217
+ export const BreakpointFormDefinitionSchema = z.object({
218
+ id: z.string().min(1),
219
+ title: z.string().min(1),
220
+ fields: z.array(BreakpointFormFieldSchema),
221
+ }).catchall(z.unknown());
222
+ export const BreakpointFormSubmissionSchema = z.object({
223
+ formId: z.string().min(1),
224
+ submittedBy: z.string().min(1),
225
+ submittedAt: z.string().datetime(),
226
+ values: z.record(z.string(), z.unknown()),
227
+ }).catchall(z.unknown());
228
+ export const BreakpointSlaSchema = z.object({
229
+ responseDueAt: z.string().datetime().optional(),
230
+ completionDueAt: z.string().datetime().optional(),
231
+ breached: z.boolean().default(false).optional(),
232
+ }).catchall(z.unknown());
233
+ export const BreakpointMetricsSchema = z.object({
234
+ responseTimeMs: z.number().nonnegative().optional(),
235
+ completionTimeMs: z.number().nonnegative().optional(),
236
+ answerCount: z.number().int().nonnegative().default(0).optional(),
237
+ commentCount: z.number().int().nonnegative().default(0).optional(),
238
+ }).catchall(z.unknown());
239
+ export const NotificationProviderSchema = z.enum(["email", "slack", "discord", "webhook"]);
240
+ export const NotificationConfigSchema = z.object({
241
+ provider: NotificationProviderSchema,
242
+ enabled: z.boolean().default(false),
243
+ target: z.string().min(1).optional(),
244
+ secretEnv: z.string().min(1).optional(),
245
+ }).catchall(z.unknown());
246
+ export const EscalationStepSchema = z.object({
247
+ responderId: z.string().min(1).optional(),
248
+ afterMs: z.number().int().positive(),
249
+ notification: NotificationConfigSchema.optional(),
250
+ }).catchall(z.unknown());
251
+ export const EscalationChainSchema = z.object({
252
+ enabled: z.boolean().default(false),
253
+ steps: z.array(EscalationStepSchema).default([]),
254
+ }).catchall(z.unknown());
255
+ export const BreakpointSchema = z.object({
256
+ id: z.string().min(1),
257
+ text: z.string().min(1),
258
+ context: BreakpointContextSchema,
259
+ status: BreakpointStatusSchema,
260
+ priority: TaskPrioritySchema.optional(),
261
+ dependsOn: z.array(BreakpointDependencySchema).default([]),
262
+ routing: BreakpointRoutingSchema,
263
+ answers: z.array(BreakpointPublicAnswerSchema),
264
+ selectedAnswer: z.string().optional(),
265
+ projectId: z.string().optional(),
266
+ repoId: z.string().optional(),
267
+ createdBy: BreakpointSubmitterSchema.optional(),
268
+ assigneeId: z.string().min(1).optional(),
269
+ assigneeName: z.string().min(1).optional(),
270
+ claimedByResponderId: z.string().min(1).optional(),
271
+ claimedByResponderName: z.string().min(1).optional(),
272
+ comments: z.array(BreakpointCommentSchema).default([]),
273
+ history: z.array(BreakpointHistoryEntrySchema).default([]),
274
+ auditLog: z.array(BreakpointAuditEntrySchema).default([]),
275
+ forms: z.array(BreakpointFormDefinitionSchema).default([]),
276
+ formSubmissions: z.array(BreakpointFormSubmissionSchema).default([]),
277
+ sla: BreakpointSlaSchema.optional(),
278
+ metrics: BreakpointMetricsSchema.optional(),
279
+ notifications: z.array(NotificationConfigSchema).default([]),
280
+ escalation: EscalationChainSchema.optional(),
281
+ createdAt: z.string().datetime(),
282
+ updatedAt: z.string().datetime(),
283
+ expiresAt: z.string().datetime(),
284
+ });
285
+ const TERMINAL_BREAKPOINT_STATUSES = new Set([
286
+ "answered",
287
+ "completed",
288
+ "expired",
289
+ "cancelled",
290
+ ]);
291
+ const ALLOWED_BREAKPOINT_TRANSITIONS = {
292
+ pending: ["routed", "claimed", "assigned", "answered", "completed", "expired", "cancelled", "blocked", "escalated"],
293
+ routed: ["claimed", "assigned", "answered", "completed", "expired", "cancelled", "blocked", "escalated"],
294
+ claimed: ["in-progress", "answered", "completed", "expired", "cancelled", "blocked", "escalated"],
295
+ assigned: ["claimed", "in-progress", "answered", "completed", "expired", "cancelled", "blocked", "escalated"],
296
+ "in-progress": ["answered", "completed", "expired", "cancelled", "blocked", "escalated"],
297
+ blocked: ["assigned", "in-progress", "cancelled", "escalated"],
298
+ escalated: ["assigned", "claimed", "in-progress", "answered", "completed", "expired", "cancelled", "blocked"],
299
+ answered: [],
300
+ completed: [],
301
+ expired: [],
302
+ cancelled: [],
303
+ };
304
+ export function validateBreakpointTransition(fromStatus, toStatus) {
305
+ if (fromStatus === toStatus) {
306
+ return { valid: true };
307
+ }
308
+ if (TERMINAL_BREAKPOINT_STATUSES.has(fromStatus)) {
309
+ return {
310
+ valid: false,
311
+ reason: `Cannot transition from terminal status "${fromStatus}" to "${toStatus}"`,
312
+ };
313
+ }
314
+ if (!ALLOWED_BREAKPOINT_TRANSITIONS[fromStatus]?.includes(toStatus)) {
315
+ return {
316
+ valid: false,
317
+ reason: `Invalid breakpoint status transition from "${fromStatus}" to "${toStatus}"`,
318
+ };
319
+ }
320
+ return { valid: true };
321
+ }
322
+ // ── BreakpointWaitResult ─────────────────────────────────────────────────
323
+ export const BreakpointWaitResultSchema = z.object({
324
+ answered: z.boolean(),
325
+ breakpoint: BreakpointSchema,
326
+ answer: BreakpointPublicAnswerSchema.optional(),
327
+ allAnswers: z.array(BreakpointPublicAnswerSchema),
328
+ resolution: z.string().optional(),
329
+ elapsedMs: z.number().nonnegative(),
330
+ });
331
+ // ── ExpertiseArea ────────────────────────────────────────────────────────
332
+ export const ExpertiseAreaSchema = z.object({
333
+ domain: z.string().min(1),
334
+ topics: z.array(z.string()),
335
+ keywords: z.array(z.string()),
336
+ proficiency: z.number().int().min(1).max(5),
337
+ });
338
+ // ── BreakpointBrowserSession ────────────────────────────────────────────
339
+ export const BreakpointBrowserSessionSchema = z.object({
340
+ breakpointId: z.string().min(1),
341
+ slug: z.string().min(1),
342
+ url: z.string().url(),
343
+ authToken: z.string().min(1),
344
+ expiresAt: z.string().datetime(),
345
+ mode: z.enum(["same-user", "responder"]),
346
+ responderId: z.string().min(1).optional(),
347
+ responderName: z.string().min(1).optional(),
348
+ });
349
+ // ── BreakpointSessionView ───────────────────────────────────────────────
350
+ export const BreakpointSessionViewSchema = z.object({
351
+ breakpoint: BreakpointSchema,
352
+ expiresAt: z.string().datetime(),
353
+ canAnswer: z.boolean(),
354
+ mode: z.enum(["same-user", "responder"]),
355
+ responderId: z.string().min(1).optional(),
356
+ responderName: z.string().min(1).optional(),
357
+ });
358
+ // ── Routing Configuration ────────────────────────────────────────────────
359
+ export const GitNativeBackendConfigSchema = z.object({
360
+ type: z.literal("git-native"),
361
+ breakpointsDir: z.string().optional(),
362
+ pollIntervalMs: z.number().positive().optional(),
363
+ timeoutMs: z.number().positive().optional(),
364
+ });
365
+ export const ServerBackendConfigSchema = z.object({
366
+ type: z.literal("server"),
367
+ url: z.string().min(1),
368
+ authToken: z.string().min(1).optional(),
369
+ });
370
+ export const GitHubIssuesBackendConfigSchema = z.object({
371
+ type: z.literal("github-issues"),
372
+ owner: z.string().min(1),
373
+ repo: z.string().min(1),
374
+ labels: z.array(z.string()).optional(),
375
+ assignees: z.array(z.string()).optional(),
376
+ pollIntervalMs: z.number().positive().optional(),
377
+ timeoutMs: z.number().positive().optional(),
378
+ });
379
+ export const ExternalTrackerProviderSchema = z.enum([
380
+ "github-issues",
381
+ "jira",
382
+ "linear",
383
+ "generic-rest",
384
+ ]);
385
+ export const ExternalTrackerStatusSchema = z.enum([
386
+ "open",
387
+ "claimed",
388
+ "answered",
389
+ "completed",
390
+ "cancelled",
391
+ ]);
392
+ export const ExternalTrackerSyncDirectionSchema = z.enum([
393
+ "outbound",
394
+ "inbound",
395
+ "bidirectional",
396
+ ]);
397
+ export const ExternalTrackerConflictStrategySchema = z.enum([
398
+ "remote-wins",
399
+ "local-wins",
400
+ "newest-wins",
401
+ "manual",
402
+ ]);
403
+ export const ExternalTrackerAuthConfigSchema = z.object({
404
+ tokenEnv: z.string().min(1).optional(),
405
+ emailEnv: z.string().min(1).optional(),
406
+ apiTokenEnv: z.string().min(1).optional(),
407
+ webhookSecretEnv: z.string().min(1).optional(),
408
+ }).strict();
409
+ export const ExternalTrackerFieldMappingSchema = z.object({
410
+ title: z.string().min(1).optional(),
411
+ description: z.string().min(1).optional(),
412
+ status: z.string().min(1).optional(),
413
+ assignee: z.string().min(1).optional(),
414
+ labels: z.string().min(1).optional(),
415
+ priority: z.string().min(1).optional(),
416
+ answer: z.string().min(1).optional(),
417
+ externalId: z.string().min(1).optional(),
418
+ externalKey: z.string().min(1).optional(),
419
+ updatedAt: z.string().min(1).optional(),
420
+ url: z.string().min(1).optional(),
421
+ metadata: z.record(z.string(), z.string()).optional(),
422
+ }).strict();
423
+ export const ExternalTrackerWebhookConfigSchema = z.object({
424
+ secretEnv: z.string().min(1).optional(),
425
+ dedupeWindowMs: z.number().positive().optional(),
426
+ }).strict();
427
+ export const ExternalTrackerBackendConfigSchema = z.object({
428
+ type: z.literal("external-tracker"),
429
+ provider: ExternalTrackerProviderSchema,
430
+ tracker: z.record(z.string(), z.unknown()).optional(),
431
+ auth: ExternalTrackerAuthConfigSchema.optional(),
432
+ fieldMapping: ExternalTrackerFieldMappingSchema.optional(),
433
+ statusMapping: z.record(z.string(), ExternalTrackerStatusSchema).optional(),
434
+ syncDirection: ExternalTrackerSyncDirectionSchema.default("bidirectional").optional(),
435
+ conflictStrategy: ExternalTrackerConflictStrategySchema.default("newest-wins").optional(),
436
+ webhook: ExternalTrackerWebhookConfigSchema.optional(),
437
+ pollIntervalMs: z.number().positive().optional(),
438
+ timeoutMs: z.number().positive().optional(),
439
+ });
440
+ export const AgentMuxBackendConfigSchema = z.object({
441
+ type: z.literal("adapters"),
442
+ agent: z.string().min(1).optional(),
443
+ adapter: z.string().min(1).optional(),
444
+ model: z.string().min(1).optional(),
445
+ cwd: z.string().min(1).optional(),
446
+ timeoutMs: z.number().positive().optional(),
447
+ collectEvents: z.boolean().optional(),
448
+ tags: z.array(z.string()).optional(),
449
+ approvalMode: z.enum(["yolo", "prompt", "deny"]).optional(),
450
+ nonInteractive: z.boolean().optional(),
451
+ });
452
+ export const BackendConfigSchema = z.discriminatedUnion("type", [
453
+ GitNativeBackendConfigSchema,
454
+ ServerBackendConfigSchema,
455
+ GitHubIssuesBackendConfigSchema,
456
+ ExternalTrackerBackendConfigSchema,
457
+ AgentMuxBackendConfigSchema,
458
+ ]);
459
+ export const RoutingRuleSchema = z.object({
460
+ domains: z.array(z.string()).optional(),
461
+ tags: z.array(z.string()).optional(),
462
+ backend: z.string().min(1),
463
+ backendConfig: z.record(z.string(), z.unknown()),
464
+ });
465
+ export const RoutingConfigSchema = z.object({
466
+ defaultBackend: z.string().min(1),
467
+ routes: z.array(RoutingRuleSchema),
468
+ });
469
+ // ── Constants ────────────────────────────────────────────────────────────
470
+ export const DEFAULT_POLL_INTERVAL_MS = 3_000;
471
+ export const DEFAULT_TIMEOUT_MS = 30 * 60 * 1_000; // 30 minutes
472
+ export const BREAKPOINTS_DIR = ".breakpoints";
473
+ export const BREAKPOINTS_KEYS_DIR = ".breakpoints/.keys";
474
+ export const BREAKPOINTS_TRUSTED_KEYS_DIR = ".breakpoints/.keys/trusted";
475
+ export const BREAKPOINTS_PRIVATE_KEYS_DIR = ".breakpoints/.keys/private";
476
+ // ── Utility ──────────────────────────────────────────────────────────────
477
+ export function generateBreakpointId() {
478
+ return randomBytes(12).toString("hex");
479
+ }
package/package.json ADDED
@@ -0,0 +1,96 @@
1
+ {
2
+ "name": "@a5c-ai/tasks-adapter",
3
+ "version": "5.1.1-staging.0007199a1cb2",
4
+ "description": "Serverless breakpoint multiplexing system with pluggable backends and cryptographic signing.",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "default": "./dist/index.js"
12
+ },
13
+ "./backends": {
14
+ "types": "./dist/backends/index.d.ts",
15
+ "default": "./dist/backends/index.js"
16
+ },
17
+ "./proven": {
18
+ "types": "./dist/proven/index.d.ts",
19
+ "default": "./dist/proven/index.js"
20
+ },
21
+ "./mcp": {
22
+ "types": "./dist/mcp/index.d.ts",
23
+ "default": "./dist/mcp/index.js"
24
+ },
25
+ "./harness": {
26
+ "types": "./dist/harness/index.d.ts",
27
+ "default": "./dist/harness/index.js"
28
+ },
29
+ "./auth": {
30
+ "types": "./dist/auth/index.d.ts",
31
+ "default": "./dist/auth/index.js"
32
+ },
33
+ "./config": {
34
+ "types": "./dist/config.d.ts",
35
+ "default": "./dist/config.js"
36
+ }
37
+ },
38
+ "bin": {
39
+ "adapters-tasks": "./dist/cli/index.js",
40
+ "tasks-adapter": "./dist/cli/tasks-adapter.js"
41
+ },
42
+ "files": [
43
+ "dist",
44
+ "responder",
45
+ "README.md"
46
+ ],
47
+ "scripts": {
48
+ "build": "tsc",
49
+ "clean": "rm -rf dist",
50
+ "test": "vitest run",
51
+ "test:watch": "vitest watch",
52
+ "test:packaged-surface-parity": "npm exec --yes --package=tsx@4.19.2 -- tsx src/__tests__/packaged-surface-parity.test.ts",
53
+ "typecheck": "tsc --noEmit",
54
+ "lint": "eslint src/"
55
+ },
56
+ "author": "a5c.ai",
57
+ "license": "MIT",
58
+ "repository": {
59
+ "type": "git",
60
+ "url": "git+https://github.com/a5c-ai/babysitter.git",
61
+ "directory": "packages/adapters/tasks"
62
+ },
63
+ "homepage": "https://github.com/a5c-ai/babysitter/tree/main/packages/adapters/tasks#readme",
64
+ "bugs": {
65
+ "url": "https://github.com/a5c-ai/babysitter/issues"
66
+ },
67
+ "publishConfig": {
68
+ "access": "public"
69
+ },
70
+ "dependencies": {
71
+ "@octokit/auth-app": "^7.1.4",
72
+ "@octokit/rest": "^21.1.1",
73
+ "commander": "^12.1.0",
74
+ "jsonwebtoken": "^9.0.2",
75
+ "open": "^10.0.3",
76
+ "zod": "^3.23.0"
77
+ },
78
+ "devDependencies": {
79
+ "@types/jsonwebtoken": "^9.0.9",
80
+ "@types/node": "^22.0.0",
81
+ "@typescript-eslint/eslint-plugin": "^8.59.3",
82
+ "@typescript-eslint/parser": "^8.59.3",
83
+ "eslint": "^9.39.4",
84
+ "typescript": "^5.7.3",
85
+ "vitest": "^4.1.6"
86
+ },
87
+ "atlas": {
88
+ "layers": [
89
+ "L9",
90
+ "L14"
91
+ ],
92
+ "muxes": [
93
+ "tasks-adapter"
94
+ ]
95
+ }
96
+ }
@@ -0,0 +1,42 @@
1
+ # Responder Profile System
2
+
3
+ This directory contains packaged responder profile examples for `@a5c-ai/tasks-adapter`.
4
+
5
+ ## Schema
6
+
7
+ Each profile is a JSON file that conforms to the `ResponderProfile` schema defined in the package runtime. The JSON Schema equivalent is provided in `schema.json`.
8
+
9
+ ### Required Fields
10
+
11
+ | Field | Type | Description |
12
+ |---|---|---|
13
+ | `id` | `string` | Unique identifier for the responder. |
14
+ | `name` | `string` | Display name shown in CLI and API responses. |
15
+ | `title` | `string` | Professional title or role. |
16
+ | `domains` | `string[]` | High-level domains used for routing. |
17
+ | `tags` | `string[]` | Keywords, tools, and specialties used for matching. |
18
+ | `availability` | `boolean` | Whether the responder is available for routing. |
19
+ | `responseTimeSla` | `number` | Expected maximum response time in milliseconds. |
20
+
21
+ ### Optional Fields
22
+
23
+ | Field | Type | Description |
24
+ |---|---|---|
25
+ | `publicKeyFingerprint` | `string` | Fingerprint for provenance-aware responder flows. |
26
+
27
+ ## How to Use
28
+
29
+ 1. Copy one of the example JSON files into your repo's `.a5c/responder/` directory.
30
+ 2. Rename the file to match your responder ID if needed.
31
+ 3. Adjust the `domains`, `tags`, and availability fields to reflect the responder's actual coverage.
32
+ 4. Validate the result with `bmux responders show <id>` or the exported profile-validator helpers.
33
+
34
+ ## Matching Notes
35
+
36
+ The runtime matcher uses:
37
+
38
+ - `domains` for broad routing relevance
39
+ - `tags` for narrower keyword matches
40
+ - `availability` to exclude offline responders
41
+
42
+ The examples in this directory are covered by regression tests and should always remain valid as shipped.
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": "backend-responder",
3
+ "name": "Jordan Park",
4
+ "title": "Senior Backend Engineer",
5
+ "domains": ["backend", "database"],
6
+ "tags": ["nodejs", "express", "postgresql", "redis", "api-design", "microservices"],
7
+ "availability": true,
8
+ "responseTimeSla": 1800000
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": "devops-responder",
3
+ "name": "Sam Rivera",
4
+ "title": "DevOps Lead",
5
+ "domains": ["devops", "infrastructure"],
6
+ "tags": ["docker", "kubernetes", "cicd", "aws", "terraform", "monitoring"],
7
+ "availability": true,
8
+ "responseTimeSla": 3600000
9
+ }