@enbox/gitd 0.0.1

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 (502) hide show
  1. package/LICENSE +177 -0
  2. package/README.md +134 -0
  3. package/dist/esm/ci.js +76 -0
  4. package/dist/esm/ci.js.map +1 -0
  5. package/dist/esm/cli/agent.js +86 -0
  6. package/dist/esm/cli/agent.js.map +1 -0
  7. package/dist/esm/cli/commands/ci.js +278 -0
  8. package/dist/esm/cli/commands/ci.js.map +1 -0
  9. package/dist/esm/cli/commands/clone.js +77 -0
  10. package/dist/esm/cli/commands/clone.js.map +1 -0
  11. package/dist/esm/cli/commands/daemon.js +132 -0
  12. package/dist/esm/cli/commands/daemon.js.map +1 -0
  13. package/dist/esm/cli/commands/github-api.js +36 -0
  14. package/dist/esm/cli/commands/github-api.js.map +1 -0
  15. package/dist/esm/cli/commands/init.js +69 -0
  16. package/dist/esm/cli/commands/init.js.map +1 -0
  17. package/dist/esm/cli/commands/issue.js +293 -0
  18. package/dist/esm/cli/commands/issue.js.map +1 -0
  19. package/dist/esm/cli/commands/log.js +90 -0
  20. package/dist/esm/cli/commands/log.js.map +1 -0
  21. package/dist/esm/cli/commands/migrate.js +444 -0
  22. package/dist/esm/cli/commands/migrate.js.map +1 -0
  23. package/dist/esm/cli/commands/notification.js +141 -0
  24. package/dist/esm/cli/commands/notification.js.map +1 -0
  25. package/dist/esm/cli/commands/org.js +353 -0
  26. package/dist/esm/cli/commands/org.js.map +1 -0
  27. package/dist/esm/cli/commands/patch.js +375 -0
  28. package/dist/esm/cli/commands/patch.js.map +1 -0
  29. package/dist/esm/cli/commands/registry.js +501 -0
  30. package/dist/esm/cli/commands/registry.js.map +1 -0
  31. package/dist/esm/cli/commands/release.js +197 -0
  32. package/dist/esm/cli/commands/release.js.map +1 -0
  33. package/dist/esm/cli/commands/repo.js +148 -0
  34. package/dist/esm/cli/commands/repo.js.map +1 -0
  35. package/dist/esm/cli/commands/serve.js +148 -0
  36. package/dist/esm/cli/commands/serve.js.map +1 -0
  37. package/dist/esm/cli/commands/setup.js +92 -0
  38. package/dist/esm/cli/commands/setup.js.map +1 -0
  39. package/dist/esm/cli/commands/shim.js +75 -0
  40. package/dist/esm/cli/commands/shim.js.map +1 -0
  41. package/dist/esm/cli/commands/social.js +206 -0
  42. package/dist/esm/cli/commands/social.js.map +1 -0
  43. package/dist/esm/cli/commands/web.js +36 -0
  44. package/dist/esm/cli/commands/web.js.map +1 -0
  45. package/dist/esm/cli/commands/wiki.js +185 -0
  46. package/dist/esm/cli/commands/wiki.js.map +1 -0
  47. package/dist/esm/cli/flags.js +29 -0
  48. package/dist/esm/cli/flags.js.map +1 -0
  49. package/dist/esm/cli/main.js +331 -0
  50. package/dist/esm/cli/main.js.map +1 -0
  51. package/dist/esm/cli/repo-context.js +53 -0
  52. package/dist/esm/cli/repo-context.js.map +1 -0
  53. package/dist/esm/daemon/adapter.js +18 -0
  54. package/dist/esm/daemon/adapter.js.map +1 -0
  55. package/dist/esm/daemon/adapters/github.js +112 -0
  56. package/dist/esm/daemon/adapters/github.js.map +1 -0
  57. package/dist/esm/daemon/adapters/go.js +51 -0
  58. package/dist/esm/daemon/adapters/go.js.map +1 -0
  59. package/dist/esm/daemon/adapters/index.js +32 -0
  60. package/dist/esm/daemon/adapters/index.js.map +1 -0
  61. package/dist/esm/daemon/adapters/npm.js +51 -0
  62. package/dist/esm/daemon/adapters/npm.js.map +1 -0
  63. package/dist/esm/daemon/adapters/oci.js +62 -0
  64. package/dist/esm/daemon/adapters/oci.js.map +1 -0
  65. package/dist/esm/daemon/index.js +12 -0
  66. package/dist/esm/daemon/index.js.map +1 -0
  67. package/dist/esm/daemon/server.js +167 -0
  68. package/dist/esm/daemon/server.js.map +1 -0
  69. package/dist/esm/git-remote/credential-helper.js +106 -0
  70. package/dist/esm/git-remote/credential-helper.js.map +1 -0
  71. package/dist/esm/git-remote/credential-main.js +109 -0
  72. package/dist/esm/git-remote/credential-main.js.map +1 -0
  73. package/dist/esm/git-remote/index.js +10 -0
  74. package/dist/esm/git-remote/index.js.map +1 -0
  75. package/dist/esm/git-remote/main.js +78 -0
  76. package/dist/esm/git-remote/main.js.map +1 -0
  77. package/dist/esm/git-remote/parse-url.js +60 -0
  78. package/dist/esm/git-remote/parse-url.js.map +1 -0
  79. package/dist/esm/git-remote/resolve.js +175 -0
  80. package/dist/esm/git-remote/resolve.js.map +1 -0
  81. package/dist/esm/git-remote/service.js +82 -0
  82. package/dist/esm/git-remote/service.js.map +1 -0
  83. package/dist/esm/git-server/auth.js +211 -0
  84. package/dist/esm/git-server/auth.js.map +1 -0
  85. package/dist/esm/git-server/bundle-restore.js +180 -0
  86. package/dist/esm/git-server/bundle-restore.js.map +1 -0
  87. package/dist/esm/git-server/bundle-sync.js +233 -0
  88. package/dist/esm/git-server/bundle-sync.js.map +1 -0
  89. package/dist/esm/git-server/did-service.js +73 -0
  90. package/dist/esm/git-server/did-service.js.map +1 -0
  91. package/dist/esm/git-server/git-backend.js +186 -0
  92. package/dist/esm/git-server/git-backend.js.map +1 -0
  93. package/dist/esm/git-server/http-handler.js +295 -0
  94. package/dist/esm/git-server/http-handler.js.map +1 -0
  95. package/dist/esm/git-server/index.js +16 -0
  96. package/dist/esm/git-server/index.js.map +1 -0
  97. package/dist/esm/git-server/push-authorizer.js +62 -0
  98. package/dist/esm/git-server/push-authorizer.js.map +1 -0
  99. package/dist/esm/git-server/ref-sync.js +132 -0
  100. package/dist/esm/git-server/ref-sync.js.map +1 -0
  101. package/dist/esm/git-server/server.js +185 -0
  102. package/dist/esm/git-server/server.js.map +1 -0
  103. package/dist/esm/git-server/verify.js +109 -0
  104. package/dist/esm/git-server/verify.js.map +1 -0
  105. package/dist/esm/github-shim/helpers.js +273 -0
  106. package/dist/esm/github-shim/helpers.js.map +1 -0
  107. package/dist/esm/github-shim/index.js +13 -0
  108. package/dist/esm/github-shim/index.js.map +1 -0
  109. package/dist/esm/github-shim/issues.js +318 -0
  110. package/dist/esm/github-shim/issues.js.map +1 -0
  111. package/dist/esm/github-shim/pulls.js +423 -0
  112. package/dist/esm/github-shim/pulls.js.map +1 -0
  113. package/dist/esm/github-shim/releases.js +154 -0
  114. package/dist/esm/github-shim/releases.js.map +1 -0
  115. package/dist/esm/github-shim/repos.js +86 -0
  116. package/dist/esm/github-shim/repos.js.map +1 -0
  117. package/dist/esm/github-shim/server.js +351 -0
  118. package/dist/esm/github-shim/server.js.map +1 -0
  119. package/dist/esm/github-shim/users.js +61 -0
  120. package/dist/esm/github-shim/users.js.map +1 -0
  121. package/dist/esm/index.js +26 -0
  122. package/dist/esm/index.js.map +1 -0
  123. package/dist/esm/indexer/api.js +132 -0
  124. package/dist/esm/indexer/api.js.map +1 -0
  125. package/dist/esm/indexer/crawler.js +256 -0
  126. package/dist/esm/indexer/crawler.js.map +1 -0
  127. package/dist/esm/indexer/index.js +9 -0
  128. package/dist/esm/indexer/index.js.map +1 -0
  129. package/dist/esm/indexer/main.js +76 -0
  130. package/dist/esm/indexer/main.js.map +1 -0
  131. package/dist/esm/indexer/store.js +334 -0
  132. package/dist/esm/indexer/store.js.map +1 -0
  133. package/dist/esm/issues.js +133 -0
  134. package/dist/esm/issues.js.map +1 -0
  135. package/dist/esm/notifications.js +47 -0
  136. package/dist/esm/notifications.js.map +1 -0
  137. package/dist/esm/org.js +90 -0
  138. package/dist/esm/org.js.map +1 -0
  139. package/dist/esm/patches.js +136 -0
  140. package/dist/esm/patches.js.map +1 -0
  141. package/dist/esm/refs.js +54 -0
  142. package/dist/esm/refs.js.map +1 -0
  143. package/dist/esm/registry.js +81 -0
  144. package/dist/esm/registry.js.map +1 -0
  145. package/dist/esm/releases.js +78 -0
  146. package/dist/esm/releases.js.map +1 -0
  147. package/dist/esm/repo.js +150 -0
  148. package/dist/esm/repo.js.map +1 -0
  149. package/dist/esm/resolver/index.js +10 -0
  150. package/dist/esm/resolver/index.js.map +1 -0
  151. package/dist/esm/resolver/resolve.js +189 -0
  152. package/dist/esm/resolver/resolve.js.map +1 -0
  153. package/dist/esm/resolver/trust-chain.js +155 -0
  154. package/dist/esm/resolver/trust-chain.js.map +1 -0
  155. package/dist/esm/resolver/verify.js +186 -0
  156. package/dist/esm/resolver/verify.js.map +1 -0
  157. package/dist/esm/shims/go/index.js +9 -0
  158. package/dist/esm/shims/go/index.js.map +1 -0
  159. package/dist/esm/shims/go/proxy.js +275 -0
  160. package/dist/esm/shims/go/proxy.js.map +1 -0
  161. package/dist/esm/shims/go/server.js +70 -0
  162. package/dist/esm/shims/go/server.js.map +1 -0
  163. package/dist/esm/shims/index.js +15 -0
  164. package/dist/esm/shims/index.js.map +1 -0
  165. package/dist/esm/shims/npm/index.js +9 -0
  166. package/dist/esm/shims/npm/index.js.map +1 -0
  167. package/dist/esm/shims/npm/registry.js +234 -0
  168. package/dist/esm/shims/npm/registry.js.map +1 -0
  169. package/dist/esm/shims/npm/server.js +72 -0
  170. package/dist/esm/shims/npm/server.js.map +1 -0
  171. package/dist/esm/shims/oci/index.js +9 -0
  172. package/dist/esm/shims/oci/index.js.map +1 -0
  173. package/dist/esm/shims/oci/registry.js +276 -0
  174. package/dist/esm/shims/oci/registry.js.map +1 -0
  175. package/dist/esm/shims/oci/server.js +82 -0
  176. package/dist/esm/shims/oci/server.js.map +1 -0
  177. package/dist/esm/social.js +70 -0
  178. package/dist/esm/social.js.map +1 -0
  179. package/dist/esm/web/html.js +123 -0
  180. package/dist/esm/web/html.js.map +1 -0
  181. package/dist/esm/web/index.js +7 -0
  182. package/dist/esm/web/index.js.map +1 -0
  183. package/dist/esm/web/routes.js +420 -0
  184. package/dist/esm/web/routes.js.map +1 -0
  185. package/dist/esm/web/server.js +225 -0
  186. package/dist/esm/web/server.js.map +1 -0
  187. package/dist/esm/wiki.js +63 -0
  188. package/dist/esm/wiki.js.map +1 -0
  189. package/dist/types/ci.d.ts +203 -0
  190. package/dist/types/ci.d.ts.map +1 -0
  191. package/dist/types/cli/agent.d.ts +59 -0
  192. package/dist/types/cli/agent.d.ts.map +1 -0
  193. package/dist/types/cli/commands/ci.d.ts +16 -0
  194. package/dist/types/cli/commands/ci.d.ts.map +1 -0
  195. package/dist/types/cli/commands/clone.d.ts +13 -0
  196. package/dist/types/cli/commands/clone.d.ts.map +1 -0
  197. package/dist/types/cli/commands/daemon.d.ts +29 -0
  198. package/dist/types/cli/commands/daemon.d.ts.map +1 -0
  199. package/dist/types/cli/commands/github-api.d.ts +14 -0
  200. package/dist/types/cli/commands/github-api.d.ts.map +1 -0
  201. package/dist/types/cli/commands/init.d.ts +11 -0
  202. package/dist/types/cli/commands/init.d.ts.map +1 -0
  203. package/dist/types/cli/commands/issue.d.ts +16 -0
  204. package/dist/types/cli/commands/issue.d.ts.map +1 -0
  205. package/dist/types/cli/commands/log.d.ts +13 -0
  206. package/dist/types/cli/commands/log.d.ts.map +1 -0
  207. package/dist/types/cli/commands/migrate.d.ts +19 -0
  208. package/dist/types/cli/commands/migrate.d.ts.map +1 -0
  209. package/dist/types/cli/commands/notification.d.ts +16 -0
  210. package/dist/types/cli/commands/notification.d.ts.map +1 -0
  211. package/dist/types/cli/commands/org.d.ts +19 -0
  212. package/dist/types/cli/commands/org.d.ts.map +1 -0
  213. package/dist/types/cli/commands/patch.d.ts +17 -0
  214. package/dist/types/cli/commands/patch.d.ts.map +1 -0
  215. package/dist/types/cli/commands/registry.d.ts +25 -0
  216. package/dist/types/cli/commands/registry.d.ts.map +1 -0
  217. package/dist/types/cli/commands/release.d.ts +13 -0
  218. package/dist/types/cli/commands/release.d.ts.map +1 -0
  219. package/dist/types/cli/commands/repo.d.ts +15 -0
  220. package/dist/types/cli/commands/repo.d.ts.map +1 -0
  221. package/dist/types/cli/commands/serve.d.ts +22 -0
  222. package/dist/types/cli/commands/serve.d.ts.map +1 -0
  223. package/dist/types/cli/commands/setup.d.ts +16 -0
  224. package/dist/types/cli/commands/setup.d.ts.map +1 -0
  225. package/dist/types/cli/commands/shim.d.ts +16 -0
  226. package/dist/types/cli/commands/shim.d.ts.map +1 -0
  227. package/dist/types/cli/commands/social.d.ts +19 -0
  228. package/dist/types/cli/commands/social.d.ts.map +1 -0
  229. package/dist/types/cli/commands/web.d.ts +14 -0
  230. package/dist/types/cli/commands/web.d.ts.map +1 -0
  231. package/dist/types/cli/commands/wiki.d.ts +14 -0
  232. package/dist/types/cli/commands/wiki.d.ts.map +1 -0
  233. package/dist/types/cli/flags.d.ts +16 -0
  234. package/dist/types/cli/flags.d.ts.map +1 -0
  235. package/dist/types/cli/main.d.ts +69 -0
  236. package/dist/types/cli/main.d.ts.map +1 -0
  237. package/dist/types/cli/repo-context.d.ts +30 -0
  238. package/dist/types/cli/repo-context.d.ts.map +1 -0
  239. package/dist/types/daemon/adapter.d.ts +74 -0
  240. package/dist/types/daemon/adapter.d.ts.map +1 -0
  241. package/dist/types/daemon/adapters/github.d.ts +10 -0
  242. package/dist/types/daemon/adapters/github.d.ts.map +1 -0
  243. package/dist/types/daemon/adapters/go.d.ts +10 -0
  244. package/dist/types/daemon/adapters/go.d.ts.map +1 -0
  245. package/dist/types/daemon/adapters/index.d.ts +22 -0
  246. package/dist/types/daemon/adapters/index.d.ts.map +1 -0
  247. package/dist/types/daemon/adapters/npm.d.ts +10 -0
  248. package/dist/types/daemon/adapters/npm.d.ts.map +1 -0
  249. package/dist/types/daemon/adapters/oci.d.ts +10 -0
  250. package/dist/types/daemon/adapters/oci.d.ts.map +1 -0
  251. package/dist/types/daemon/index.d.ts +14 -0
  252. package/dist/types/daemon/index.d.ts.map +1 -0
  253. package/dist/types/daemon/server.d.ts +55 -0
  254. package/dist/types/daemon/server.d.ts.map +1 -0
  255. package/dist/types/git-remote/credential-helper.d.ts +49 -0
  256. package/dist/types/git-remote/credential-helper.d.ts.map +1 -0
  257. package/dist/types/git-remote/credential-main.d.ts +24 -0
  258. package/dist/types/git-remote/credential-main.d.ts.map +1 -0
  259. package/dist/types/git-remote/index.d.ts +10 -0
  260. package/dist/types/git-remote/index.d.ts.map +1 -0
  261. package/dist/types/git-remote/main.d.ts +23 -0
  262. package/dist/types/git-remote/main.d.ts.map +1 -0
  263. package/dist/types/git-remote/parse-url.d.ts +32 -0
  264. package/dist/types/git-remote/parse-url.d.ts.map +1 -0
  265. package/dist/types/git-remote/resolve.d.ts +30 -0
  266. package/dist/types/git-remote/resolve.d.ts.map +1 -0
  267. package/dist/types/git-remote/service.d.ts +75 -0
  268. package/dist/types/git-remote/service.d.ts.map +1 -0
  269. package/dist/types/git-server/auth.d.ts +129 -0
  270. package/dist/types/git-server/auth.d.ts.map +1 -0
  271. package/dist/types/git-server/bundle-restore.d.ts +48 -0
  272. package/dist/types/git-server/bundle-restore.d.ts.map +1 -0
  273. package/dist/types/git-server/bundle-sync.d.ts +90 -0
  274. package/dist/types/git-server/bundle-sync.d.ts.map +1 -0
  275. package/dist/types/git-server/did-service.d.ts +26 -0
  276. package/dist/types/git-server/did-service.d.ts.map +1 -0
  277. package/dist/types/git-server/git-backend.d.ts +84 -0
  278. package/dist/types/git-server/git-backend.d.ts.map +1 -0
  279. package/dist/types/git-server/http-handler.d.ts +73 -0
  280. package/dist/types/git-server/http-handler.d.ts.map +1 -0
  281. package/dist/types/git-server/index.d.ts +16 -0
  282. package/dist/types/git-server/index.d.ts.map +1 -0
  283. package/dist/types/git-server/push-authorizer.d.ts +38 -0
  284. package/dist/types/git-server/push-authorizer.d.ts.map +1 -0
  285. package/dist/types/git-server/ref-sync.d.ts +52 -0
  286. package/dist/types/git-server/ref-sync.d.ts.map +1 -0
  287. package/dist/types/git-server/server.d.ts +70 -0
  288. package/dist/types/git-server/server.d.ts.map +1 -0
  289. package/dist/types/git-server/verify.d.ts +12 -0
  290. package/dist/types/git-server/verify.d.ts.map +1 -0
  291. package/dist/types/github-shim/helpers.d.ts +108 -0
  292. package/dist/types/github-shim/helpers.d.ts.map +1 -0
  293. package/dist/types/github-shim/index.d.ts +15 -0
  294. package/dist/types/github-shim/index.d.ts.map +1 -0
  295. package/dist/types/github-shim/issues.d.ts +24 -0
  296. package/dist/types/github-shim/issues.d.ts.map +1 -0
  297. package/dist/types/github-shim/pulls.d.ts +31 -0
  298. package/dist/types/github-shim/pulls.d.ts.map +1 -0
  299. package/dist/types/github-shim/releases.d.ts +18 -0
  300. package/dist/types/github-shim/releases.d.ts.map +1 -0
  301. package/dist/types/github-shim/repos.d.ts +21 -0
  302. package/dist/types/github-shim/repos.d.ts.map +1 -0
  303. package/dist/types/github-shim/server.d.ts +53 -0
  304. package/dist/types/github-shim/server.d.ts.map +1 -0
  305. package/dist/types/github-shim/users.d.ts +17 -0
  306. package/dist/types/github-shim/users.d.ts.map +1 -0
  307. package/dist/types/index.d.ts +26 -0
  308. package/dist/types/index.d.ts.map +1 -0
  309. package/dist/types/indexer/api.d.ts +32 -0
  310. package/dist/types/indexer/api.d.ts.map +1 -0
  311. package/dist/types/indexer/crawler.d.ts +72 -0
  312. package/dist/types/indexer/crawler.d.ts.map +1 -0
  313. package/dist/types/indexer/index.d.ts +12 -0
  314. package/dist/types/indexer/index.d.ts.map +1 -0
  315. package/dist/types/indexer/main.d.ts +21 -0
  316. package/dist/types/indexer/main.d.ts.map +1 -0
  317. package/dist/types/indexer/store.d.ts +168 -0
  318. package/dist/types/indexer/store.d.ts.map +1 -0
  319. package/dist/types/issues.d.ts +395 -0
  320. package/dist/types/issues.d.ts.map +1 -0
  321. package/dist/types/notifications.d.ts +93 -0
  322. package/dist/types/notifications.d.ts.map +1 -0
  323. package/dist/types/org.d.ts +232 -0
  324. package/dist/types/org.d.ts.map +1 -0
  325. package/dist/types/patches.d.ts +410 -0
  326. package/dist/types/patches.d.ts.map +1 -0
  327. package/dist/types/refs.d.ts +114 -0
  328. package/dist/types/refs.d.ts.map +1 -0
  329. package/dist/types/registry.d.ts +212 -0
  330. package/dist/types/registry.d.ts.map +1 -0
  331. package/dist/types/releases.d.ts +204 -0
  332. package/dist/types/releases.d.ts.map +1 -0
  333. package/dist/types/repo.d.ts +450 -0
  334. package/dist/types/repo.d.ts.map +1 -0
  335. package/dist/types/resolver/index.d.ts +13 -0
  336. package/dist/types/resolver/index.d.ts.map +1 -0
  337. package/dist/types/resolver/resolve.d.ts +80 -0
  338. package/dist/types/resolver/resolve.d.ts.map +1 -0
  339. package/dist/types/resolver/trust-chain.d.ts +54 -0
  340. package/dist/types/resolver/trust-chain.d.ts.map +1 -0
  341. package/dist/types/resolver/verify.d.ts +62 -0
  342. package/dist/types/resolver/verify.d.ts.map +1 -0
  343. package/dist/types/shims/go/index.d.ts +11 -0
  344. package/dist/types/shims/go/index.d.ts.map +1 -0
  345. package/dist/types/shims/go/proxy.d.ts +51 -0
  346. package/dist/types/shims/go/proxy.d.ts.map +1 -0
  347. package/dist/types/shims/go/server.d.ts +23 -0
  348. package/dist/types/shims/go/server.d.ts.map +1 -0
  349. package/dist/types/shims/index.d.ts +18 -0
  350. package/dist/types/shims/index.d.ts.map +1 -0
  351. package/dist/types/shims/npm/index.d.ts +11 -0
  352. package/dist/types/shims/npm/index.d.ts.map +1 -0
  353. package/dist/types/shims/npm/registry.d.ts +46 -0
  354. package/dist/types/shims/npm/registry.d.ts.map +1 -0
  355. package/dist/types/shims/npm/server.d.ts +23 -0
  356. package/dist/types/shims/npm/server.d.ts.map +1 -0
  357. package/dist/types/shims/oci/index.d.ts +11 -0
  358. package/dist/types/shims/oci/index.d.ts.map +1 -0
  359. package/dist/types/shims/oci/registry.d.ts +56 -0
  360. package/dist/types/shims/oci/registry.d.ts.map +1 -0
  361. package/dist/types/shims/oci/server.d.ts +23 -0
  362. package/dist/types/shims/oci/server.d.ts.map +1 -0
  363. package/dist/types/social.d.ts +162 -0
  364. package/dist/types/social.d.ts.map +1 -0
  365. package/dist/types/web/html.d.ts +23 -0
  366. package/dist/types/web/html.d.ts.map +1 -0
  367. package/dist/types/web/index.d.ts +8 -0
  368. package/dist/types/web/index.d.ts.map +1 -0
  369. package/dist/types/web/routes.d.ts +21 -0
  370. package/dist/types/web/routes.d.ts.map +1 -0
  371. package/dist/types/web/server.d.ts +38 -0
  372. package/dist/types/web/server.d.ts.map +1 -0
  373. package/dist/types/wiki.d.ts +143 -0
  374. package/dist/types/wiki.d.ts.map +1 -0
  375. package/package.json +108 -0
  376. package/schemas/ci/check-run.json +23 -0
  377. package/schemas/ci/check-suite.json +23 -0
  378. package/schemas/issues/assignment.json +17 -0
  379. package/schemas/issues/comment.json +14 -0
  380. package/schemas/issues/issue.json +20 -0
  381. package/schemas/issues/label.json +17 -0
  382. package/schemas/issues/reaction.json +14 -0
  383. package/schemas/issues/status-change.json +14 -0
  384. package/schemas/notifications/notification.json +20 -0
  385. package/schemas/org/org-member.json +17 -0
  386. package/schemas/org/org.json +26 -0
  387. package/schemas/org/team-member.json +17 -0
  388. package/schemas/org/team.json +17 -0
  389. package/schemas/patches/merge-result.json +14 -0
  390. package/schemas/patches/patch-status-change.json +14 -0
  391. package/schemas/patches/patch.json +20 -0
  392. package/schemas/patches/review-comment.json +17 -0
  393. package/schemas/patches/review.json +14 -0
  394. package/schemas/patches/revision.json +30 -0
  395. package/schemas/refs/git-ref.json +32 -0
  396. package/schemas/registry/attestation.json +23 -0
  397. package/schemas/registry/package-version.json +23 -0
  398. package/schemas/registry/package.json +32 -0
  399. package/schemas/releases/release.json +17 -0
  400. package/schemas/repo/collaborator.json +17 -0
  401. package/schemas/repo/repo.json +35 -0
  402. package/schemas/repo/settings.json +39 -0
  403. package/schemas/repo/topic.json +14 -0
  404. package/schemas/repo/webhook.json +26 -0
  405. package/schemas/social/activity.json +23 -0
  406. package/schemas/social/follow.json +17 -0
  407. package/schemas/social/star.json +20 -0
  408. package/schemas/wiki/wiki-history.json +20 -0
  409. package/schemas/wiki/wiki-page.json +17 -0
  410. package/src/ci.ts +118 -0
  411. package/src/cli/agent.ts +117 -0
  412. package/src/cli/commands/ci.ts +300 -0
  413. package/src/cli/commands/clone.ts +78 -0
  414. package/src/cli/commands/daemon.ts +129 -0
  415. package/src/cli/commands/github-api.ts +30 -0
  416. package/src/cli/commands/init.ts +69 -0
  417. package/src/cli/commands/issue.ts +321 -0
  418. package/src/cli/commands/log.ts +106 -0
  419. package/src/cli/commands/migrate.ts +525 -0
  420. package/src/cli/commands/notification.ts +148 -0
  421. package/src/cli/commands/org.ts +381 -0
  422. package/src/cli/commands/patch.ts +413 -0
  423. package/src/cli/commands/registry.ts +542 -0
  424. package/src/cli/commands/release.ts +189 -0
  425. package/src/cli/commands/repo.ts +160 -0
  426. package/src/cli/commands/serve.ts +153 -0
  427. package/src/cli/commands/setup.ts +97 -0
  428. package/src/cli/commands/shim.ts +79 -0
  429. package/src/cli/commands/social.ts +221 -0
  430. package/src/cli/commands/web.ts +30 -0
  431. package/src/cli/commands/wiki.ts +199 -0
  432. package/src/cli/flags.ts +28 -0
  433. package/src/cli/main.ts +350 -0
  434. package/src/cli/repo-context.ts +55 -0
  435. package/src/daemon/adapter.ts +95 -0
  436. package/src/daemon/adapters/github.ts +86 -0
  437. package/src/daemon/adapters/go.ts +47 -0
  438. package/src/daemon/adapters/index.ts +36 -0
  439. package/src/daemon/adapters/npm.ts +47 -0
  440. package/src/daemon/adapters/oci.ts +59 -0
  441. package/src/daemon/index.ts +16 -0
  442. package/src/daemon/server.ts +204 -0
  443. package/src/git-remote/credential-helper.ts +114 -0
  444. package/src/git-remote/credential-main.ts +118 -0
  445. package/src/git-remote/index.ts +10 -0
  446. package/src/git-remote/main.ts +74 -0
  447. package/src/git-remote/parse-url.ts +81 -0
  448. package/src/git-remote/resolve.ts +207 -0
  449. package/src/git-remote/service.ts +126 -0
  450. package/src/git-server/auth.ts +308 -0
  451. package/src/git-server/bundle-restore.ts +217 -0
  452. package/src/git-server/bundle-sync.ts +300 -0
  453. package/src/git-server/did-service.ts +77 -0
  454. package/src/git-server/git-backend.ts +222 -0
  455. package/src/git-server/http-handler.ts +386 -0
  456. package/src/git-server/index.ts +16 -0
  457. package/src/git-server/push-authorizer.ts +77 -0
  458. package/src/git-server/ref-sync.ts +166 -0
  459. package/src/git-server/server.ts +236 -0
  460. package/src/git-server/verify.ts +116 -0
  461. package/src/github-shim/helpers.ts +311 -0
  462. package/src/github-shim/index.ts +35 -0
  463. package/src/github-shim/issues.ts +389 -0
  464. package/src/github-shim/pulls.ts +500 -0
  465. package/src/github-shim/releases.ts +185 -0
  466. package/src/github-shim/repos.ts +95 -0
  467. package/src/github-shim/server.ts +334 -0
  468. package/src/github-shim/users.ts +63 -0
  469. package/src/index.ts +26 -0
  470. package/src/indexer/api.ts +162 -0
  471. package/src/indexer/crawler.ts +290 -0
  472. package/src/indexer/index.ts +22 -0
  473. package/src/indexer/main.ts +83 -0
  474. package/src/indexer/store.ts +408 -0
  475. package/src/issues.ts +200 -0
  476. package/src/notifications.ts +80 -0
  477. package/src/org.ts +147 -0
  478. package/src/patches.ts +203 -0
  479. package/src/refs.ts +94 -0
  480. package/src/registry.ts +132 -0
  481. package/src/releases.ts +124 -0
  482. package/src/repo.ts +234 -0
  483. package/src/resolver/index.ts +42 -0
  484. package/src/resolver/resolve.ts +244 -0
  485. package/src/resolver/trust-chain.ts +217 -0
  486. package/src/resolver/verify.ts +237 -0
  487. package/src/shims/go/index.ts +14 -0
  488. package/src/shims/go/proxy.ts +336 -0
  489. package/src/shims/go/server.ts +82 -0
  490. package/src/shims/index.ts +20 -0
  491. package/src/shims/npm/index.ts +14 -0
  492. package/src/shims/npm/registry.ts +288 -0
  493. package/src/shims/npm/server.ts +84 -0
  494. package/src/shims/oci/index.ts +14 -0
  495. package/src/shims/oci/registry.ts +334 -0
  496. package/src/shims/oci/server.ts +94 -0
  497. package/src/social.ts +116 -0
  498. package/src/web/html.ts +120 -0
  499. package/src/web/index.ts +8 -0
  500. package/src/web/routes.ts +449 -0
  501. package/src/web/server.ts +256 -0
  502. package/src/wiki.ts +102 -0
@@ -0,0 +1,450 @@
1
+ /**
2
+ * Forge Repository Protocol — foundational protocol for repository management.
3
+ *
4
+ * Defines repository metadata, collaborator roles (maintainer, triager,
5
+ * contributor), and repo-level resources (readme, license, topics, settings,
6
+ * webhooks). Other forge protocols compose with this via `uses` to leverage
7
+ * role-based authorization.
8
+ *
9
+ * @module
10
+ */
11
+ /** Data shape for a repository record. */
12
+ export type RepoData = {
13
+ name: string;
14
+ description?: string;
15
+ defaultBranch: string;
16
+ homepage?: string;
17
+ dwnEndpoints: string[];
18
+ gitEndpoints?: string[];
19
+ };
20
+ /** Data shape for a collaborator role record (maintainer, triager, contributor). */
21
+ export type CollaboratorData = {
22
+ did: string;
23
+ alias?: string;
24
+ };
25
+ /** Data shape for a repository topic tag. */
26
+ export type TopicData = {
27
+ name: string;
28
+ };
29
+ /** Data shape for repository settings. */
30
+ export type SettingsData = {
31
+ branchProtection?: Record<string, {
32
+ requiredReviews?: number;
33
+ requiredChecks?: string[];
34
+ }>;
35
+ mergeStrategies?: ('merge' | 'squash' | 'rebase')[];
36
+ autoDeleteBranch?: boolean;
37
+ };
38
+ /** Data shape for a webhook configuration. */
39
+ export type WebhookData = {
40
+ url: string;
41
+ secret: string;
42
+ events: string[];
43
+ active: boolean;
44
+ };
45
+ /**
46
+ * Data shape for a git bundle record.
47
+ *
48
+ * The record payload is the raw git bundle binary (`application/x-git-bundle`).
49
+ * Queryable metadata (tipCommit, isFull, etc.) is stored in record tags.
50
+ */
51
+ export type BundleData = Uint8Array;
52
+ /** Maps protocol type names to their TypeScript data shapes. */
53
+ export type ForgeRepoSchemaMap = {
54
+ repo: RepoData;
55
+ bundle: BundleData;
56
+ settings: SettingsData;
57
+ readme: string;
58
+ license: string;
59
+ maintainer: CollaboratorData;
60
+ triager: CollaboratorData;
61
+ contributor: CollaboratorData;
62
+ topic: TopicData;
63
+ webhook: WebhookData;
64
+ };
65
+ export declare const ForgeRepoDefinition: {
66
+ readonly protocol: "https://enbox.org/protocols/forge/repo";
67
+ readonly published: true;
68
+ readonly types: {
69
+ readonly repo: {
70
+ readonly schema: "https://enbox.org/schemas/forge/repo";
71
+ readonly dataFormats: ["application/json"];
72
+ };
73
+ readonly settings: {
74
+ readonly schema: "https://enbox.org/schemas/forge/settings";
75
+ readonly dataFormats: ["application/json"];
76
+ };
77
+ readonly readme: {
78
+ readonly dataFormats: ["text/markdown", "text/plain"];
79
+ };
80
+ readonly license: {
81
+ readonly dataFormats: ["text/plain"];
82
+ };
83
+ readonly maintainer: {
84
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
85
+ readonly dataFormats: ["application/json"];
86
+ };
87
+ readonly triager: {
88
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
89
+ readonly dataFormats: ["application/json"];
90
+ };
91
+ readonly contributor: {
92
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
93
+ readonly dataFormats: ["application/json"];
94
+ };
95
+ readonly topic: {
96
+ readonly schema: "https://enbox.org/schemas/forge/topic";
97
+ readonly dataFormats: ["application/json"];
98
+ };
99
+ readonly bundle: {
100
+ readonly dataFormats: ["application/x-git-bundle"];
101
+ };
102
+ readonly webhook: {
103
+ readonly schema: "https://enbox.org/schemas/forge/webhook";
104
+ readonly dataFormats: ["application/json"];
105
+ readonly encryptionRequired: true;
106
+ };
107
+ };
108
+ readonly structure: {
109
+ readonly repo: {
110
+ readonly $recordLimit: {
111
+ readonly max: 1;
112
+ readonly strategy: "reject";
113
+ };
114
+ readonly $actions: [{
115
+ readonly who: "anyone";
116
+ readonly can: ["read"];
117
+ }];
118
+ readonly $tags: {
119
+ readonly $requiredTags: ["name", "visibility"];
120
+ readonly $allowUndefinedTags: false;
121
+ readonly name: {
122
+ readonly type: "string";
123
+ readonly maxLength: 100;
124
+ };
125
+ readonly visibility: {
126
+ readonly type: "string";
127
+ readonly enum: ["public", "private"];
128
+ };
129
+ readonly defaultBranch: {
130
+ readonly type: "string";
131
+ };
132
+ readonly language: {
133
+ readonly type: "string";
134
+ };
135
+ readonly archived: {
136
+ readonly type: "boolean";
137
+ };
138
+ };
139
+ readonly maintainer: {
140
+ readonly $role: true;
141
+ readonly $actions: [{
142
+ readonly who: "anyone";
143
+ readonly can: ["read"];
144
+ }];
145
+ readonly $tags: {
146
+ readonly $requiredTags: ["did"];
147
+ readonly $allowUndefinedTags: false;
148
+ readonly did: {
149
+ readonly type: "string";
150
+ };
151
+ };
152
+ };
153
+ readonly triager: {
154
+ readonly $role: true;
155
+ readonly $actions: [{
156
+ readonly who: "anyone";
157
+ readonly can: ["read"];
158
+ }];
159
+ readonly $tags: {
160
+ readonly $requiredTags: ["did"];
161
+ readonly $allowUndefinedTags: false;
162
+ readonly did: {
163
+ readonly type: "string";
164
+ };
165
+ };
166
+ };
167
+ readonly contributor: {
168
+ readonly $role: true;
169
+ readonly $actions: [{
170
+ readonly who: "anyone";
171
+ readonly can: ["read"];
172
+ }];
173
+ readonly $tags: {
174
+ readonly $requiredTags: ["did"];
175
+ readonly $allowUndefinedTags: false;
176
+ readonly did: {
177
+ readonly type: "string";
178
+ };
179
+ };
180
+ };
181
+ readonly bundle: {
182
+ readonly $squash: true;
183
+ readonly $actions: [{
184
+ readonly who: "anyone";
185
+ readonly can: ["read"];
186
+ }, {
187
+ readonly role: "repo/maintainer";
188
+ readonly can: ["create", "squash"];
189
+ }];
190
+ readonly $tags: {
191
+ readonly $requiredTags: ["tipCommit", "isFull"];
192
+ readonly $allowUndefinedTags: false;
193
+ readonly tipCommit: {
194
+ readonly type: "string";
195
+ };
196
+ readonly isFull: {
197
+ readonly type: "boolean";
198
+ };
199
+ readonly refCount: {
200
+ readonly type: "integer";
201
+ };
202
+ readonly size: {
203
+ readonly type: "integer";
204
+ };
205
+ };
206
+ };
207
+ readonly readme: {
208
+ readonly $recordLimit: {
209
+ readonly max: 1;
210
+ readonly strategy: "reject";
211
+ };
212
+ readonly $actions: [{
213
+ readonly who: "anyone";
214
+ readonly can: ["read"];
215
+ }, {
216
+ readonly role: "repo/maintainer";
217
+ readonly can: ["create", "update"];
218
+ }];
219
+ };
220
+ readonly license: {
221
+ readonly $recordLimit: {
222
+ readonly max: 1;
223
+ readonly strategy: "reject";
224
+ };
225
+ readonly $actions: [{
226
+ readonly who: "anyone";
227
+ readonly can: ["read"];
228
+ }];
229
+ };
230
+ readonly topic: {
231
+ readonly $actions: [{
232
+ readonly who: "anyone";
233
+ readonly can: ["read"];
234
+ }, {
235
+ readonly role: "repo/maintainer";
236
+ readonly can: ["create", "delete"];
237
+ }];
238
+ readonly $tags: {
239
+ readonly $requiredTags: ["name"];
240
+ readonly $allowUndefinedTags: false;
241
+ readonly name: {
242
+ readonly type: "string";
243
+ readonly maxLength: 50;
244
+ };
245
+ };
246
+ };
247
+ readonly settings: {
248
+ readonly $recordLimit: {
249
+ readonly max: 1;
250
+ readonly strategy: "reject";
251
+ };
252
+ };
253
+ readonly webhook: {};
254
+ };
255
+ };
256
+ };
257
+ /** Typed Forge Repo protocol for use with `dwn.using()`. */
258
+ export declare const ForgeRepoProtocol: import("@enbox/api").TypedProtocol<{
259
+ readonly protocol: "https://enbox.org/protocols/forge/repo";
260
+ readonly published: true;
261
+ readonly types: {
262
+ readonly repo: {
263
+ readonly schema: "https://enbox.org/schemas/forge/repo";
264
+ readonly dataFormats: ["application/json"];
265
+ };
266
+ readonly settings: {
267
+ readonly schema: "https://enbox.org/schemas/forge/settings";
268
+ readonly dataFormats: ["application/json"];
269
+ };
270
+ readonly readme: {
271
+ readonly dataFormats: ["text/markdown", "text/plain"];
272
+ };
273
+ readonly license: {
274
+ readonly dataFormats: ["text/plain"];
275
+ };
276
+ readonly maintainer: {
277
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
278
+ readonly dataFormats: ["application/json"];
279
+ };
280
+ readonly triager: {
281
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
282
+ readonly dataFormats: ["application/json"];
283
+ };
284
+ readonly contributor: {
285
+ readonly schema: "https://enbox.org/schemas/forge/collaborator";
286
+ readonly dataFormats: ["application/json"];
287
+ };
288
+ readonly topic: {
289
+ readonly schema: "https://enbox.org/schemas/forge/topic";
290
+ readonly dataFormats: ["application/json"];
291
+ };
292
+ readonly bundle: {
293
+ readonly dataFormats: ["application/x-git-bundle"];
294
+ };
295
+ readonly webhook: {
296
+ readonly schema: "https://enbox.org/schemas/forge/webhook";
297
+ readonly dataFormats: ["application/json"];
298
+ readonly encryptionRequired: true;
299
+ };
300
+ };
301
+ readonly structure: {
302
+ readonly repo: {
303
+ readonly $recordLimit: {
304
+ readonly max: 1;
305
+ readonly strategy: "reject";
306
+ };
307
+ readonly $actions: [{
308
+ readonly who: "anyone";
309
+ readonly can: ["read"];
310
+ }];
311
+ readonly $tags: {
312
+ readonly $requiredTags: ["name", "visibility"];
313
+ readonly $allowUndefinedTags: false;
314
+ readonly name: {
315
+ readonly type: "string";
316
+ readonly maxLength: 100;
317
+ };
318
+ readonly visibility: {
319
+ readonly type: "string";
320
+ readonly enum: ["public", "private"];
321
+ };
322
+ readonly defaultBranch: {
323
+ readonly type: "string";
324
+ };
325
+ readonly language: {
326
+ readonly type: "string";
327
+ };
328
+ readonly archived: {
329
+ readonly type: "boolean";
330
+ };
331
+ };
332
+ readonly maintainer: {
333
+ readonly $role: true;
334
+ readonly $actions: [{
335
+ readonly who: "anyone";
336
+ readonly can: ["read"];
337
+ }];
338
+ readonly $tags: {
339
+ readonly $requiredTags: ["did"];
340
+ readonly $allowUndefinedTags: false;
341
+ readonly did: {
342
+ readonly type: "string";
343
+ };
344
+ };
345
+ };
346
+ readonly triager: {
347
+ readonly $role: true;
348
+ readonly $actions: [{
349
+ readonly who: "anyone";
350
+ readonly can: ["read"];
351
+ }];
352
+ readonly $tags: {
353
+ readonly $requiredTags: ["did"];
354
+ readonly $allowUndefinedTags: false;
355
+ readonly did: {
356
+ readonly type: "string";
357
+ };
358
+ };
359
+ };
360
+ readonly contributor: {
361
+ readonly $role: true;
362
+ readonly $actions: [{
363
+ readonly who: "anyone";
364
+ readonly can: ["read"];
365
+ }];
366
+ readonly $tags: {
367
+ readonly $requiredTags: ["did"];
368
+ readonly $allowUndefinedTags: false;
369
+ readonly did: {
370
+ readonly type: "string";
371
+ };
372
+ };
373
+ };
374
+ readonly bundle: {
375
+ readonly $squash: true;
376
+ readonly $actions: [{
377
+ readonly who: "anyone";
378
+ readonly can: ["read"];
379
+ }, {
380
+ readonly role: "repo/maintainer";
381
+ readonly can: ["create", "squash"];
382
+ }];
383
+ readonly $tags: {
384
+ readonly $requiredTags: ["tipCommit", "isFull"];
385
+ readonly $allowUndefinedTags: false;
386
+ readonly tipCommit: {
387
+ readonly type: "string";
388
+ };
389
+ readonly isFull: {
390
+ readonly type: "boolean";
391
+ };
392
+ readonly refCount: {
393
+ readonly type: "integer";
394
+ };
395
+ readonly size: {
396
+ readonly type: "integer";
397
+ };
398
+ };
399
+ };
400
+ readonly readme: {
401
+ readonly $recordLimit: {
402
+ readonly max: 1;
403
+ readonly strategy: "reject";
404
+ };
405
+ readonly $actions: [{
406
+ readonly who: "anyone";
407
+ readonly can: ["read"];
408
+ }, {
409
+ readonly role: "repo/maintainer";
410
+ readonly can: ["create", "update"];
411
+ }];
412
+ };
413
+ readonly license: {
414
+ readonly $recordLimit: {
415
+ readonly max: 1;
416
+ readonly strategy: "reject";
417
+ };
418
+ readonly $actions: [{
419
+ readonly who: "anyone";
420
+ readonly can: ["read"];
421
+ }];
422
+ };
423
+ readonly topic: {
424
+ readonly $actions: [{
425
+ readonly who: "anyone";
426
+ readonly can: ["read"];
427
+ }, {
428
+ readonly role: "repo/maintainer";
429
+ readonly can: ["create", "delete"];
430
+ }];
431
+ readonly $tags: {
432
+ readonly $requiredTags: ["name"];
433
+ readonly $allowUndefinedTags: false;
434
+ readonly name: {
435
+ readonly type: "string";
436
+ readonly maxLength: 50;
437
+ };
438
+ };
439
+ };
440
+ readonly settings: {
441
+ readonly $recordLimit: {
442
+ readonly max: 1;
443
+ readonly strategy: "reject";
444
+ };
445
+ };
446
+ readonly webhook: {};
447
+ };
448
+ };
449
+ }, ForgeRepoSchemaMap>;
450
+ //# sourceMappingURL=repo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo.d.ts","sourceRoot":"","sources":["../../src/repo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,0CAA0C;AAC1C,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAG,MAAM,CAAC;IACd,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,aAAa,EAAG,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAG,MAAM,CAAC;IACnB,YAAY,EAAG,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAG,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,oFAAoF;AACpF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAG,MAAM,CAAC;IACb,KAAK,CAAC,EAAG,MAAM,CAAC;CACjB,CAAC;AAEF,6CAA6C;AAC7C,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,0CAA0C;AAC1C,MAAM,MAAM,YAAY,GAAG;IACzB,gBAAgB,CAAC,EAAG,MAAM,CAAC,MAAM,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC5F,eAAe,CAAC,EAAG,CAAC,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;IACrD,gBAAgB,CAAC,EAAG,OAAO,CAAC;CAC7B,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAG,MAAM,CAAC;IACb,MAAM,EAAG,MAAM,CAAC;IAChB,MAAM,EAAG,MAAM,EAAE,CAAC;IAClB,MAAM,EAAG,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC;AAMpC,gEAAgE;AAChE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAG,QAAQ,CAAC;IAChB,MAAM,EAAG,UAAU,CAAC;IACpB,QAAQ,EAAG,YAAY,CAAC;IACxB,MAAM,EAAG,MAAM,CAAC;IAChB,OAAO,EAAG,MAAM,CAAC;IACjB,UAAU,EAAG,gBAAgB,CAAC;IAC9B,OAAO,EAAG,gBAAgB,CAAC;IAC3B,WAAW,EAAG,gBAAgB,CAAC;IAC/B,KAAK,EAAG,SAAS,CAAC;IAClB,OAAO,EAAG,WAAW,CAAC;CACvB,CAAC;AAMF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0IO,CAAC;AAMxC,4DAA4D;AAC5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAG7B,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Package resolver module — DID-scoped package resolution, verification,
3
+ * and dependency trust chain validation.
4
+ *
5
+ * @module
6
+ */
7
+ export { fetchTarball, listVersions, parseSpecifier, resolveFullPackage, resolvePackage, resolveVersion, } from './resolve.js';
8
+ export type { ResolvedPackage, ResolvedVersion, ResolutionResult, } from './resolve.js';
9
+ export { fetchAttestations, verifyPackageVersion, } from './verify.js';
10
+ export type { AttestationRecord, VerificationCheck, VerificationResult, } from './verify.js';
11
+ export { buildTrustChain, formatTrustChain, } from './trust-chain.js';
12
+ export type { TrustChainNode, TrustChainResult, } from './trust-chain.js';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/resolver/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,cAAc,EACd,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Package resolver — resolves DID-scoped packages from remote DWNs.
3
+ *
4
+ * Resolution flow:
5
+ * 1. Resolve DID → DWN endpoints
6
+ * 2. Query package record by name + ecosystem
7
+ * 3. Query version record by semver
8
+ * 4. Fetch tarball binary
9
+ *
10
+ * All queries use the `from:` parameter to route to the remote DWN.
11
+ *
12
+ * @module
13
+ */
14
+ import type { AgentContext } from '../cli/agent.js';
15
+ /** Resolved package metadata. */
16
+ export type ResolvedPackage = {
17
+ name: string;
18
+ ecosystem: string;
19
+ description: string;
20
+ contextId: string;
21
+ publisherDid: string;
22
+ };
23
+ /** Resolved version metadata. */
24
+ export type ResolvedVersion = {
25
+ semver: string;
26
+ contextId: string;
27
+ dateCreated: string;
28
+ deprecated: boolean;
29
+ dependencies: Record<string, string>;
30
+ author: string;
31
+ };
32
+ /** Full resolution result including tarball bytes. */
33
+ export type ResolutionResult = {
34
+ package: ResolvedPackage;
35
+ version: ResolvedVersion;
36
+ tarball: Uint8Array | null;
37
+ };
38
+ /**
39
+ * Find a package record on a target DID's DWN.
40
+ *
41
+ * @param ctx - Agent context for DWN queries
42
+ * @param targetDid - DID of the package publisher
43
+ * @param name - Package name
44
+ * @param ecosystem - Package ecosystem (default: 'npm')
45
+ */
46
+ export declare function resolvePackage(ctx: AgentContext, targetDid: string, name: string, ecosystem?: string): Promise<ResolvedPackage | null>;
47
+ /**
48
+ * Find a specific version of a package.
49
+ *
50
+ * @param ctx - Agent context
51
+ * @param targetDid - Publisher DID
52
+ * @param pkgContextId - Context ID of the package record
53
+ * @param semver - Semver string to resolve
54
+ */
55
+ export declare function resolveVersion(ctx: AgentContext, targetDid: string, pkgContextId: string, semver: string): Promise<ResolvedVersion | null>;
56
+ /**
57
+ * List all versions of a package.
58
+ */
59
+ export declare function listVersions(ctx: AgentContext, targetDid: string, pkgContextId: string): Promise<ResolvedVersion[]>;
60
+ /**
61
+ * Fetch the tarball for a specific version.
62
+ */
63
+ export declare function fetchTarball(ctx: AgentContext, targetDid: string, versionContextId: string): Promise<Uint8Array | null>;
64
+ /**
65
+ * Resolve a full package specifier: `did:method:id/name@version`.
66
+ *
67
+ * Returns the package metadata, version metadata, and tarball bytes.
68
+ */
69
+ export declare function resolveFullPackage(ctx: AgentContext, targetDid: string, name: string, semver: string, ecosystem?: string): Promise<ResolutionResult | null>;
70
+ /**
71
+ * Parse a package specifier like `did:dht:abc123/my-pkg@1.0.0`.
72
+ *
73
+ * Returns `{ did, name, version }` or `null` if the format is invalid.
74
+ */
75
+ export declare function parseSpecifier(specifier: string): {
76
+ did: string;
77
+ name: string;
78
+ version: string;
79
+ } | null;
80
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../src/resolver/resolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAQpD,iCAAiC;AACjC,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAG,MAAM,CAAC;IACd,SAAS,EAAG,MAAM,CAAC;IACnB,WAAW,EAAG,MAAM,CAAC;IACrB,SAAS,EAAG,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,iCAAiC;AACjC,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAG,MAAM,CAAC;IAChB,SAAS,EAAG,MAAM,CAAC;IACnB,WAAW,EAAG,MAAM,CAAC;IACrB,UAAU,EAAG,OAAO,CAAC;IACrB,YAAY,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,EAAG,MAAM,CAAC;CACjB,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAG,eAAe,CAAC;IAC1B,OAAO,EAAG,eAAe,CAAC;IAC1B,OAAO,EAAG,UAAU,GAAG,IAAI,CAAC;CAC7B,CAAC;AAMF;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAoBjC;AAMD;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAyBjC;AAMD;;GAEG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,EAAE,CAAC,CAyB5B;AAMD;;GAEG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAa5B;AAMD;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAUlC;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,GAChB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUvD"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Dependency trust chain — recursive verification of a package's
3
+ * dependency tree.
4
+ *
5
+ * Given a root package specifier like `did:dht:abc/utils@1.0.0`, the
6
+ * trust chain validator:
7
+ *
8
+ * 1. Resolves the package from the publisher's DWN
9
+ * 2. Verifies the package version (author, tarball, attestations)
10
+ * 3. Reads the version's `dependencies` field
11
+ * 4. Recursively resolves and verifies each dependency
12
+ * 5. Returns a tree of verification results
13
+ *
14
+ * The entire chain is verifiable without any central authority — each
15
+ * DID resolution, signature verification, and attestation check uses
16
+ * decentralized infrastructure.
17
+ *
18
+ * @module
19
+ */
20
+ import type { AgentContext } from '../cli/agent.js';
21
+ import type { VerificationResult } from './verify.js';
22
+ /** A single node in the dependency trust chain tree. */
23
+ export type TrustChainNode = {
24
+ specifier: string;
25
+ did: string;
26
+ name: string;
27
+ version: string;
28
+ verification: VerificationResult;
29
+ dependencies: TrustChainNode[];
30
+ };
31
+ /** Summary of the trust chain validation. */
32
+ export type TrustChainResult = {
33
+ root: TrustChainNode;
34
+ totalChecked: number;
35
+ allPassed: boolean;
36
+ failures: string[];
37
+ };
38
+ /**
39
+ * Build and verify a full dependency trust chain.
40
+ *
41
+ * @param ctx - Agent context
42
+ * @param targetDid - Root package publisher DID
43
+ * @param name - Root package name
44
+ * @param semver - Root package version
45
+ * @param ecosystem - Package ecosystem (default: 'npm')
46
+ * @param trustedAttestors - DIDs of trusted build services
47
+ * @param maxDepth - Maximum recursion depth (default: 10)
48
+ */
49
+ export declare function buildTrustChain(ctx: AgentContext, targetDid: string, name: string, semver: string, ecosystem?: string, trustedAttestors?: string[], maxDepth?: number): Promise<TrustChainResult>;
50
+ /**
51
+ * Format a trust chain tree as an indented string for CLI output.
52
+ */
53
+ export declare function formatTrustChain(result: TrustChainResult): string;
54
+ //# sourceMappingURL=trust-chain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust-chain.d.ts","sourceRoot":"","sources":["../../../src/resolver/trust-chain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAUtD,wDAAwD;AACxD,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAG,MAAM,CAAC;IACnB,GAAG,EAAG,MAAM,CAAC;IACb,IAAI,EAAG,MAAM,CAAC;IACd,OAAO,EAAG,MAAM,CAAC;IACjB,YAAY,EAAG,kBAAkB,CAAC;IAClC,YAAY,EAAG,cAAc,EAAE,CAAC;CACjC,CAAC;AAEF,6CAA6C;AAC7C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAG,cAAc,CAAC;IACtB,YAAY,EAAG,MAAM,CAAC;IACtB,SAAS,EAAG,OAAO,CAAC;IACpB,QAAQ,EAAG,MAAM,EAAE,CAAC;CACrB,CAAC;AAMF;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAc,EACzB,gBAAgB,GAAE,MAAM,EAAO,EAC/B,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAc3B;AAwFD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAkBjE"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Package verification — cryptographic verification of DWN package records.
3
+ *
4
+ * Verification checks:
5
+ * 1. **Author verification**: the record's `author` DID matches the publisher
6
+ * 2. **Attestation verification**: third-party attestation records are present
7
+ * and signed by trusted attestors
8
+ * 3. **Integrity check**: tarball exists and is non-empty
9
+ *
10
+ * Since every DWN record is cryptographically signed via JWS in the
11
+ * `authorization` field, verification relies on the DWN SDK having
12
+ * already validated signatures during record ingestion. Our verification
13
+ * layer adds semantic checks on top of that foundation.
14
+ *
15
+ * @module
16
+ */
17
+ import type { AgentContext } from '../cli/agent.js';
18
+ /** Individual verification check result. */
19
+ export type VerificationCheck = {
20
+ check: string;
21
+ passed: boolean;
22
+ detail: string;
23
+ };
24
+ /** Attestation record as returned by the DWN. */
25
+ export type AttestationRecord = {
26
+ attestorDid: string;
27
+ claim: string;
28
+ sourceCommit: string | undefined;
29
+ sourceRepo: string | undefined;
30
+ dateCreated: string;
31
+ };
32
+ /** Full verification result for a package version. */
33
+ export type VerificationResult = {
34
+ passed: boolean;
35
+ publisherDid: string;
36
+ packageName: string;
37
+ version: string;
38
+ checks: VerificationCheck[];
39
+ attestations: AttestationRecord[];
40
+ };
41
+ /**
42
+ * Fetch attestation records for a specific package version.
43
+ */
44
+ export declare function fetchAttestations(ctx: AgentContext, targetDid: string, versionContextId: string): Promise<AttestationRecord[]>;
45
+ /**
46
+ * Verify a package version's integrity and provenance.
47
+ *
48
+ * Performs the following checks:
49
+ * 1. Package record exists and is owned by the expected DID
50
+ * 2. Version record exists and is authored by the publisher
51
+ * 3. Tarball exists and is non-empty
52
+ * 4. Attestations are present (informational — not required to pass)
53
+ *
54
+ * @param ctx - Agent context
55
+ * @param targetDid - Expected publisher DID
56
+ * @param name - Package name
57
+ * @param semver - Version string
58
+ * @param ecosystem - Ecosystem (default: 'npm')
59
+ * @param trustedAttestors - DIDs of trusted attestors (optional)
60
+ */
61
+ export declare function verifyPackageVersion(ctx: AgentContext, targetDid: string, name: string, semver: string, ecosystem?: string, trustedAttestors?: string[]): Promise<VerificationResult>;
62
+ //# sourceMappingURL=verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/resolver/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAQpD,4CAA4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAG,MAAM,CAAC;IACf,MAAM,EAAG,OAAO,CAAC;IACjB,MAAM,EAAG,MAAM,CAAC;CACjB,CAAC;AAEF,iDAAiD;AACjD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAG,MAAM,CAAC;IACrB,KAAK,EAAG,MAAM,CAAC;IACf,YAAY,EAAG,MAAM,GAAG,SAAS,CAAC;IAClC,UAAU,EAAG,MAAM,GAAG,SAAS,CAAC;IAChC,WAAW,EAAG,MAAM,CAAC;CACtB,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAG,OAAO,CAAC;IACjB,YAAY,EAAG,MAAM,CAAC;IACtB,WAAW,EAAG,MAAM,CAAC;IACrB,OAAO,EAAG,MAAM,CAAC;IACjB,MAAM,EAAG,iBAAiB,EAAE,CAAC;IAC7B,YAAY,EAAG,iBAAiB,EAAE,CAAC;CACpC,CAAC;AAMF;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAsB9B;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAc,EACzB,gBAAgB,GAAE,MAAM,EAAO,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA2H7B"}