@aligndottech/cli 0.49.0 → 0.50.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 (622) hide show
  1. package/README.md +4 -3
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +26 -8
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/agents.d.ts.map +1 -1
  6. package/dist/commands/agents.js +4 -1
  7. package/dist/commands/agents.js.map +1 -1
  8. package/dist/commands/check.d.ts.map +1 -1
  9. package/dist/commands/check.js +18 -2
  10. package/dist/commands/check.js.map +1 -1
  11. package/dist/commands/connect.d.ts +5 -0
  12. package/dist/commands/connect.d.ts.map +1 -1
  13. package/dist/commands/connect.js +24 -0
  14. package/dist/commands/connect.js.map +1 -1
  15. package/dist/commands/import/confluence.d.ts.map +1 -1
  16. package/dist/commands/import/confluence.js +24 -5
  17. package/dist/commands/import/confluence.js.map +1 -1
  18. package/dist/commands/import/docs.js +2 -2
  19. package/dist/commands/import/git.d.ts.map +1 -1
  20. package/dist/commands/import/git.js +15 -5
  21. package/dist/commands/import/git.js.map +1 -1
  22. package/dist/commands/import/github.d.ts.map +1 -1
  23. package/dist/commands/import/github.js +34 -7
  24. package/dist/commands/import/github.js.map +1 -1
  25. package/dist/commands/import/gitlab.d.ts.map +1 -1
  26. package/dist/commands/import/gitlab.js +10 -5
  27. package/dist/commands/import/gitlab.js.map +1 -1
  28. package/dist/commands/import/jira.d.ts.map +1 -1
  29. package/dist/commands/import/jira.js +10 -5
  30. package/dist/commands/import/jira.js.map +1 -1
  31. package/dist/commands/import/linear.d.ts.map +1 -1
  32. package/dist/commands/import/linear.js +10 -5
  33. package/dist/commands/import/linear.js.map +1 -1
  34. package/dist/commands/import/notion.d.ts.map +1 -1
  35. package/dist/commands/import/notion.js +10 -5
  36. package/dist/commands/import/notion.js.map +1 -1
  37. package/dist/commands/import/sessions.js +2 -2
  38. package/dist/commands/import/slack.d.ts.map +1 -1
  39. package/dist/commands/import/slack.js +12 -7
  40. package/dist/commands/import/slack.js.map +1 -1
  41. package/dist/commands/import/teams.d.ts.map +1 -1
  42. package/dist/commands/import/teams.js +10 -5
  43. package/dist/commands/import/teams.js.map +1 -1
  44. package/dist/commands/import/zoom.d.ts.map +1 -1
  45. package/dist/commands/import/zoom.js +10 -5
  46. package/dist/commands/import/zoom.js.map +1 -1
  47. package/dist/commands/import.d.ts.map +1 -1
  48. package/dist/commands/import.js +43 -1
  49. package/dist/commands/import.js.map +1 -1
  50. package/dist/commands/local.d.ts.map +1 -1
  51. package/dist/commands/local.js +76 -4
  52. package/dist/commands/local.js.map +1 -1
  53. package/dist/commands/mark.d.ts +37 -0
  54. package/dist/commands/mark.d.ts.map +1 -0
  55. package/dist/commands/mark.js +105 -0
  56. package/dist/commands/mark.js.map +1 -0
  57. package/dist/commands/mcp.d.ts +141 -2
  58. package/dist/commands/mcp.d.ts.map +1 -1
  59. package/dist/commands/mcp.js +72 -14
  60. package/dist/commands/mcp.js.map +1 -1
  61. package/dist/commands/registry.d.ts.map +1 -1
  62. package/dist/commands/registry.js +8 -2
  63. package/dist/commands/registry.js.map +1 -1
  64. package/dist/commands/setup.d.ts +39 -0
  65. package/dist/commands/setup.d.ts.map +1 -1
  66. package/dist/commands/setup.js +65 -50
  67. package/dist/commands/setup.js.map +1 -1
  68. package/dist/commands/share.d.ts +7 -0
  69. package/dist/commands/share.d.ts.map +1 -0
  70. package/dist/commands/share.js +60 -0
  71. package/dist/commands/share.js.map +1 -0
  72. package/dist/commands/sync.d.ts +55 -0
  73. package/dist/commands/sync.d.ts.map +1 -0
  74. package/dist/commands/sync.js +278 -0
  75. package/dist/commands/sync.js.map +1 -0
  76. package/dist/commands/telemetry.d.ts +3 -3
  77. package/dist/commands/telemetry.js +6 -6
  78. package/dist/commands/telemetry.js.map +1 -1
  79. package/dist/commands/why.d.ts.map +1 -1
  80. package/dist/commands/why.js +6 -1
  81. package/dist/commands/why.js.map +1 -1
  82. package/dist/index.d.ts +2 -0
  83. package/dist/index.d.ts.map +1 -1
  84. package/dist/index.js +2 -0
  85. package/dist/index.js.map +1 -1
  86. package/dist/lib/backfill-state.d.ts +116 -0
  87. package/dist/lib/backfill-state.d.ts.map +1 -0
  88. package/dist/lib/backfill-state.js +342 -0
  89. package/dist/lib/backfill-state.js.map +1 -0
  90. package/dist/lib/backup-copy.d.ts +17 -0
  91. package/dist/lib/backup-copy.d.ts.map +1 -0
  92. package/dist/lib/backup-copy.js +13 -0
  93. package/dist/lib/backup-copy.js.map +1 -0
  94. package/dist/lib/capture-report.d.ts +22 -18
  95. package/dist/lib/capture-report.d.ts.map +1 -1
  96. package/dist/lib/capture-report.js +64 -2
  97. package/dist/lib/capture-report.js.map +1 -1
  98. package/dist/lib/config.d.ts +31 -0
  99. package/dist/lib/config.d.ts.map +1 -1
  100. package/dist/lib/config.js +139 -0
  101. package/dist/lib/config.js.map +1 -1
  102. package/dist/lib/confirm-timeout.d.ts +8 -0
  103. package/dist/lib/confirm-timeout.d.ts.map +1 -0
  104. package/dist/lib/confirm-timeout.js +18 -0
  105. package/dist/lib/confirm-timeout.js.map +1 -0
  106. package/dist/lib/curation/check-marks.d.ts +48 -0
  107. package/dist/lib/curation/check-marks.d.ts.map +1 -0
  108. package/dist/lib/curation/check-marks.js +81 -0
  109. package/dist/lib/curation/check-marks.js.map +1 -0
  110. package/dist/lib/curation/guardrail.d.ts +39 -0
  111. package/dist/lib/curation/guardrail.d.ts.map +1 -0
  112. package/dist/lib/curation/guardrail.js +93 -0
  113. package/dist/lib/curation/guardrail.js.map +1 -0
  114. package/dist/lib/curation/judge.d.ts +3 -0
  115. package/dist/lib/curation/judge.d.ts.map +1 -0
  116. package/dist/lib/curation/judge.js +9 -0
  117. package/dist/lib/curation/judge.js.map +1 -0
  118. package/dist/lib/curation/judgements-db.d.ts +96 -0
  119. package/dist/lib/curation/judgements-db.d.ts.map +1 -0
  120. package/dist/lib/curation/judgements-db.js +200 -0
  121. package/dist/lib/curation/judgements-db.js.map +1 -0
  122. package/dist/lib/curation/last-check.d.ts +32 -0
  123. package/dist/lib/curation/last-check.d.ts.map +1 -0
  124. package/dist/lib/curation/last-check.js +81 -0
  125. package/dist/lib/curation/last-check.js.map +1 -0
  126. package/dist/lib/curation/mark.d.ts +76 -0
  127. package/dist/lib/curation/mark.d.ts.map +1 -0
  128. package/dist/lib/curation/mark.js +359 -0
  129. package/dist/lib/curation/mark.js.map +1 -0
  130. package/dist/lib/curation/text.d.ts +6 -0
  131. package/dist/lib/curation/text.d.ts.map +1 -0
  132. package/dist/lib/curation/text.js +35 -0
  133. package/dist/lib/curation/text.js.map +1 -0
  134. package/dist/lib/fetchers/capture.d.ts +49 -2
  135. package/dist/lib/fetchers/capture.d.ts.map +1 -1
  136. package/dist/lib/fetchers/capture.js +7 -1
  137. package/dist/lib/fetchers/capture.js.map +1 -1
  138. package/dist/lib/fetchers/confluence.d.ts +2 -2
  139. package/dist/lib/fetchers/confluence.d.ts.map +1 -1
  140. package/dist/lib/fetchers/confluence.js.map +1 -1
  141. package/dist/lib/fetchers/git.d.ts +1 -0
  142. package/dist/lib/fetchers/git.d.ts.map +1 -1
  143. package/dist/lib/fetchers/git.js +3 -1
  144. package/dist/lib/fetchers/git.js.map +1 -1
  145. package/dist/lib/fetchers/github.d.ts +44 -5
  146. package/dist/lib/fetchers/github.d.ts.map +1 -1
  147. package/dist/lib/fetchers/github.js +122 -5
  148. package/dist/lib/fetchers/github.js.map +1 -1
  149. package/dist/lib/fetchers/gitlab.d.ts +2 -2
  150. package/dist/lib/fetchers/gitlab.d.ts.map +1 -1
  151. package/dist/lib/fetchers/gitlab.js.map +1 -1
  152. package/dist/lib/fetchers/jira.d.ts +2 -2
  153. package/dist/lib/fetchers/jira.d.ts.map +1 -1
  154. package/dist/lib/fetchers/jira.js.map +1 -1
  155. package/dist/lib/fetchers/linear.d.ts +2 -2
  156. package/dist/lib/fetchers/linear.d.ts.map +1 -1
  157. package/dist/lib/fetchers/linear.js.map +1 -1
  158. package/dist/lib/fetchers/notion.d.ts +2 -2
  159. package/dist/lib/fetchers/notion.d.ts.map +1 -1
  160. package/dist/lib/fetchers/notion.js.map +1 -1
  161. package/dist/lib/fetchers/slack.d.ts +2 -3
  162. package/dist/lib/fetchers/slack.d.ts.map +1 -1
  163. package/dist/lib/fetchers/slack.js.map +1 -1
  164. package/dist/lib/fetchers/teams.d.ts +2 -2
  165. package/dist/lib/fetchers/teams.d.ts.map +1 -1
  166. package/dist/lib/fetchers/teams.js.map +1 -1
  167. package/dist/lib/fetchers/zoom.d.ts +2 -2
  168. package/dist/lib/fetchers/zoom.d.ts.map +1 -1
  169. package/dist/lib/fetchers/zoom.js.map +1 -1
  170. package/dist/lib/gateway-client.d.ts +34 -0
  171. package/dist/lib/gateway-client.d.ts.map +1 -1
  172. package/dist/lib/gateway-client.js +19 -1
  173. package/dist/lib/gateway-client.js.map +1 -1
  174. package/dist/lib/github-text.d.ts +3 -0
  175. package/dist/lib/github-text.d.ts.map +1 -0
  176. package/dist/lib/github-text.js +18 -0
  177. package/dist/lib/github-text.js.map +1 -0
  178. package/dist/lib/hook-context.d.ts +10 -0
  179. package/dist/lib/hook-context.d.ts.map +1 -1
  180. package/dist/lib/hook-context.js +14 -0
  181. package/dist/lib/hook-context.js.map +1 -1
  182. package/dist/lib/import-defaults.d.ts +39 -23
  183. package/dist/lib/import-defaults.d.ts.map +1 -1
  184. package/dist/lib/import-defaults.js +28 -26
  185. package/dist/lib/import-defaults.js.map +1 -1
  186. package/dist/lib/launch/adapters/aider.d.ts +17 -0
  187. package/dist/lib/launch/adapters/aider.d.ts.map +1 -0
  188. package/dist/lib/launch/adapters/aider.js +30 -0
  189. package/dist/lib/launch/adapters/aider.js.map +1 -0
  190. package/dist/lib/launch/adapters/auggie.d.ts +18 -0
  191. package/dist/lib/launch/adapters/auggie.d.ts.map +1 -0
  192. package/dist/lib/launch/adapters/auggie.js +34 -0
  193. package/dist/lib/launch/adapters/auggie.js.map +1 -0
  194. package/dist/lib/launch/adapters/cline.d.ts +10 -0
  195. package/dist/lib/launch/adapters/cline.d.ts.map +1 -0
  196. package/dist/lib/launch/adapters/cline.js +41 -0
  197. package/dist/lib/launch/adapters/cline.js.map +1 -0
  198. package/dist/lib/launch/adapters/continue.d.ts +22 -0
  199. package/dist/lib/launch/adapters/continue.d.ts.map +1 -0
  200. package/dist/lib/launch/adapters/continue.js +46 -0
  201. package/dist/lib/launch/adapters/continue.js.map +1 -0
  202. package/dist/lib/launch/adapters/gemini-cli.d.ts +13 -14
  203. package/dist/lib/launch/adapters/gemini-cli.d.ts.map +1 -1
  204. package/dist/lib/launch/adapters/gemini-cli.js +38 -53
  205. package/dist/lib/launch/adapters/gemini-cli.js.map +1 -1
  206. package/dist/lib/launch/adapters/goose.d.ts +20 -0
  207. package/dist/lib/launch/adapters/goose.d.ts.map +1 -0
  208. package/dist/lib/launch/adapters/goose.js +47 -0
  209. package/dist/lib/launch/adapters/goose.js.map +1 -0
  210. package/dist/lib/launch/adapters/notes.d.ts +7 -0
  211. package/dist/lib/launch/adapters/notes.d.ts.map +1 -0
  212. package/dist/lib/launch/adapters/notes.js +5 -0
  213. package/dist/lib/launch/adapters/notes.js.map +1 -0
  214. package/dist/lib/launch/agents.d.ts +2 -0
  215. package/dist/lib/launch/agents.d.ts.map +1 -1
  216. package/dist/lib/launch/agents.js +3 -1
  217. package/dist/lib/launch/agents.js.map +1 -1
  218. package/dist/lib/launch/auggie-state.d.ts +25 -0
  219. package/dist/lib/launch/auggie-state.d.ts.map +1 -0
  220. package/dist/lib/launch/auggie-state.js +74 -0
  221. package/dist/lib/launch/auggie-state.js.map +1 -0
  222. package/dist/lib/launch/cline-state.d.ts +32 -0
  223. package/dist/lib/launch/cline-state.d.ts.map +1 -0
  224. package/dist/lib/launch/cline-state.js +108 -0
  225. package/dist/lib/launch/cline-state.js.map +1 -0
  226. package/dist/lib/launch/config-writes.d.ts +4 -0
  227. package/dist/lib/launch/config-writes.d.ts.map +1 -1
  228. package/dist/lib/launch/config-writes.js +8 -3
  229. package/dist/lib/launch/config-writes.js.map +1 -1
  230. package/dist/lib/launch/continue-state.d.ts +41 -0
  231. package/dist/lib/launch/continue-state.d.ts.map +1 -0
  232. package/dist/lib/launch/continue-state.js +142 -0
  233. package/dist/lib/launch/continue-state.js.map +1 -0
  234. package/dist/lib/launch/detect.d.ts.map +1 -1
  235. package/dist/lib/launch/detect.js +3 -1
  236. package/dist/lib/launch/detect.js.map +1 -1
  237. package/dist/lib/launch/gemini-state.d.ts +26 -20
  238. package/dist/lib/launch/gemini-state.d.ts.map +1 -1
  239. package/dist/lib/launch/gemini-state.js +95 -37
  240. package/dist/lib/launch/gemini-state.js.map +1 -1
  241. package/dist/lib/launch/gemini-system-file.d.ts +17 -0
  242. package/dist/lib/launch/gemini-system-file.d.ts.map +1 -0
  243. package/dist/lib/launch/gemini-system-file.js +55 -0
  244. package/dist/lib/launch/gemini-system-file.js.map +1 -0
  245. package/dist/lib/launch/gemini-trust.d.ts +3 -1
  246. package/dist/lib/launch/gemini-trust.d.ts.map +1 -1
  247. package/dist/lib/launch/gemini-trust.js +10 -3
  248. package/dist/lib/launch/gemini-trust.js.map +1 -1
  249. package/dist/lib/launch/goose-state.d.ts +53 -0
  250. package/dist/lib/launch/goose-state.d.ts.map +1 -0
  251. package/dist/lib/launch/goose-state.js +137 -0
  252. package/dist/lib/launch/goose-state.js.map +1 -0
  253. package/dist/lib/launch/launch-files.d.ts.map +1 -1
  254. package/dist/lib/launch/launch-files.js +3 -2
  255. package/dist/lib/launch/launch-files.js.map +1 -1
  256. package/dist/lib/launch/launch.d.ts +17 -2
  257. package/dist/lib/launch/launch.d.ts.map +1 -1
  258. package/dist/lib/launch/launch.js +36 -3
  259. package/dist/lib/launch/launch.js.map +1 -1
  260. package/dist/lib/launch/mcp-child-env.d.ts +30 -0
  261. package/dist/lib/launch/mcp-child-env.d.ts.map +1 -0
  262. package/dist/lib/launch/mcp-child-env.js +151 -0
  263. package/dist/lib/launch/mcp-child-env.js.map +1 -0
  264. package/dist/lib/launch/pick-agent.d.ts.map +1 -1
  265. package/dist/lib/launch/pick-agent.js +4 -4
  266. package/dist/lib/launch/pick-agent.js.map +1 -1
  267. package/dist/lib/launch/picker-options.d.ts.map +1 -1
  268. package/dist/lib/launch/picker-options.js +7 -2
  269. package/dist/lib/launch/picker-options.js.map +1 -1
  270. package/dist/lib/launch/registry/agents/aider.d.ts +3 -0
  271. package/dist/lib/launch/registry/agents/aider.d.ts.map +1 -0
  272. package/dist/lib/launch/registry/agents/aider.js +13 -0
  273. package/dist/lib/launch/registry/agents/aider.js.map +1 -0
  274. package/dist/lib/launch/registry/agents/auggie.d.ts +3 -0
  275. package/dist/lib/launch/registry/agents/auggie.d.ts.map +1 -0
  276. package/dist/lib/launch/registry/agents/auggie.js +11 -0
  277. package/dist/lib/launch/registry/agents/auggie.js.map +1 -0
  278. package/dist/lib/launch/registry/agents/cline.d.ts +3 -0
  279. package/dist/lib/launch/registry/agents/cline.d.ts.map +1 -0
  280. package/dist/lib/launch/registry/agents/cline.js +19 -0
  281. package/dist/lib/launch/registry/agents/cline.js.map +1 -0
  282. package/dist/lib/launch/registry/agents/continue.d.ts +3 -0
  283. package/dist/lib/launch/registry/agents/continue.d.ts.map +1 -0
  284. package/dist/lib/launch/registry/agents/continue.js +20 -0
  285. package/dist/lib/launch/registry/agents/continue.js.map +1 -0
  286. package/dist/lib/launch/registry/agents/gemini-cli.js +2 -2
  287. package/dist/lib/launch/registry/agents/gemini-cli.js.map +1 -1
  288. package/dist/lib/launch/registry/agents/goose.d.ts +3 -0
  289. package/dist/lib/launch/registry/agents/goose.d.ts.map +1 -0
  290. package/dist/lib/launch/registry/agents/goose.js +20 -0
  291. package/dist/lib/launch/registry/agents/goose.js.map +1 -0
  292. package/dist/lib/launch/registry/index.d.ts +1 -1
  293. package/dist/lib/launch/registry/index.d.ts.map +1 -1
  294. package/dist/lib/launch/registry/index.js +7 -2
  295. package/dist/lib/launch/registry/index.js.map +1 -1
  296. package/dist/lib/launch/registry/types.d.ts +12 -1
  297. package/dist/lib/launch/registry/types.d.ts.map +1 -1
  298. package/dist/lib/launch/strict-entry.d.ts +22 -2
  299. package/dist/lib/launch/strict-entry.d.ts.map +1 -1
  300. package/dist/lib/launch/strict-entry.js +80 -2
  301. package/dist/lib/launch/strict-entry.js.map +1 -1
  302. package/dist/lib/launch/yaml-scan.d.ts +59 -0
  303. package/dist/lib/launch/yaml-scan.d.ts.map +1 -0
  304. package/dist/lib/launch/yaml-scan.js +275 -0
  305. package/dist/lib/launch/yaml-scan.js.map +1 -0
  306. package/dist/lib/local-db-epoch.d.ts +4 -0
  307. package/dist/lib/local-db-epoch.d.ts.map +1 -0
  308. package/dist/lib/local-db-epoch.js +19 -0
  309. package/dist/lib/local-db-epoch.js.map +1 -0
  310. package/dist/lib/local-db-migrate.d.ts +85 -0
  311. package/dist/lib/local-db-migrate.d.ts.map +1 -0
  312. package/dist/lib/local-db-migrate.js +484 -0
  313. package/dist/lib/local-db-migrate.js.map +1 -0
  314. package/dist/lib/local-db-v10.d.ts +28 -0
  315. package/dist/lib/local-db-v10.d.ts.map +1 -0
  316. package/dist/lib/local-db-v10.js +49 -0
  317. package/dist/lib/local-db-v10.js.map +1 -0
  318. package/dist/lib/local-db-v11.d.ts +24 -0
  319. package/dist/lib/local-db-v11.d.ts.map +1 -0
  320. package/dist/lib/local-db-v11.js +25 -0
  321. package/dist/lib/local-db-v11.js.map +1 -0
  322. package/dist/lib/local-db-v7.d.ts +30 -0
  323. package/dist/lib/local-db-v7.d.ts.map +1 -0
  324. package/dist/lib/local-db-v7.js +285 -0
  325. package/dist/lib/local-db-v7.js.map +1 -0
  326. package/dist/lib/local-db-v8.d.ts +22 -0
  327. package/dist/lib/local-db-v8.d.ts.map +1 -0
  328. package/dist/lib/local-db-v8.js +33 -0
  329. package/dist/lib/local-db-v8.js.map +1 -0
  330. package/dist/lib/local-db-v9.d.ts +10 -0
  331. package/dist/lib/local-db-v9.d.ts.map +1 -0
  332. package/dist/lib/local-db-v9.js +8 -0
  333. package/dist/lib/local-db-v9.js.map +1 -0
  334. package/dist/lib/local-db.d.ts +61 -11
  335. package/dist/lib/local-db.d.ts.map +1 -1
  336. package/dist/lib/local-db.js +186 -371
  337. package/dist/lib/local-db.js.map +1 -1
  338. package/dist/lib/local-embeddings.d.ts.map +1 -1
  339. package/dist/lib/local-embeddings.js +2 -2
  340. package/dist/lib/local-embeddings.js.map +1 -1
  341. package/dist/lib/local-gateway-client.d.ts +30 -87
  342. package/dist/lib/local-gateway-client.d.ts.map +1 -1
  343. package/dist/lib/local-gateway-client.js +182 -171
  344. package/dist/lib/local-gateway-client.js.map +1 -1
  345. package/dist/lib/local-ingest.d.ts +129 -0
  346. package/dist/lib/local-ingest.d.ts.map +1 -0
  347. package/dist/lib/local-ingest.js +81 -0
  348. package/dist/lib/local-ingest.js.map +1 -0
  349. package/dist/lib/local-link-pass.d.ts +15 -0
  350. package/dist/lib/local-link-pass.d.ts.map +1 -0
  351. package/dist/lib/local-link-pass.js +61 -0
  352. package/dist/lib/local-link-pass.js.map +1 -0
  353. package/dist/lib/local-mode.d.ts +4 -1
  354. package/dist/lib/local-mode.d.ts.map +1 -1
  355. package/dist/lib/local-mode.js +16 -1
  356. package/dist/lib/local-mode.js.map +1 -1
  357. package/dist/lib/local-provenance.d.ts +14 -0
  358. package/dist/lib/local-provenance.d.ts.map +1 -0
  359. package/dist/lib/local-provenance.js +14 -0
  360. package/dist/lib/local-provenance.js.map +1 -0
  361. package/dist/lib/local-thresholds.d.ts +70 -0
  362. package/dist/lib/local-thresholds.d.ts.map +1 -0
  363. package/dist/lib/local-thresholds.js +79 -0
  364. package/dist/lib/local-thresholds.js.map +1 -0
  365. package/dist/lib/mcp/mark-tool.d.ts +27 -0
  366. package/dist/lib/mcp/mark-tool.d.ts.map +1 -0
  367. package/dist/lib/mcp/mark-tool.js +103 -0
  368. package/dist/lib/mcp/mark-tool.js.map +1 -0
  369. package/dist/lib/mcp/share-tool.d.ts +46 -0
  370. package/dist/lib/mcp/share-tool.d.ts.map +1 -0
  371. package/dist/lib/mcp/share-tool.js +68 -0
  372. package/dist/lib/mcp/share-tool.js.map +1 -0
  373. package/dist/lib/mcp/tool-rules.d.ts +30 -0
  374. package/dist/lib/mcp/tool-rules.d.ts.map +1 -0
  375. package/dist/lib/mcp/tool-rules.js +84 -0
  376. package/dist/lib/mcp/tool-rules.js.map +1 -0
  377. package/dist/lib/mcp-backfill.d.ts +89 -0
  378. package/dist/lib/mcp-backfill.d.ts.map +1 -0
  379. package/dist/lib/mcp-backfill.js +194 -0
  380. package/dist/lib/mcp-backfill.js.map +1 -0
  381. package/dist/lib/mcp-scope.d.ts +90 -0
  382. package/dist/lib/mcp-scope.d.ts.map +1 -0
  383. package/dist/lib/mcp-scope.js +125 -0
  384. package/dist/lib/mcp-scope.js.map +1 -0
  385. package/dist/lib/mcp-sync.d.ts +64 -0
  386. package/dist/lib/mcp-sync.d.ts.map +1 -0
  387. package/dist/lib/mcp-sync.js +183 -0
  388. package/dist/lib/mcp-sync.js.map +1 -0
  389. package/dist/lib/personal-import.d.ts +7 -0
  390. package/dist/lib/personal-import.d.ts.map +1 -1
  391. package/dist/lib/personal-import.js +13 -1
  392. package/dist/lib/personal-import.js.map +1 -1
  393. package/dist/lib/safe-config-write.d.ts.map +1 -1
  394. package/dist/lib/safe-config-write.js +39 -2
  395. package/dist/lib/safe-config-write.js.map +1 -1
  396. package/dist/lib/scope-choices.d.ts +51 -0
  397. package/dist/lib/scope-choices.d.ts.map +1 -0
  398. package/dist/lib/scope-choices.js +193 -0
  399. package/dist/lib/scope-choices.js.map +1 -0
  400. package/dist/lib/scope-connect.d.ts +82 -0
  401. package/dist/lib/scope-connect.d.ts.map +1 -0
  402. package/dist/lib/scope-connect.js +258 -0
  403. package/dist/lib/scope-connect.js.map +1 -0
  404. package/dist/lib/scope-defaults.d.ts +3 -0
  405. package/dist/lib/scope-defaults.d.ts.map +1 -0
  406. package/dist/lib/scope-defaults.js +42 -0
  407. package/dist/lib/scope-defaults.js.map +1 -0
  408. package/dist/lib/scope-real.d.ts +223 -0
  409. package/dist/lib/scope-real.d.ts.map +1 -0
  410. package/dist/lib/scope-real.js +58 -0
  411. package/dist/lib/scope-real.js.map +1 -0
  412. package/dist/lib/scope-values.d.ts +76 -0
  413. package/dist/lib/scope-values.d.ts.map +1 -0
  414. package/dist/lib/scope-values.js +169 -0
  415. package/dist/lib/scope-values.js.map +1 -0
  416. package/dist/lib/scope.d.ts +161 -0
  417. package/dist/lib/scope.d.ts.map +1 -0
  418. package/dist/lib/scope.js +323 -0
  419. package/dist/lib/scope.js.map +1 -0
  420. package/dist/lib/share/command.d.ts +32 -0
  421. package/dist/lib/share/command.d.ts.map +1 -0
  422. package/dist/lib/share/command.js +136 -0
  423. package/dist/lib/share/command.js.map +1 -0
  424. package/dist/lib/share/ledger.d.ts +59 -0
  425. package/dist/lib/share/ledger.d.ts.map +1 -0
  426. package/dist/lib/share/ledger.js +135 -0
  427. package/dist/lib/share/ledger.js.map +1 -0
  428. package/dist/lib/share/payload.d.ts +92 -0
  429. package/dist/lib/share/payload.d.ts.map +1 -0
  430. package/dist/lib/share/payload.js +138 -0
  431. package/dist/lib/share/payload.js.map +1 -0
  432. package/dist/lib/share/pending.d.ts +48 -0
  433. package/dist/lib/share/pending.d.ts.map +1 -0
  434. package/dist/lib/share/pending.js +130 -0
  435. package/dist/lib/share/pending.js.map +1 -0
  436. package/dist/lib/share/preview.d.ts +18 -0
  437. package/dist/lib/share/preview.d.ts.map +1 -0
  438. package/dist/lib/share/preview.js +72 -0
  439. package/dist/lib/share/preview.js.map +1 -0
  440. package/dist/lib/share/run.d.ts +115 -0
  441. package/dist/lib/share/run.d.ts.map +1 -0
  442. package/dist/lib/share/run.js +261 -0
  443. package/dist/lib/share/run.js.map +1 -0
  444. package/dist/lib/share/salt.d.ts +2 -0
  445. package/dist/lib/share/salt.d.ts.map +1 -0
  446. package/dist/lib/share/salt.js +44 -0
  447. package/dist/lib/share/salt.js.map +1 -0
  448. package/dist/lib/share/secret-patterns.json +100 -0
  449. package/dist/lib/share/secret-scan.d.ts +19 -0
  450. package/dist/lib/share/secret-scan.d.ts.map +1 -0
  451. package/dist/lib/share/secret-scan.js +75 -0
  452. package/dist/lib/share/secret-scan.js.map +1 -0
  453. package/dist/lib/share/tty.d.ts +4 -0
  454. package/dist/lib/share/tty.d.ts.map +1 -0
  455. package/dist/lib/share/tty.js +57 -0
  456. package/dist/lib/share/tty.js.map +1 -0
  457. package/dist/lib/share/visible.d.ts +4 -0
  458. package/dist/lib/share/visible.d.ts.map +1 -0
  459. package/dist/lib/share/visible.js +30 -0
  460. package/dist/lib/share/visible.js.map +1 -0
  461. package/dist/lib/share/wire.d.ts +98 -0
  462. package/dist/lib/share/wire.d.ts.map +1 -0
  463. package/dist/lib/share/wire.js +43 -0
  464. package/dist/lib/share/wire.js.map +1 -0
  465. package/dist/lib/similarity/embedding-matrix.d.ts +64 -0
  466. package/dist/lib/similarity/embedding-matrix.d.ts.map +1 -0
  467. package/dist/lib/similarity/embedding-matrix.js +119 -0
  468. package/dist/lib/similarity/embedding-matrix.js.map +1 -0
  469. package/dist/lib/since-flag.d.ts +11 -0
  470. package/dist/lib/since-flag.d.ts.map +1 -0
  471. package/dist/lib/since-flag.js +24 -0
  472. package/dist/lib/since-flag.js.map +1 -0
  473. package/dist/lib/since.d.ts +59 -0
  474. package/dist/lib/since.d.ts.map +1 -0
  475. package/dist/lib/since.js +86 -0
  476. package/dist/lib/since.js.map +1 -0
  477. package/dist/lib/source-key.d.ts +13 -0
  478. package/dist/lib/source-key.d.ts.map +1 -0
  479. package/dist/lib/source-key.js +60 -0
  480. package/dist/lib/source-key.js.map +1 -0
  481. package/dist/lib/source-sync-state.d.ts +12 -0
  482. package/dist/lib/source-sync-state.d.ts.map +1 -0
  483. package/dist/lib/source-sync-state.js +43 -0
  484. package/dist/lib/source-sync-state.js.map +1 -0
  485. package/dist/lib/startup-backfill-track.d.ts +2 -0
  486. package/dist/lib/startup-backfill-track.d.ts.map +1 -0
  487. package/dist/lib/startup-backfill-track.js +6 -0
  488. package/dist/lib/startup-backfill-track.js.map +1 -0
  489. package/dist/lib/startup-xdg.d.ts +2 -0
  490. package/dist/lib/startup-xdg.d.ts.map +1 -0
  491. package/dist/lib/startup-xdg.js +9 -0
  492. package/dist/lib/startup-xdg.js.map +1 -0
  493. package/dist/lib/sync/after-connect.d.ts +2 -0
  494. package/dist/lib/sync/after-connect.d.ts.map +1 -0
  495. package/dist/lib/sync/after-connect.js +18 -0
  496. package/dist/lib/sync/after-connect.js.map +1 -0
  497. package/dist/lib/sync/bg-claim.d.ts +14 -0
  498. package/dist/lib/sync/bg-claim.d.ts.map +1 -0
  499. package/dist/lib/sync/bg-claim.js +97 -0
  500. package/dist/lib/sync/bg-claim.js.map +1 -0
  501. package/dist/lib/sync/blocked.d.ts +8 -0
  502. package/dist/lib/sync/blocked.d.ts.map +1 -0
  503. package/dist/lib/sync/blocked.js +44 -0
  504. package/dist/lib/sync/blocked.js.map +1 -0
  505. package/dist/lib/sync/classify.d.ts +34 -0
  506. package/dist/lib/sync/classify.d.ts.map +1 -0
  507. package/dist/lib/sync/classify.js +91 -0
  508. package/dist/lib/sync/classify.js.map +1 -0
  509. package/dist/lib/sync/drain.d.ts +16 -0
  510. package/dist/lib/sync/drain.d.ts.map +1 -0
  511. package/dist/lib/sync/drain.js +33 -0
  512. package/dist/lib/sync/drain.js.map +1 -0
  513. package/dist/lib/sync/forget.d.ts +12 -0
  514. package/dist/lib/sync/forget.d.ts.map +1 -0
  515. package/dist/lib/sync/forget.js +32 -0
  516. package/dist/lib/sync/forget.js.map +1 -0
  517. package/dist/lib/sync/launch-hook.d.ts +42 -0
  518. package/dist/lib/sync/launch-hook.d.ts.map +1 -0
  519. package/dist/lib/sync/launch-hook.js +117 -0
  520. package/dist/lib/sync/launch-hook.js.map +1 -0
  521. package/dist/lib/sync/lock.d.ts +35 -0
  522. package/dist/lib/sync/lock.d.ts.map +1 -0
  523. package/dist/lib/sync/lock.js +175 -0
  524. package/dist/lib/sync/lock.js.map +1 -0
  525. package/dist/lib/sync/purge.d.ts +38 -0
  526. package/dist/lib/sync/purge.d.ts.map +1 -0
  527. package/dist/lib/sync/purge.js +61 -0
  528. package/dist/lib/sync/purge.js.map +1 -0
  529. package/dist/lib/sync/real-env.d.ts +208 -0
  530. package/dist/lib/sync/real-env.d.ts.map +1 -0
  531. package/dist/lib/sync/real-env.js +47 -0
  532. package/dist/lib/sync/real-env.js.map +1 -0
  533. package/dist/lib/sync/relink.d.ts +14 -0
  534. package/dist/lib/sync/relink.d.ts.map +1 -0
  535. package/dist/lib/sync/relink.js +36 -0
  536. package/dist/lib/sync/relink.js.map +1 -0
  537. package/dist/lib/sync/report.d.ts +3 -0
  538. package/dist/lib/sync/report.d.ts.map +1 -0
  539. package/dist/lib/sync/report.js +54 -0
  540. package/dist/lib/sync/report.js.map +1 -0
  541. package/dist/lib/sync/run-all.d.ts +23 -0
  542. package/dist/lib/sync/run-all.d.ts.map +1 -0
  543. package/dist/lib/sync/run-all.js +30 -0
  544. package/dist/lib/sync/run-all.js.map +1 -0
  545. package/dist/lib/sync/run-source.d.ts +73 -0
  546. package/dist/lib/sync/run-source.d.ts.map +1 -0
  547. package/dist/lib/sync/run-source.js +262 -0
  548. package/dist/lib/sync/run-source.js.map +1 -0
  549. package/dist/lib/sync/safe-read.d.ts +4 -0
  550. package/dist/lib/sync/safe-read.d.ts.map +1 -0
  551. package/dist/lib/sync/safe-read.js +40 -0
  552. package/dist/lib/sync/safe-read.js.map +1 -0
  553. package/dist/lib/sync/should-background-sync.d.ts +31 -0
  554. package/dist/lib/sync/should-background-sync.d.ts.map +1 -0
  555. package/dist/lib/sync/should-background-sync.js +69 -0
  556. package/dist/lib/sync/should-background-sync.js.map +1 -0
  557. package/dist/lib/sync/source-ids.d.ts +10 -0
  558. package/dist/lib/sync/source-ids.d.ts.map +1 -0
  559. package/dist/lib/sync/source-ids.js +9 -0
  560. package/dist/lib/sync/source-ids.js.map +1 -0
  561. package/dist/lib/sync/sources.d.ts +33 -0
  562. package/dist/lib/sync/sources.d.ts.map +1 -0
  563. package/dist/lib/sync/sources.js +37 -0
  564. package/dist/lib/sync/sources.js.map +1 -0
  565. package/dist/lib/sync/spawn-background.d.ts +27 -0
  566. package/dist/lib/sync/spawn-background.d.ts.map +1 -0
  567. package/dist/lib/sync/spawn-background.js +66 -0
  568. package/dist/lib/sync/spawn-background.js.map +1 -0
  569. package/dist/lib/sync/status.d.ts +57 -0
  570. package/dist/lib/sync/status.d.ts.map +1 -0
  571. package/dist/lib/sync/status.js +166 -0
  572. package/dist/lib/sync/status.js.map +1 -0
  573. package/dist/lib/sync/summary-read.d.ts +19 -0
  574. package/dist/lib/sync/summary-read.d.ts.map +1 -0
  575. package/dist/lib/sync/summary-read.js +39 -0
  576. package/dist/lib/sync/summary-read.js.map +1 -0
  577. package/dist/lib/sync/summary.d.ts +10 -0
  578. package/dist/lib/sync/summary.d.ts.map +1 -0
  579. package/dist/lib/sync/summary.js +80 -0
  580. package/dist/lib/sync/summary.js.map +1 -0
  581. package/dist/lib/sync/sync-state.d.ts +128 -0
  582. package/dist/lib/sync/sync-state.d.ts.map +1 -0
  583. package/dist/lib/sync/sync-state.js +253 -0
  584. package/dist/lib/sync/sync-state.js.map +1 -0
  585. package/dist/lib/sync/telemetry.d.ts +20 -0
  586. package/dist/lib/sync/telemetry.d.ts.map +1 -0
  587. package/dist/lib/sync/telemetry.js +31 -0
  588. package/dist/lib/sync/telemetry.js.map +1 -0
  589. package/dist/lib/sync/threads.d.ts +48 -0
  590. package/dist/lib/sync/threads.d.ts.map +1 -0
  591. package/dist/lib/sync/threads.js +82 -0
  592. package/dist/lib/sync/threads.js.map +1 -0
  593. package/dist/lib/sync/window.d.ts +72 -0
  594. package/dist/lib/sync/window.d.ts.map +1 -0
  595. package/dist/lib/sync/window.js +112 -0
  596. package/dist/lib/sync/window.js.map +1 -0
  597. package/dist/lib/team-cta.d.ts +11 -0
  598. package/dist/lib/team-cta.d.ts.map +1 -0
  599. package/dist/lib/team-cta.js +16 -0
  600. package/dist/lib/team-cta.js.map +1 -0
  601. package/dist/lib/telemetry-ci.d.ts +2 -0
  602. package/dist/lib/telemetry-ci.d.ts.map +1 -0
  603. package/dist/lib/telemetry-ci.js +21 -0
  604. package/dist/lib/telemetry-ci.js.map +1 -0
  605. package/dist/lib/telemetry-consent.d.ts +44 -23
  606. package/dist/lib/telemetry-consent.d.ts.map +1 -1
  607. package/dist/lib/telemetry-consent.js +74 -35
  608. package/dist/lib/telemetry-consent.js.map +1 -1
  609. package/dist/lib/telemetry-env.d.ts +1 -1
  610. package/dist/lib/usage-telemetry.d.ts +87 -22
  611. package/dist/lib/usage-telemetry.d.ts.map +1 -1
  612. package/dist/lib/usage-telemetry.js +263 -74
  613. package/dist/lib/usage-telemetry.js.map +1 -1
  614. package/dist/lib/xdg.d.ts +27 -0
  615. package/dist/lib/xdg.d.ts.map +1 -0
  616. package/dist/lib/xdg.js +56 -0
  617. package/dist/lib/xdg.js.map +1 -0
  618. package/package.json +3 -2
  619. package/dist/commands/push.d.ts +0 -25
  620. package/dist/commands/push.d.ts.map +0 -1
  621. package/dist/commands/push.js +0 -98
  622. package/dist/commands/push.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-connect.js","sourceRoot":"","sources":["../../src/lib/scope-connect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** Project or team prefixes cited by tracker-shaped refs, most-cited decisions first, then by name; at most ten. */
2
+ export declare function citedProjectKeys(dbPath: string): string[];
3
+ //# sourceMappingURL=scope-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-defaults.d.ts","sourceRoot":"","sources":["../../src/lib/scope-defaults.ts"],"names":[],"mappings":"AAYA,oHAAoH;AACpH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAyBzD"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * L4: what to preselect when a person picks a Jira project or a Linear team: the ticket prefixes their own decisions already
3
+ * cite (`decision_refs`, ALI-792). A suggestion only - the picker shows it, and a non-interactive run uses it as the plan says
4
+ * (Decision 7) - so it is cheap, local and never an error: no graph, no refs table or no refs all give an empty list.
5
+ */
6
+ import fs from 'node:fs';
7
+ import { DatabaseSync } from 'node:sqlite';
8
+ const MAX_SUGGESTED = 10;
9
+ const TICKET = /(?:^|\/)([A-Z][A-Z0-9_]+)-\d+$/;
10
+ const codeUnit = (a, b) => (a < b ? -1 : a > b ? 1 : 0);
11
+ /** Project or team prefixes cited by tracker-shaped refs, most-cited decisions first, then by name; at most ten. */
12
+ export function citedProjectKeys(dbPath) {
13
+ // A reader must never create the graph it was asked to look at: opening a missing path makes an empty file.
14
+ if (!fs.existsSync(dbPath))
15
+ return [];
16
+ let rows;
17
+ const db = new DatabaseSync(dbPath, { readOnly: true });
18
+ try {
19
+ db.exec('PRAGMA busy_timeout = 30000');
20
+ rows = db.prepare(`SELECT decision_id, ref FROM decision_refs WHERE platform IN ('jira', 'tracker')`).all();
21
+ }
22
+ catch {
23
+ return []; // an older file with no refs table
24
+ }
25
+ finally {
26
+ db.close();
27
+ }
28
+ const citedBy = new Map();
29
+ for (const r of rows) {
30
+ const key = TICKET.exec(r.ref)?.[1];
31
+ if (key === undefined)
32
+ continue;
33
+ const set = citedBy.get(key) ?? new Set();
34
+ set.add(r.decision_id);
35
+ citedBy.set(key, set);
36
+ }
37
+ return [...citedBy.entries()]
38
+ .sort(([ak, as], [bk, bs]) => bs.size - as.size || codeUnit(ak, bk))
39
+ .slice(0, MAX_SUGGESTED)
40
+ .map(([key]) => key);
41
+ }
42
+ //# sourceMappingURL=scope-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-defaults.js","sourceRoot":"","sources":["../../src/lib/scope-defaults.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,MAAM,GAAG,gCAAgC,CAAC;AAChD,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhF,oHAAoH;AACpH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,4GAA4G;IAC5G,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,IAAI,IAAiD,CAAC;IACtD,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACvC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC,GAAG,EAAiB,CAAC;IAC7H,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,mCAAmC;IAChD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,GAAG,KAAK,SAAS;YAAE,SAAS;QAChC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SAC1B,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SACnE,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;SACvB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,223 @@
1
+ /**
2
+ * L4: the production wiring of `ScopeDeps`: the real config store (local environment), the real folder, the real `fetch`.
3
+ * Kept apart from scope.ts so that file stays a function of its injected world. The GitHub fetcher is imported lazily, only when a folder is read.
4
+ */
5
+ import { createConfigStore } from './config.js';
6
+ import { type ScopeDeps, type ScopeStore } from './scope.js';
7
+ import { type ActiveScope } from './scope-values.js';
8
+ /** `group/project` from `gitlab.com/group/project`. Self-managed hosts are not detected: name them with `--project`. */
9
+ export declare function gitlabPlaceOf(identity: string | null): string | undefined;
10
+ export declare function configScopeStore(config?: {
11
+ getEnvironment(env: import("./config.js").EnvName): import("./config.js").EnvironmentConfig;
12
+ setAuthToken(env: import("./config.js").EnvName, token: string): void;
13
+ setTenantId(env: import("./config.js").EnvName, tenantId: string): void;
14
+ setNgrokUrl(url: string): void;
15
+ setDefaultEnv(env: import("./config.js").EnvName): void;
16
+ getDefaultEnv(): import("./config.js").EnvName;
17
+ getConnectorToken(env: import("./config.js").EnvName, connectorKey: string): string | null;
18
+ setConnectorToken(env: import("./config.js").EnvName, connectorKey: string, token: string): void;
19
+ getConnectorFields(env: import("./config.js").EnvName, connectorKey: string): Record<string, string> | null;
20
+ saveConnectorFields(env: import("./config.js").EnvName, connectorKey: string, fields: Record<string, string>): void;
21
+ forgetConnector(env: import("./config.js").EnvName, connectorKey: string): void;
22
+ forgetAllConnectors(env: import("./config.js").EnvName): void;
23
+ getConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string): string | null;
24
+ setConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string, cloudId: string): void;
25
+ getConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string): string | null;
26
+ setConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string, siteBase: string): void;
27
+ getConnectorScope(env: import("./config.js").EnvName, connectorKey: string): import("./scope-values.js").StoredScope | null;
28
+ setConnectorScope(env: import("./config.js").EnvName, connectorKey: string, scope: import("./scope-values.js").StoredScope): void;
29
+ clearConnectorScope(env: import("./config.js").EnvName, connectorKey: string): void;
30
+ clearTeamScopeDisclosed(source: string): void;
31
+ getTeamScopeDisclosedFor(): string[];
32
+ isTeamScopeDisclosed(source: string, scopeKey: string): boolean;
33
+ markTeamScopeDisclosed(source: string, scopeKey: string): void;
34
+ setLocalMode(dbPath: string): void;
35
+ clearLocalMode(): void;
36
+ clear(env: import("./config.js").EnvName): void;
37
+ getInstallId(): string;
38
+ getAgent(): string | undefined;
39
+ setAgent(agent: string): void;
40
+ isLaunchOff(): boolean;
41
+ setLaunchOff(off: boolean): void;
42
+ clearAgent(): void;
43
+ isBackgroundSyncOff(): boolean;
44
+ setBackgroundSyncOff(off: boolean): void;
45
+ backgroundSyncNoticeShown(): boolean;
46
+ markBackgroundSyncNoticeShown(at: string): void;
47
+ getReauthLineShownAt(): string | undefined;
48
+ markReauthLineShown(at: string): void;
49
+ getWrittenConfigs(): Record<string, import("./safe-config-write.js").WrittenConfig>;
50
+ recordWrittenConfig(file: string, entry: import("./safe-config-write.js").WrittenConfig): void;
51
+ dropWrittenConfigs(files: string[]): void;
52
+ wasWriteRefused(file: string): boolean;
53
+ unmarkWriteRefused(file: string): void;
54
+ clearRefusedWrites(): void;
55
+ markWriteRefused(file: string): void;
56
+ getTelemetryConsent(): import("./config.js").TelemetryConsent | undefined;
57
+ setTelemetryConsent(value: import("./config.js").TelemetryConsent): void;
58
+ setTelemetryOffByEnv(via: string, now?: Date): void;
59
+ getTelemetryOffByEnv(): {
60
+ via: string;
61
+ at: string;
62
+ } | undefined;
63
+ getTelemetryNoticeShownAt(): string | undefined;
64
+ markTelemetryNoticeShown(): void;
65
+ getProviderKey(provider: import("./config.js").GuidedProviderKey): string | null;
66
+ setProviderKey(provider: import("./config.js").GuidedProviderKey, key: string): void;
67
+ clearProviderKey(provider: import("./config.js").GuidedProviderKey): void;
68
+ getLlmPreference(): import("./config.js").LlmPreference;
69
+ setLlmPreference(pref: import("./config.js").LlmPreference): void;
70
+ clearLlmPreference(): void;
71
+ isAskKeyOfferDismissed(): boolean;
72
+ setAskKeyOfferDismissed(dismissed: boolean): void;
73
+ wasFunnelStageRecorded(stage: string): boolean;
74
+ claimFunnelStage(stage: string): boolean;
75
+ releaseFunnelStage(stage: string): boolean;
76
+ markFunnelStageRecorded(stage: string): void;
77
+ }): ScopeStore;
78
+ /** The stored choice IN FORCE for a source (a waiting agent choice is not), or null when nothing was chosen. For callers outside the scope code. */
79
+ export declare function activeStoredScope(source: string, config?: {
80
+ getEnvironment(env: import("./config.js").EnvName): import("./config.js").EnvironmentConfig;
81
+ setAuthToken(env: import("./config.js").EnvName, token: string): void;
82
+ setTenantId(env: import("./config.js").EnvName, tenantId: string): void;
83
+ setNgrokUrl(url: string): void;
84
+ setDefaultEnv(env: import("./config.js").EnvName): void;
85
+ getDefaultEnv(): import("./config.js").EnvName;
86
+ getConnectorToken(env: import("./config.js").EnvName, connectorKey: string): string | null;
87
+ setConnectorToken(env: import("./config.js").EnvName, connectorKey: string, token: string): void;
88
+ getConnectorFields(env: import("./config.js").EnvName, connectorKey: string): Record<string, string> | null;
89
+ saveConnectorFields(env: import("./config.js").EnvName, connectorKey: string, fields: Record<string, string>): void;
90
+ forgetConnector(env: import("./config.js").EnvName, connectorKey: string): void;
91
+ forgetAllConnectors(env: import("./config.js").EnvName): void;
92
+ getConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string): string | null;
93
+ setConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string, cloudId: string): void;
94
+ getConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string): string | null;
95
+ setConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string, siteBase: string): void;
96
+ getConnectorScope(env: import("./config.js").EnvName, connectorKey: string): import("./scope-values.js").StoredScope | null;
97
+ setConnectorScope(env: import("./config.js").EnvName, connectorKey: string, scope: import("./scope-values.js").StoredScope): void;
98
+ clearConnectorScope(env: import("./config.js").EnvName, connectorKey: string): void;
99
+ clearTeamScopeDisclosed(source: string): void;
100
+ getTeamScopeDisclosedFor(): string[];
101
+ isTeamScopeDisclosed(source: string, scopeKey: string): boolean;
102
+ markTeamScopeDisclosed(source: string, scopeKey: string): void;
103
+ setLocalMode(dbPath: string): void;
104
+ clearLocalMode(): void;
105
+ clear(env: import("./config.js").EnvName): void;
106
+ getInstallId(): string;
107
+ getAgent(): string | undefined;
108
+ setAgent(agent: string): void;
109
+ isLaunchOff(): boolean;
110
+ setLaunchOff(off: boolean): void;
111
+ clearAgent(): void;
112
+ isBackgroundSyncOff(): boolean;
113
+ setBackgroundSyncOff(off: boolean): void;
114
+ backgroundSyncNoticeShown(): boolean;
115
+ markBackgroundSyncNoticeShown(at: string): void;
116
+ getReauthLineShownAt(): string | undefined;
117
+ markReauthLineShown(at: string): void;
118
+ getWrittenConfigs(): Record<string, import("./safe-config-write.js").WrittenConfig>;
119
+ recordWrittenConfig(file: string, entry: import("./safe-config-write.js").WrittenConfig): void;
120
+ dropWrittenConfigs(files: string[]): void;
121
+ wasWriteRefused(file: string): boolean;
122
+ unmarkWriteRefused(file: string): void;
123
+ clearRefusedWrites(): void;
124
+ markWriteRefused(file: string): void;
125
+ getTelemetryConsent(): import("./config.js").TelemetryConsent | undefined;
126
+ setTelemetryConsent(value: import("./config.js").TelemetryConsent): void;
127
+ setTelemetryOffByEnv(via: string, now?: Date): void;
128
+ getTelemetryOffByEnv(): {
129
+ via: string;
130
+ at: string;
131
+ } | undefined;
132
+ getTelemetryNoticeShownAt(): string | undefined;
133
+ markTelemetryNoticeShown(): void;
134
+ getProviderKey(provider: import("./config.js").GuidedProviderKey): string | null;
135
+ setProviderKey(provider: import("./config.js").GuidedProviderKey, key: string): void;
136
+ clearProviderKey(provider: import("./config.js").GuidedProviderKey): void;
137
+ getLlmPreference(): import("./config.js").LlmPreference;
138
+ setLlmPreference(pref: import("./config.js").LlmPreference): void;
139
+ clearLlmPreference(): void;
140
+ isAskKeyOfferDismissed(): boolean;
141
+ setAskKeyOfferDismissed(dismissed: boolean): void;
142
+ wasFunnelStageRecorded(stage: string): boolean;
143
+ claimFunnelStage(stage: string): boolean;
144
+ releaseFunnelStage(stage: string): boolean;
145
+ markFunnelStageRecorded(stage: string): void;
146
+ }): ActiveScope | null;
147
+ /** What the sync status needs to know about the scope in force, from the stored choice. An unchosen source answers undefined (the most recently started row is used). */
148
+ export declare function scopeStatusHooks(config?: {
149
+ getEnvironment(env: import("./config.js").EnvName): import("./config.js").EnvironmentConfig;
150
+ setAuthToken(env: import("./config.js").EnvName, token: string): void;
151
+ setTenantId(env: import("./config.js").EnvName, tenantId: string): void;
152
+ setNgrokUrl(url: string): void;
153
+ setDefaultEnv(env: import("./config.js").EnvName): void;
154
+ getDefaultEnv(): import("./config.js").EnvName;
155
+ getConnectorToken(env: import("./config.js").EnvName, connectorKey: string): string | null;
156
+ setConnectorToken(env: import("./config.js").EnvName, connectorKey: string, token: string): void;
157
+ getConnectorFields(env: import("./config.js").EnvName, connectorKey: string): Record<string, string> | null;
158
+ saveConnectorFields(env: import("./config.js").EnvName, connectorKey: string, fields: Record<string, string>): void;
159
+ forgetConnector(env: import("./config.js").EnvName, connectorKey: string): void;
160
+ forgetAllConnectors(env: import("./config.js").EnvName): void;
161
+ getConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string): string | null;
162
+ setConnectorCloudId(env: import("./config.js").EnvName, connectorKey: string, cloudId: string): void;
163
+ getConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string): string | null;
164
+ setConnectorSiteBase(env: import("./config.js").EnvName, connectorKey: string, siteBase: string): void;
165
+ getConnectorScope(env: import("./config.js").EnvName, connectorKey: string): import("./scope-values.js").StoredScope | null;
166
+ setConnectorScope(env: import("./config.js").EnvName, connectorKey: string, scope: import("./scope-values.js").StoredScope): void;
167
+ clearConnectorScope(env: import("./config.js").EnvName, connectorKey: string): void;
168
+ clearTeamScopeDisclosed(source: string): void;
169
+ getTeamScopeDisclosedFor(): string[];
170
+ isTeamScopeDisclosed(source: string, scopeKey: string): boolean;
171
+ markTeamScopeDisclosed(source: string, scopeKey: string): void;
172
+ setLocalMode(dbPath: string): void;
173
+ clearLocalMode(): void;
174
+ clear(env: import("./config.js").EnvName): void;
175
+ getInstallId(): string;
176
+ getAgent(): string | undefined;
177
+ setAgent(agent: string): void;
178
+ isLaunchOff(): boolean;
179
+ setLaunchOff(off: boolean): void;
180
+ clearAgent(): void;
181
+ isBackgroundSyncOff(): boolean;
182
+ setBackgroundSyncOff(off: boolean): void;
183
+ backgroundSyncNoticeShown(): boolean;
184
+ markBackgroundSyncNoticeShown(at: string): void;
185
+ getReauthLineShownAt(): string | undefined;
186
+ markReauthLineShown(at: string): void;
187
+ getWrittenConfigs(): Record<string, import("./safe-config-write.js").WrittenConfig>;
188
+ recordWrittenConfig(file: string, entry: import("./safe-config-write.js").WrittenConfig): void;
189
+ dropWrittenConfigs(files: string[]): void;
190
+ wasWriteRefused(file: string): boolean;
191
+ unmarkWriteRefused(file: string): void;
192
+ clearRefusedWrites(): void;
193
+ markWriteRefused(file: string): void;
194
+ getTelemetryConsent(): import("./config.js").TelemetryConsent | undefined;
195
+ setTelemetryConsent(value: import("./config.js").TelemetryConsent): void;
196
+ setTelemetryOffByEnv(via: string, now?: Date): void;
197
+ getTelemetryOffByEnv(): {
198
+ via: string;
199
+ at: string;
200
+ } | undefined;
201
+ getTelemetryNoticeShownAt(): string | undefined;
202
+ markTelemetryNoticeShown(): void;
203
+ getProviderKey(provider: import("./config.js").GuidedProviderKey): string | null;
204
+ setProviderKey(provider: import("./config.js").GuidedProviderKey, key: string): void;
205
+ clearProviderKey(provider: import("./config.js").GuidedProviderKey): void;
206
+ getLlmPreference(): import("./config.js").LlmPreference;
207
+ setLlmPreference(pref: import("./config.js").LlmPreference): void;
208
+ clearLlmPreference(): void;
209
+ isAskKeyOfferDismissed(): boolean;
210
+ setAskKeyOfferDismissed(dismissed: boolean): void;
211
+ wasFunnelStageRecorded(stage: string): boolean;
212
+ claimFunnelStage(stage: string): boolean;
213
+ releaseFunnelStage(stage: string): boolean;
214
+ markFunnelStageRecorded(stage: string): void;
215
+ }): {
216
+ activeScopeKey(id: string): string | undefined;
217
+ pendingScope(id: string): string | undefined;
218
+ blockedScope(id: string): string | undefined;
219
+ };
220
+ export declare function realScopeDeps(dbPath: string | undefined, o?: {
221
+ config?: ReturnType<typeof createConfigStore>;
222
+ }): ScopeDeps;
223
+ //# sourceMappingURL=scope-real.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-real.d.ts","sourceRoot":"","sources":["../../src/lib/scope-real.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAA2B,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,KAAK,WAAW,EAAmD,MAAM,mBAAmB,CAAC;AAEtG,wHAAwH;AACxH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAEzE;AAED,wBAAgB,gBAAgB,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,GAAG,UAAU,CAUzE;AAED,oJAAoJ;AACpJ,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,GAAG,WAAW,GAAG,IAAI,CAGlG;AAED,yKAAyK;AACzK,wBAAgB,gBAAgB,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,GAAG;IAAE,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,CAgB7M;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;CAAO,GAAG,SAAS,CAW9H"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * L4: the production wiring of `ScopeDeps`: the real config store (local environment), the real folder, the real `fetch`.
3
+ * Kept apart from scope.ts so that file stays a function of its injected world. The GitHub fetcher is imported lazily, only when a folder is read.
4
+ */
5
+ import { createConfigStore } from './config.js';
6
+ import { currentRepoIdentity } from './repo-identity.js';
7
+ import { CONFLUENCE_NEEDS_SPACES } from './scope.js';
8
+ import { describeScopeKey, scopeKeyOf } from './scope-values.js';
9
+ /** `group/project` from `gitlab.com/group/project`. Self-managed hosts are not detected: name them with `--project`. */
10
+ export function gitlabPlaceOf(identity) {
11
+ return identity?.startsWith('gitlab.com/') ? identity.slice('gitlab.com/'.length) : undefined;
12
+ }
13
+ export function configScopeStore(config = createConfigStore()) {
14
+ return {
15
+ getScope: (source) => config.getConnectorScope('local', source),
16
+ saveScope: (source, scope) => config.setConnectorScope('local', source, scope),
17
+ clearScope: (source) => config.clearConnectorScope('local', source),
18
+ fields: (source) => config.getConnectorFields('local', source),
19
+ isDisclosed: (source, scopeKey) => config.isTeamScopeDisclosed(source, scopeKey),
20
+ markDisclosed: (source, scopeKey) => config.markTeamScopeDisclosed(source, scopeKey),
21
+ clearDisclosed: (source) => config.clearTeamScopeDisclosed(source),
22
+ };
23
+ }
24
+ /** The stored choice IN FORCE for a source (a waiting agent choice is not), or null when nothing was chosen. For callers outside the scope code. */
25
+ export function activeStoredScope(source, config = createConfigStore()) {
26
+ const s = configScopeStore(config).getScope(source);
27
+ return s?.kind === 'team' && s.pending ? s.pending.previous : s;
28
+ }
29
+ /** What the sync status needs to know about the scope in force, from the stored choice. An unchosen source answers undefined (the most recently started row is used). */
30
+ export function scopeStatusHooks(config = createConfigStore()) {
31
+ const store = configScopeStore(config);
32
+ const key = (source, s) => s === null ? undefined : s.kind === 'yours' ? 'yours' : scopeKeyOf(source, s.labels);
33
+ return {
34
+ activeScopeKey: (id) => {
35
+ const s = store.getScope(id);
36
+ // A waiting choice is never in force. With nothing before it the default applies, whose key is `yours`.
37
+ return s?.kind === 'team' && s.pending ? key(id, s.pending.previous) ?? 'yours' : key(id, s);
38
+ },
39
+ blockedScope: (id) => (id === 'confluence' && activeStoredScope(id, config)?.kind !== 'team' ? CONFLUENCE_NEEDS_SPACES : undefined),
40
+ pendingScope: (id) => {
41
+ const s = store.getScope(id);
42
+ return s?.kind === 'team' && s.pending ? describeScopeKey(id, scopeKeyOf(id, s.labels), 'team') : undefined;
43
+ },
44
+ };
45
+ }
46
+ export function realScopeDeps(dbPath, o = {}) {
47
+ return {
48
+ store: configScopeStore(o.config),
49
+ dbPath,
50
+ now: () => new Date(),
51
+ isTty: () => Boolean(process.stdin.isTTY && process.stdout.isTTY),
52
+ // ALI-917's own folder detection, so GitHub has one reader of "which repo am I in" (it is imported lazily: a connector-core fetcher).
53
+ cwdRepo: async () => (await import('./fetchers/github.js')).resolveGitHubRepoScope({}),
54
+ cwdGitlabProject: async () => gitlabPlaceOf(await currentRepoIdentity()),
55
+ fetch: (url, init) => fetch(url, init),
56
+ };
57
+ }
58
+ //# sourceMappingURL=scope-real.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-real.js","sourceRoot":"","sources":["../../src/lib/scope-real.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * L4: what a source's scope is made of - the non-secret values a person can name (a repo, project keys, team keys, a
3
+ * GitLab project, space keys), how each is checked, the canonical key it is stored under in `source_sync`, and the
4
+ * words that describe it. Pure: no config, no database, no network. scope.ts decides which scope is in force; this
5
+ * file only says what a valid one looks like.
6
+ *
7
+ * A refused value is never printed back. A scope value is typed into a flag or passed by an agent, and a token
8
+ * pasted into the wrong field must not ride along into an error transcript.
9
+ */
10
+ /** The sources that can read a NAMED team scope. Everything else reads a fixed scope (FIXED_SCOPES). */
11
+ export declare const SCOPED_SOURCES: readonly ["github", "jira", "linear", "gitlab", "confluence"];
12
+ export type ScopedSource = (typeof SCOPED_SOURCES)[number];
13
+ /** The option each fetcher takes for a team scope (connector-core 0.10.0). GitHub's is `repo` + `scope`, set elsewhere. */
14
+ export interface ScopeFetchOpts {
15
+ projects?: string[];
16
+ teams?: string[];
17
+ projectId?: string;
18
+ spaces?: string[];
19
+ }
20
+ export declare class ScopeValueError extends Error {
21
+ constructor(message: string);
22
+ }
23
+ export declare const YOURS_KEY = "yours";
24
+ /** What a person chose for one source, kept beside its token (non-secret). Absent means "no choice": the narrower scope. */
25
+ export type ActiveScope = {
26
+ kind: 'yours';
27
+ }
28
+ /** `values` are what the fetcher takes (Linear: team ids); `labels` are what people read (Linear: team keys). */
29
+ | {
30
+ kind: 'team';
31
+ values: string[];
32
+ labels: string[];
33
+ };
34
+ /**
35
+ * `pending` marks a team scope an AGENT chose (align_scope via MCP): nothing reads it in the background, or for an agent running
36
+ * `align sync`, until a person at a terminal has been shown the disclosure. `previous` is what stays in force until then (null: nothing
37
+ * was chosen before, so the source's default applies).
38
+ */
39
+ export type StoredScope = {
40
+ kind: 'yours';
41
+ } | {
42
+ kind: 'team';
43
+ values: string[];
44
+ labels: string[];
45
+ pending?: {
46
+ previous: ActiveScope | null;
47
+ };
48
+ };
49
+ /** The valid, canonical values for one source (sorted by code unit, deduplicated). Throws a ScopeValueError that never contains the input. */
50
+ export declare function normaliseScopeValues(source: ScopedSource, raw: unknown): string[];
51
+ /** The `source_sync.scope_key` for a choice. GitHub keeps the `repo:` shape L5 already writes. */
52
+ export declare function scopeKeyOf(source: ScopedSource, labels: string[]): string;
53
+ /** A choice in words: "o/r", "Jira projects ALI, OPS". */
54
+ export declare function scopeLabel(source: ScopedSource, labels: string[]): string;
55
+ /** The place a stored team-scope key names, in words: "o/r", "Jira projects ALI, OPS". An unknown key shape is shown as it is: never a guess. */
56
+ export declare function labelOfScopeKey(source: string, scopeKey: string): string;
57
+ /** A stored `source_sync` row in words, for status. */
58
+ export declare function describeScopeKey(source: string, scopeKey: string, scope: 'yours' | 'team'): string;
59
+ /** What to hand each fetcher for a team scope. GitHub's repo travels as `repo`, not here. */
60
+ export declare function fetchOptsFor(source: ScopedSource, values: string[]): ScopeFetchOpts;
61
+ /** The plain-words line shown once per source before the first team read (plan, Phase L4). */
62
+ export declare function disclosureText(source: ScopedSource, labels: string[]): string;
63
+ /**
64
+ * Say the team-scope disclosure the FIRST time a (source, scope) is read as team, then remember it was said. For the readers that do not go
65
+ * through scope.ts (the per-source `align connect <source>` commands). Returns whether it spoke.
66
+ */
67
+ export declare function discloseTeamScope(store: {
68
+ isTeamScopeDisclosed(source: string, scopeKey: string): boolean;
69
+ markTeamScopeDisclosed(source: string, scopeKey: string): void;
70
+ }, source: ScopedSource, labels: string[], say: (line: string) => void): boolean;
71
+ /** Sources with no named scope to pick. Slack, Notion and Teams already read all the token can see; Zoom cannot read more. */
72
+ export declare const FIXED_SCOPES: Record<string, {
73
+ scope: 'yours' | 'team';
74
+ text: string;
75
+ }>;
76
+ //# sourceMappingURL=scope-values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-values.d.ts","sourceRoot":"","sources":["../../src/lib/scope-values.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wGAAwG;AACxG,eAAO,MAAM,cAAc,+DAAgE,CAAC;AAC5F,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,2HAA2H;AAC3H,MAAM,WAAW,cAAc;IAAG,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE;AAEhH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC,4HAA4H;AAC5H,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE;AACnB,iHAAiH;GAC/G;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AACzD;;;;GAIG;AACH,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,CAAA;CAAE,CAAC;AA4BrG,8IAA8I;AAC9I,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CA6CjF;AAED,kGAAkG;AAClG,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAGzE;AAID,0DAA0D;AAC1D,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CASzE;AAED,iJAAiJ;AACjJ,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQxE;AAED,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAElG;AAED,6FAA6F;AAC7F,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAQnF;AAED,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAE7E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE;IAAE,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAC,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAC1I,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAClE,OAAO,CAMT;AAED,8HAA8H;AAC9H,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAKlF,CAAC"}
@@ -0,0 +1,169 @@
1
+ /**
2
+ * L4: what a source's scope is made of - the non-secret values a person can name (a repo, project keys, team keys, a
3
+ * GitLab project, space keys), how each is checked, the canonical key it is stored under in `source_sync`, and the
4
+ * words that describe it. Pure: no config, no database, no network. scope.ts decides which scope is in force; this
5
+ * file only says what a valid one looks like.
6
+ *
7
+ * A refused value is never printed back. A scope value is typed into a flag or passed by an agent, and a token
8
+ * pasted into the wrong field must not ride along into an error transcript.
9
+ */
10
+ /** The sources that can read a NAMED team scope. Everything else reads a fixed scope (FIXED_SCOPES). */
11
+ export const SCOPED_SOURCES = ['github', 'jira', 'linear', 'gitlab', 'confluence'];
12
+ export class ScopeValueError extends Error {
13
+ constructor(message) {
14
+ super(message);
15
+ this.name = 'ScopeValueError';
16
+ }
17
+ }
18
+ export const YOURS_KEY = 'yours';
19
+ const MAX_VALUES = 20;
20
+ const GITHUB_REPO = /^[A-Za-z0-9_.-]{1,100}\/[A-Za-z0-9_.-]{1,100}$/;
21
+ const JIRA_KEY = /^[A-Z][A-Z0-9_]{1,19}$/;
22
+ const LINEAR_KEY = /^[A-Z][A-Z0-9]{0,9}$/;
23
+ const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
24
+ const GITLAB_ID = /^\d{1,12}$/;
25
+ const GITLAB_PATH = /^[A-Za-z0-9_.-]{1,100}(?:\/[A-Za-z0-9_.-]{1,100})+$/;
26
+ const CONFLUENCE_SPACE = /^~?[A-Za-z0-9_.-]{1,32}$/;
27
+ /** A segment that is only dots (`.`, `..`) would walk out of the path it is placed in. */
28
+ const dotsOnly = (segments) => segments.some((s) => /^\.+$/.test(s));
29
+ const codeUnit = (a, b) => (a < b ? -1 : a > b ? 1 : 0);
30
+ function listOf(raw) {
31
+ const parts = typeof raw === 'string' ? raw.split(/[\s,]+/) : Array.isArray(raw) ? raw : undefined;
32
+ if (parts === undefined)
33
+ throw new ScopeValueError('A scope value must be text.');
34
+ const out = [];
35
+ for (const p of parts) {
36
+ if (typeof p !== 'string')
37
+ throw new ScopeValueError('A scope value must be text.');
38
+ // Array items may themselves hold a comma list ("ALI,OPS").
39
+ for (const piece of p.split(/[\s,]+/))
40
+ if (piece !== '')
41
+ out.push(piece);
42
+ }
43
+ return out;
44
+ }
45
+ /** The valid, canonical values for one source (sorted by code unit, deduplicated). Throws a ScopeValueError that never contains the input. */
46
+ export function normaliseScopeValues(source, raw) {
47
+ const given = listOf(raw);
48
+ if (given.length === 0)
49
+ throw new ScopeValueError('Name at least one value.');
50
+ if (given.length > MAX_VALUES * 3)
51
+ throw new ScopeValueError(`Name at most ${MAX_VALUES} values.`);
52
+ let values;
53
+ switch (source) {
54
+ case 'github': {
55
+ const unique = [...new Set(given)];
56
+ if (unique.length > 1)
57
+ throw new ScopeValueError('A GitHub scope is one repo, written owner/repo.');
58
+ if (!GITHUB_REPO.test(unique[0]) || dotsOnly(unique[0].split('/')))
59
+ throw new ScopeValueError('A GitHub repo is written owner/repo, for example aligndottech/align-stack.');
60
+ values = unique;
61
+ break;
62
+ }
63
+ case 'jira':
64
+ values = given.map((v) => {
65
+ const key = v.toUpperCase();
66
+ if (!JIRA_KEY.test(key))
67
+ throw new ScopeValueError('A Jira project key is capital letters and digits, 2 to 20 characters, for example ALI.');
68
+ return key;
69
+ });
70
+ break;
71
+ case 'linear':
72
+ values = given.map((v) => {
73
+ if (UUID.test(v.toLowerCase()))
74
+ return v.toLowerCase();
75
+ const key = v.toUpperCase();
76
+ if (!LINEAR_KEY.test(key))
77
+ throw new ScopeValueError('A Linear team is its key (capital letters and digits, for example ENG) or its id.');
78
+ return key;
79
+ });
80
+ break;
81
+ case 'gitlab': {
82
+ const unique = [...new Set(given)];
83
+ if (unique.length > 1)
84
+ throw new ScopeValueError('A GitLab scope is one project: its numeric id or its group/project path.');
85
+ if (!GITLAB_ID.test(unique[0]) && (!GITLAB_PATH.test(unique[0]) || dotsOnly(unique[0].split('/'))))
86
+ throw new ScopeValueError('A GitLab project is its numeric id or its group/project path.');
87
+ values = unique;
88
+ break;
89
+ }
90
+ case 'confluence':
91
+ values = given.map((v) => {
92
+ if (!CONFLUENCE_SPACE.test(v))
93
+ throw new ScopeValueError('A Confluence space key is letters and digits, up to 32 characters (a personal space starts with ~).');
94
+ return v;
95
+ });
96
+ break;
97
+ }
98
+ const unique = [...new Set(values)].sort(codeUnit);
99
+ if (unique.length > MAX_VALUES)
100
+ throw new ScopeValueError(`Name at most ${MAX_VALUES} values.`);
101
+ return unique;
102
+ }
103
+ /** The `source_sync.scope_key` for a choice. GitHub keeps the `repo:` shape L5 already writes. */
104
+ export function scopeKeyOf(source, labels) {
105
+ const sorted = [...labels].sort(codeUnit);
106
+ return source === 'github' ? `repo:${sorted[0]}` : `${source}:${sorted.join(',')}`;
107
+ }
108
+ const plural = (n, one, many) => (n === 1 ? one : many);
109
+ /** A choice in words: "o/r", "Jira projects ALI, OPS". */
110
+ export function scopeLabel(source, labels) {
111
+ const list = [...labels].sort(codeUnit).join(', ');
112
+ switch (source) {
113
+ case 'github': return list;
114
+ case 'jira': return `${plural(labels.length, 'Jira project', 'Jira projects')} ${list}`;
115
+ case 'linear': return `${plural(labels.length, 'Linear team', 'Linear teams')} ${list}`;
116
+ case 'gitlab': return `the GitLab project ${list}`;
117
+ case 'confluence': return `${plural(labels.length, 'Confluence space', 'Confluence spaces')} ${list}`;
118
+ }
119
+ }
120
+ /** The place a stored team-scope key names, in words: "o/r", "Jira projects ALI, OPS". An unknown key shape is shown as it is: never a guess. */
121
+ export function labelOfScopeKey(source, scopeKey) {
122
+ if (scopeKey.startsWith('repo:'))
123
+ return scopeKey.slice('repo:'.length);
124
+ const prefix = `${source}:`;
125
+ if (SCOPED_SOURCES.includes(source) && source !== 'github' && scopeKey.startsWith(prefix)) {
126
+ const labels = scopeKey.slice(prefix.length).split(',').filter((l) => l !== '');
127
+ if (labels.length > 0)
128
+ return scopeLabel(source, labels);
129
+ }
130
+ return scopeKey;
131
+ }
132
+ /** A stored `source_sync` row in words, for status. */
133
+ export function describeScopeKey(source, scopeKey, scope) {
134
+ return scope === 'yours' ? 'your own items' : `everyone's items in ${labelOfScopeKey(source, scopeKey)}`;
135
+ }
136
+ /** What to hand each fetcher for a team scope. GitHub's repo travels as `repo`, not here. */
137
+ export function fetchOptsFor(source, values) {
138
+ switch (source) {
139
+ case 'jira': return { projects: values };
140
+ case 'linear': return { teams: values };
141
+ case 'gitlab': return { projectId: values[0] };
142
+ case 'confluence': return { spaces: values };
143
+ case 'github': return {};
144
+ }
145
+ }
146
+ /** The plain-words line shown once per source before the first team read (plan, Phase L4). */
147
+ export function disclosureText(source, labels) {
148
+ return `Importing items from everyone in ${scopeLabel(source, labels)} that your token can read. They stay on this machine. To read only your own: align connect --source ${source} --scope yours`;
149
+ }
150
+ /**
151
+ * Say the team-scope disclosure the FIRST time a (source, scope) is read as team, then remember it was said. For the readers that do not go
152
+ * through scope.ts (the per-source `align connect <source>` commands). Returns whether it spoke.
153
+ */
154
+ export function discloseTeamScope(store, source, labels, say) {
155
+ const key = scopeKeyOf(source, labels);
156
+ if (store.isTeamScopeDisclosed(source, key))
157
+ return false;
158
+ say(disclosureText(source, labels));
159
+ store.markTeamScopeDisclosed(source, key);
160
+ return true;
161
+ }
162
+ /** Sources with no named scope to pick. Slack, Notion and Teams already read all the token can see; Zoom cannot read more. */
163
+ export const FIXED_SCOPES = {
164
+ slack: { scope: 'team', text: "everyone's threads in the channels your token is in" },
165
+ notion: { scope: 'team', text: 'every page shared with your integration' },
166
+ teams: { scope: 'team', text: 'all channels in the teams you have joined' },
167
+ zoom: { scope: 'yours', text: 'only your own cloud recordings. Reading the whole account needs an account admin token, which Align does not ask for' },
168
+ };
169
+ //# sourceMappingURL=scope-values.js.map