@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,217 @@
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
+
21
+ import type { AgentContext } from '../cli/agent.js';
22
+ import type { VerificationResult } from './verify.js';
23
+
24
+ import { verifyPackageVersion } from './verify.js';
25
+
26
+ import { parseSpecifier, resolvePackage, resolveVersion } from './resolve.js';
27
+
28
+ // ---------------------------------------------------------------------------
29
+ // Types
30
+ // ---------------------------------------------------------------------------
31
+
32
+ /** A single node in the dependency trust chain tree. */
33
+ export type TrustChainNode = {
34
+ specifier : string;
35
+ did : string;
36
+ name : string;
37
+ version : string;
38
+ verification : VerificationResult;
39
+ dependencies : TrustChainNode[];
40
+ };
41
+
42
+ /** Summary of the trust chain validation. */
43
+ export type TrustChainResult = {
44
+ root : TrustChainNode;
45
+ totalChecked : number;
46
+ allPassed : boolean;
47
+ failures : string[];
48
+ };
49
+
50
+ // ---------------------------------------------------------------------------
51
+ // Trust chain builder
52
+ // ---------------------------------------------------------------------------
53
+
54
+ /**
55
+ * Build and verify a full dependency trust chain.
56
+ *
57
+ * @param ctx - Agent context
58
+ * @param targetDid - Root package publisher DID
59
+ * @param name - Root package name
60
+ * @param semver - Root package version
61
+ * @param ecosystem - Package ecosystem (default: 'npm')
62
+ * @param trustedAttestors - DIDs of trusted build services
63
+ * @param maxDepth - Maximum recursion depth (default: 10)
64
+ */
65
+ export async function buildTrustChain(
66
+ ctx: AgentContext,
67
+ targetDid: string,
68
+ name: string,
69
+ semver: string,
70
+ ecosystem: string = 'npm',
71
+ trustedAttestors: string[] = [],
72
+ maxDepth: number = 10,
73
+ ): Promise<TrustChainResult> {
74
+ const visited = new Set<string>();
75
+ const failures: string[] = [];
76
+ let totalChecked = 0;
77
+
78
+ const root = await buildNode(
79
+ ctx, targetDid, name, semver, ecosystem, trustedAttestors,
80
+ maxDepth, 0, visited, failures,
81
+ );
82
+
83
+ totalChecked = visited.size;
84
+ const allPassed = failures.length === 0;
85
+
86
+ return { root, totalChecked, allPassed, failures };
87
+ }
88
+
89
+ /**
90
+ * Recursively build a trust chain node.
91
+ */
92
+ async function buildNode(
93
+ ctx: AgentContext,
94
+ targetDid: string,
95
+ name: string,
96
+ semver: string,
97
+ ecosystem: string,
98
+ trustedAttestors: string[],
99
+ maxDepth: number,
100
+ depth: number,
101
+ visited: Set<string>,
102
+ failures: string[],
103
+ ): Promise<TrustChainNode> {
104
+ const specifier = `${targetDid}/${name}@${semver}`;
105
+ const node: TrustChainNode = {
106
+ specifier,
107
+ did : targetDid,
108
+ name,
109
+ version : semver,
110
+ verification : {
111
+ passed : false,
112
+ publisherDid : targetDid,
113
+ packageName : name,
114
+ version : semver,
115
+ checks : [],
116
+ attestations : [],
117
+ },
118
+ dependencies: [],
119
+ };
120
+
121
+ // Cycle detection.
122
+ if (visited.has(specifier)) {
123
+ node.verification.passed = true;
124
+ node.verification.checks = [{ check: 'cycle-skip', passed: true, detail: 'Already verified (cycle)' }];
125
+ return node;
126
+ }
127
+ visited.add(specifier);
128
+
129
+ // Depth guard.
130
+ if (depth > maxDepth) {
131
+ node.verification.checks = [{ check: 'max-depth', passed: true, detail: `Max depth ${maxDepth} reached` }];
132
+ node.verification.passed = true;
133
+ return node;
134
+ }
135
+
136
+ // Verify this package version.
137
+ node.verification = await verifyPackageVersion(
138
+ ctx, targetDid, name, semver, ecosystem, trustedAttestors,
139
+ );
140
+
141
+ if (!node.verification.passed) {
142
+ failures.push(`${specifier}: ${node.verification.checks.filter((c) => !c.passed).map((c) => c.detail).join('; ')}`);
143
+ }
144
+
145
+ // Resolve dependencies.
146
+ const pkg = await resolvePackage(ctx, targetDid, name, ecosystem);
147
+ if (!pkg) { return node; }
148
+
149
+ const version = await resolveVersion(ctx, targetDid, pkg.contextId, semver);
150
+ if (!version || !version.dependencies) { return node; }
151
+
152
+ const deps = version.dependencies;
153
+ for (const [depSpec, depVersion] of Object.entries(deps)) {
154
+ const parsed = parseSpecifier(`${depSpec}@${depVersion}`);
155
+ if (!parsed) {
156
+ // Dependency specifier is not a DID-scoped package — skip.
157
+ continue;
158
+ }
159
+
160
+ const childNode = await buildNode(
161
+ ctx, parsed.did, parsed.name, parsed.version, ecosystem,
162
+ trustedAttestors, maxDepth, depth + 1, visited, failures,
163
+ );
164
+
165
+ node.dependencies.push(childNode);
166
+ }
167
+
168
+ return node;
169
+ }
170
+
171
+ // ---------------------------------------------------------------------------
172
+ // Formatting
173
+ // ---------------------------------------------------------------------------
174
+
175
+ /**
176
+ * Format a trust chain tree as an indented string for CLI output.
177
+ */
178
+ export function formatTrustChain(result: TrustChainResult): string {
179
+ const lines: string[] = [];
180
+
181
+ lines.push(`Trust chain for ${result.root.specifier}`);
182
+ lines.push(` Total packages checked: ${result.totalChecked}`);
183
+ lines.push(` All passed: ${result.allPassed ? 'yes' : 'NO'}`);
184
+
185
+ if (result.failures.length > 0) {
186
+ lines.push(' Failures:');
187
+ for (const f of result.failures) {
188
+ lines.push(` - ${f}`);
189
+ }
190
+ }
191
+
192
+ lines.push('');
193
+ formatNode(result.root, lines, 0);
194
+
195
+ return lines.join('\n');
196
+ }
197
+
198
+ function formatNode(node: TrustChainNode, lines: string[], depth: number): void {
199
+ const indent = ' '.repeat(depth);
200
+ const status = node.verification.passed ? 'PASS' : 'FAIL';
201
+ lines.push(`${indent}${status} ${node.specifier}`);
202
+
203
+ for (const check of node.verification.checks) {
204
+ const mark = check.passed ? '+' : 'x';
205
+ lines.push(`${indent} [${mark}] ${check.check}: ${check.detail}`);
206
+ }
207
+
208
+ if (node.verification.attestations.length > 0) {
209
+ for (const att of node.verification.attestations) {
210
+ lines.push(`${indent} [a] ${att.claim} by ${att.attestorDid}`);
211
+ }
212
+ }
213
+
214
+ for (const child of node.dependencies) {
215
+ formatNode(child, lines, depth + 1);
216
+ }
217
+ }
@@ -0,0 +1,237 @@
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
+
18
+ import type { AgentContext } from '../cli/agent.js';
19
+
20
+ import { DateSort } from '@enbox/dwn-sdk-js';
21
+
22
+ // ---------------------------------------------------------------------------
23
+ // Types
24
+ // ---------------------------------------------------------------------------
25
+
26
+ /** Individual verification check result. */
27
+ export type VerificationCheck = {
28
+ check : string;
29
+ passed : boolean;
30
+ detail : string;
31
+ };
32
+
33
+ /** Attestation record as returned by the DWN. */
34
+ export type AttestationRecord = {
35
+ attestorDid : string;
36
+ claim : string;
37
+ sourceCommit : string | undefined;
38
+ sourceRepo : string | undefined;
39
+ dateCreated : string;
40
+ };
41
+
42
+ /** Full verification result for a package version. */
43
+ export type VerificationResult = {
44
+ passed : boolean;
45
+ publisherDid : string;
46
+ packageName : string;
47
+ version : string;
48
+ checks : VerificationCheck[];
49
+ attestations : AttestationRecord[];
50
+ };
51
+
52
+ // ---------------------------------------------------------------------------
53
+ // Attestation queries
54
+ // ---------------------------------------------------------------------------
55
+
56
+ /**
57
+ * Fetch attestation records for a specific package version.
58
+ */
59
+ export async function fetchAttestations(
60
+ ctx: AgentContext,
61
+ targetDid: string,
62
+ versionContextId: string,
63
+ ): Promise<AttestationRecord[]> {
64
+ const from = targetDid === ctx.did ? undefined : targetDid;
65
+
66
+ const { records } = await ctx.registry.records.query('package/version/attestation' as any, {
67
+ from,
68
+ filter : { contextId: versionContextId },
69
+ dateSort : DateSort.CreatedAscending,
70
+ });
71
+
72
+ const attestations: AttestationRecord[] = [];
73
+ for (const rec of records) {
74
+ const data = await rec.data.json() as Record<string, unknown>;
75
+ attestations.push({
76
+ attestorDid : String(data.attestorDid ?? ''),
77
+ claim : String(data.claim ?? ''),
78
+ sourceCommit : data.sourceCommit as string | undefined,
79
+ sourceRepo : data.sourceRepo as string | undefined,
80
+ dateCreated : rec.dateCreated,
81
+ });
82
+ }
83
+
84
+ return attestations;
85
+ }
86
+
87
+ // ---------------------------------------------------------------------------
88
+ // Verification
89
+ // ---------------------------------------------------------------------------
90
+
91
+ /**
92
+ * Verify a package version's integrity and provenance.
93
+ *
94
+ * Performs the following checks:
95
+ * 1. Package record exists and is owned by the expected DID
96
+ * 2. Version record exists and is authored by the publisher
97
+ * 3. Tarball exists and is non-empty
98
+ * 4. Attestations are present (informational — not required to pass)
99
+ *
100
+ * @param ctx - Agent context
101
+ * @param targetDid - Expected publisher DID
102
+ * @param name - Package name
103
+ * @param semver - Version string
104
+ * @param ecosystem - Ecosystem (default: 'npm')
105
+ * @param trustedAttestors - DIDs of trusted attestors (optional)
106
+ */
107
+ export async function verifyPackageVersion(
108
+ ctx: AgentContext,
109
+ targetDid: string,
110
+ name: string,
111
+ semver: string,
112
+ ecosystem: string = 'npm',
113
+ trustedAttestors: string[] = [],
114
+ ): Promise<VerificationResult> {
115
+ const checks: VerificationCheck[] = [];
116
+ const from = targetDid === ctx.did ? undefined : targetDid;
117
+
118
+ // -------------------------------------------------------------------------
119
+ // 1. Package record exists
120
+ // -------------------------------------------------------------------------
121
+ const { records: pkgRecords } = await ctx.registry.records.query('package', {
122
+ from,
123
+ filter: { tags: { name, ecosystem } },
124
+ });
125
+
126
+ if (pkgRecords.length === 0) {
127
+ checks.push({ check: 'package-exists', passed: false, detail: `Package '${name}' not found on ${targetDid}` });
128
+ return { passed: false, publisherDid: targetDid, packageName: name, version: semver, checks, attestations: [] };
129
+ }
130
+
131
+ const pkgRec = pkgRecords[0];
132
+ checks.push({ check: 'package-exists', passed: true, detail: `Package '${name}' found` });
133
+
134
+ // -------------------------------------------------------------------------
135
+ // 2. Publisher matches — the record author is the expected DID
136
+ // -------------------------------------------------------------------------
137
+ const authorMatchesPkg = pkgRec.author === targetDid || pkgRec.creator === targetDid;
138
+ checks.push({
139
+ check : 'publisher-match',
140
+ passed : authorMatchesPkg,
141
+ detail : authorMatchesPkg
142
+ ? `Package authored by ${targetDid}`
143
+ : `Package author ${pkgRec.author} does not match expected ${targetDid}`,
144
+ });
145
+
146
+ // -------------------------------------------------------------------------
147
+ // 3. Version record exists and is authored by the publisher
148
+ // -------------------------------------------------------------------------
149
+ const { records: verRecords } = await ctx.registry.records.query('package/version' as any, {
150
+ from,
151
+ filter: {
152
+ contextId : pkgRec.contextId,
153
+ tags : { semver },
154
+ },
155
+ });
156
+
157
+ if (verRecords.length === 0) {
158
+ checks.push({ check: 'version-exists', passed: false, detail: `Version ${semver} not found` });
159
+ return { passed: false, publisherDid: targetDid, packageName: name, version: semver, checks, attestations: [] };
160
+ }
161
+
162
+ const verRec = verRecords[0];
163
+ checks.push({ check: 'version-exists', passed: true, detail: `Version ${semver} found` });
164
+
165
+ const authorMatchesVer = verRec.author === targetDid || verRec.creator === targetDid;
166
+ checks.push({
167
+ check : 'version-author',
168
+ passed : authorMatchesVer,
169
+ detail : authorMatchesVer
170
+ ? `Version authored by ${targetDid}`
171
+ : `Version author ${verRec.author} does not match expected ${targetDid}`,
172
+ });
173
+
174
+ // -------------------------------------------------------------------------
175
+ // 4. Tarball exists and is non-empty
176
+ // -------------------------------------------------------------------------
177
+ const { records: tarRecords } = await ctx.registry.records.query('package/version/tarball' as any, {
178
+ from,
179
+ filter: { contextId: verRec.contextId },
180
+ });
181
+
182
+ if (tarRecords.length === 0) {
183
+ checks.push({ check: 'tarball-exists', passed: false, detail: 'No tarball found' });
184
+ } else {
185
+ const tarRec = tarRecords[0];
186
+ const size = tarRec.dataSize ?? 0;
187
+ const hasData = size > 0;
188
+ checks.push({
189
+ check : 'tarball-exists',
190
+ passed : hasData,
191
+ detail : hasData ? `Tarball present (${size} bytes)` : 'Tarball is empty',
192
+ });
193
+ }
194
+
195
+ // -------------------------------------------------------------------------
196
+ // 5. Attestations
197
+ // -------------------------------------------------------------------------
198
+ const attestations = await fetchAttestations(ctx, targetDid, verRec.contextId ?? '');
199
+
200
+ if (attestations.length > 0) {
201
+ checks.push({
202
+ check : 'has-attestations',
203
+ passed : true,
204
+ detail : `${attestations.length} attestation(s) found`,
205
+ });
206
+ } else {
207
+ checks.push({
208
+ check : 'has-attestations',
209
+ passed : true, // Informational — not required
210
+ detail : 'No attestations (none required)',
211
+ });
212
+ }
213
+
214
+ // -------------------------------------------------------------------------
215
+ // 6. Trusted attestor check (only if trustedAttestors provided)
216
+ // -------------------------------------------------------------------------
217
+ if (trustedAttestors.length > 0) {
218
+ const trustedFound = attestations.filter(
219
+ (a) => trustedAttestors.includes(a.attestorDid),
220
+ );
221
+
222
+ checks.push({
223
+ check : 'trusted-attestor',
224
+ passed : trustedFound.length > 0,
225
+ detail : trustedFound.length > 0
226
+ ? `${trustedFound.length} trusted attestation(s): ${trustedFound.map((a) => a.claim).join(', ')}`
227
+ : `No attestations from trusted attestors: ${trustedAttestors.join(', ')}`,
228
+ });
229
+ }
230
+
231
+ // -------------------------------------------------------------------------
232
+ // Overall result
233
+ // -------------------------------------------------------------------------
234
+ const passed = checks.every((c) => c.passed);
235
+
236
+ return { passed, publisherDid: targetDid, packageName: name, version: semver, checks, attestations };
237
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Go module proxy shim module — DID-scoped module resolution via the
3
+ * GOPROXY HTTP protocol.
4
+ *
5
+ * @module
6
+ */
7
+
8
+ export { handleGoProxyRequest, parseGoModulePath } from './proxy.js';
9
+
10
+ export type { GoProxyResponse } from './proxy.js';
11
+
12
+ export { startGoShim } from './server.js';
13
+
14
+ export type { GoShimOptions } from './server.js';