@labacacia/nps-sdk 1.0.0-alpha.4 → 1.0.0-alpha.6

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 (363) hide show
  1. package/CHANGELOG.cn.md +2 -73
  2. package/CHANGELOG.md +2 -82
  3. package/CONTRIBUTING.cn.md +0 -0
  4. package/CONTRIBUTING.md +0 -0
  5. package/LICENSE +0 -0
  6. package/NOTICE +0 -0
  7. package/README.cn.md +3 -3
  8. package/README.md +3 -3
  9. package/doc/nps-sdk.core.cn.md +0 -0
  10. package/doc/nps-sdk.core.md +0 -0
  11. package/doc/nps-sdk.ncp.cn.md +0 -0
  12. package/doc/nps-sdk.ncp.md +0 -0
  13. package/doc/nps-sdk.ndp.cn.md +0 -0
  14. package/doc/nps-sdk.ndp.md +0 -0
  15. package/doc/nps-sdk.nip.cn.md +30 -0
  16. package/doc/nps-sdk.nip.md +30 -0
  17. package/doc/nps-sdk.nop.cn.md +0 -0
  18. package/doc/nps-sdk.nop.md +0 -0
  19. package/doc/nps-sdk.nwp.cn.md +71 -0
  20. package/doc/nps-sdk.nwp.md +71 -0
  21. package/doc/overview.cn.md +0 -0
  22. package/doc/overview.md +0 -0
  23. package/nip-ca-server/Dockerfile +0 -0
  24. package/nip-ca-server/README.md +1 -1
  25. package/nip-ca-server/db/001_init.sql +0 -0
  26. package/nip-ca-server/docker-compose.yml +0 -0
  27. package/nip-ca-server/package.json +0 -0
  28. package/nip-ca-server/src/ca.ts +0 -0
  29. package/nip-ca-server/src/db.ts +0 -0
  30. package/nip-ca-server/src/index.ts +0 -0
  31. package/nip-ca-server/tsconfig.json +0 -0
  32. package/package.json +1 -1
  33. package/src/core/anchor-cache.ts +0 -0
  34. package/src/core/cache.ts +0 -0
  35. package/src/core/canonical-json.ts +0 -0
  36. package/src/core/codec.ts +0 -0
  37. package/src/core/codecs/index.ts +0 -0
  38. package/src/core/codecs/ncp-codec.ts +0 -0
  39. package/src/core/codecs/tier1-json-codec.ts +0 -0
  40. package/src/core/codecs/tier2-msgpack-codec.ts +0 -0
  41. package/src/core/crypto-provider.ts +0 -0
  42. package/src/core/exceptions.ts +0 -0
  43. package/src/core/frame-header.ts +0 -0
  44. package/src/core/frame-registry.ts +0 -0
  45. package/src/core/frames.ts +0 -0
  46. package/src/core/index.ts +0 -0
  47. package/src/core/registry.ts +0 -0
  48. package/src/core/status-codes.ts +1 -0
  49. package/src/ncp/frames/anchor-frame.ts +0 -0
  50. package/src/ncp/frames/caps-frame.ts +0 -0
  51. package/src/ncp/frames/diff-frame.ts +0 -0
  52. package/src/ncp/frames/error-frame.ts +0 -0
  53. package/src/ncp/frames/hello-frame.ts +0 -0
  54. package/src/ncp/frames/stream-frame.ts +0 -0
  55. package/src/ncp/frames.ts +0 -0
  56. package/src/ncp/handshake.ts +0 -0
  57. package/src/ncp/ncp-patch-format.ts +0 -0
  58. package/src/ncp/registry.ts +0 -0
  59. package/src/ncp/stream-manager.ts +0 -0
  60. package/src/ndp/dns-txt.ts +86 -0
  61. package/src/ndp/frames.ts +0 -0
  62. package/src/ndp/index.ts +1 -0
  63. package/src/ndp/ndp-registry.ts +34 -0
  64. package/src/ndp/registry.ts +0 -0
  65. package/src/ndp/validator.ts +0 -0
  66. package/src/nip/assurance-level.ts +6 -1
  67. package/src/nip/error-codes.ts +4 -2
  68. package/src/nip/identity.ts +0 -0
  69. package/src/nip/registry.ts +0 -0
  70. package/src/nip/x509/oids.ts +3 -4
  71. package/src/nop/client.ts +1 -1
  72. package/src/nop/frames.ts +0 -0
  73. package/src/nop/index.ts +0 -0
  74. package/src/nop/models.ts +0 -0
  75. package/src/nop/nop-types.ts +0 -0
  76. package/src/nop/registry.ts +0 -0
  77. package/src/nwp/client.ts +4 -4
  78. package/src/nwp/frames.ts +0 -0
  79. package/src/nwp/index.ts +0 -0
  80. package/src/nwp/registry.ts +0 -0
  81. package/src/setup.ts +0 -0
  82. package/tests/core/anchor-cache.test.ts +0 -0
  83. package/tests/core/codec.test.ts +0 -0
  84. package/tests/core/frame-registry.test.ts +0 -0
  85. package/tests/core.test.ts +0 -0
  86. package/tests/ncp/diff-binary-bitset.test.ts +0 -0
  87. package/tests/ncp/e2e-enc-reject.test.ts +0 -0
  88. package/tests/ncp/err-error-frame.test.ts +0 -0
  89. package/tests/ncp/frames.test.ts +0 -0
  90. package/tests/ncp/framing.test.ts +0 -0
  91. package/tests/ncp/hello-frame.test.ts +0 -0
  92. package/tests/ncp/inline-anchor.test.ts +0 -0
  93. package/tests/ncp/security.test.ts +0 -0
  94. package/tests/ncp/stream-window.test.ts +0 -0
  95. package/tests/ncp/stream.test.ts +0 -0
  96. package/tests/ncp/version-negotiation.test.ts +0 -0
  97. package/tests/ndp.test.ts +106 -0
  98. package/tests/nip.test.ts +0 -0
  99. package/tests/nop.test.ts +0 -0
  100. package/tests/nwp.test.ts +0 -0
  101. package/tsconfig.json +0 -0
  102. package/tsup.config.ts +0 -0
  103. package/vitest.config.ts +0 -0
  104. package/dist/core/anchor-cache.d.ts +0 -42
  105. package/dist/core/anchor-cache.d.ts.map +0 -1
  106. package/dist/core/anchor-cache.js +0 -104
  107. package/dist/core/anchor-cache.js.map +0 -1
  108. package/dist/core/cache.d.ts +0 -14
  109. package/dist/core/cache.d.ts.map +0 -1
  110. package/dist/core/cache.js +0 -80
  111. package/dist/core/cache.js.map +0 -1
  112. package/dist/core/canonical-json.d.ts +0 -12
  113. package/dist/core/canonical-json.d.ts.map +0 -1
  114. package/dist/core/canonical-json.js +0 -44
  115. package/dist/core/canonical-json.js.map +0 -1
  116. package/dist/core/codec.d.ts +0 -32
  117. package/dist/core/codec.d.ts.map +0 -1
  118. package/dist/core/codec.js +0 -119
  119. package/dist/core/codec.js.map +0 -1
  120. package/dist/core/codecs/index.d.ts +0 -4
  121. package/dist/core/codecs/index.d.ts.map +0 -1
  122. package/dist/core/codecs/index.js +0 -6
  123. package/dist/core/codecs/index.js.map +0 -1
  124. package/dist/core/codecs/ncp-codec.d.ts +0 -39
  125. package/dist/core/codecs/ncp-codec.d.ts.map +0 -1
  126. package/dist/core/codecs/ncp-codec.js +0 -93
  127. package/dist/core/codecs/ncp-codec.js.map +0 -1
  128. package/dist/core/codecs/tier1-json-codec.d.ts +0 -10
  129. package/dist/core/codecs/tier1-json-codec.d.ts.map +0 -1
  130. package/dist/core/codecs/tier1-json-codec.js +0 -28
  131. package/dist/core/codecs/tier1-json-codec.js.map +0 -1
  132. package/dist/core/codecs/tier2-msgpack-codec.d.ts +0 -10
  133. package/dist/core/codecs/tier2-msgpack-codec.d.ts.map +0 -1
  134. package/dist/core/codecs/tier2-msgpack-codec.js +0 -26
  135. package/dist/core/codecs/tier2-msgpack-codec.js.map +0 -1
  136. package/dist/core/crypto-provider.d.ts +0 -31
  137. package/dist/core/crypto-provider.d.ts.map +0 -1
  138. package/dist/core/crypto-provider.js +0 -10
  139. package/dist/core/crypto-provider.js.map +0 -1
  140. package/dist/core/exceptions.d.ts +0 -27
  141. package/dist/core/exceptions.d.ts.map +0 -1
  142. package/dist/core/exceptions.js +0 -52
  143. package/dist/core/exceptions.js.map +0 -1
  144. package/dist/core/frame-header.d.ts +0 -87
  145. package/dist/core/frame-header.d.ts.map +0 -1
  146. package/dist/core/frame-header.js +0 -185
  147. package/dist/core/frame-header.js.map +0 -1
  148. package/dist/core/frame-registry.d.ts +0 -35
  149. package/dist/core/frame-registry.d.ts.map +0 -1
  150. package/dist/core/frame-registry.js +0 -63
  151. package/dist/core/frame-registry.js.map +0 -1
  152. package/dist/core/frames.d.ts +0 -81
  153. package/dist/core/frames.d.ts.map +0 -1
  154. package/dist/core/frames.js +0 -154
  155. package/dist/core/frames.js.map +0 -1
  156. package/dist/core/index.d.ts +0 -11
  157. package/dist/core/index.d.ts.map +0 -1
  158. package/dist/core/index.js +0 -22
  159. package/dist/core/index.js.map +0 -1
  160. package/dist/core/registry.d.ts +0 -11
  161. package/dist/core/registry.d.ts.map +0 -1
  162. package/dist/core/registry.js +0 -17
  163. package/dist/core/registry.js.map +0 -1
  164. package/dist/core/status-codes.d.ts +0 -28
  165. package/dist/core/status-codes.d.ts.map +0 -1
  166. package/dist/core/status-codes.js +0 -38
  167. package/dist/core/status-codes.js.map +0 -1
  168. package/dist/index.d.ts +0 -2
  169. package/dist/index.d.ts.map +0 -1
  170. package/dist/index.js +0 -10
  171. package/dist/index.js.map +0 -1
  172. package/dist/ncp/frames/anchor-frame.d.ts +0 -29
  173. package/dist/ncp/frames/anchor-frame.d.ts.map +0 -1
  174. package/dist/ncp/frames/anchor-frame.js +0 -54
  175. package/dist/ncp/frames/anchor-frame.js.map +0 -1
  176. package/dist/ncp/frames/caps-frame.d.ts +0 -29
  177. package/dist/ncp/frames/caps-frame.d.ts.map +0 -1
  178. package/dist/ncp/frames/caps-frame.js +0 -29
  179. package/dist/ncp/frames/caps-frame.js.map +0 -1
  180. package/dist/ncp/frames/diff-frame.d.ts +0 -32
  181. package/dist/ncp/frames/diff-frame.d.ts.map +0 -1
  182. package/dist/ncp/frames/diff-frame.js +0 -37
  183. package/dist/ncp/frames/diff-frame.js.map +0 -1
  184. package/dist/ncp/frames/error-frame.d.ts +0 -16
  185. package/dist/ncp/frames/error-frame.d.ts.map +0 -1
  186. package/dist/ncp/frames/error-frame.js +0 -13
  187. package/dist/ncp/frames/error-frame.js.map +0 -1
  188. package/dist/ncp/frames/hello-frame.d.ts +0 -21
  189. package/dist/ncp/frames/hello-frame.d.ts.map +0 -1
  190. package/dist/ncp/frames/hello-frame.js +0 -25
  191. package/dist/ncp/frames/hello-frame.js.map +0 -1
  192. package/dist/ncp/frames/stream-frame.d.ts +0 -16
  193. package/dist/ncp/frames/stream-frame.d.ts.map +0 -1
  194. package/dist/ncp/frames/stream-frame.js +0 -18
  195. package/dist/ncp/frames/stream-frame.js.map +0 -1
  196. package/dist/ncp/frames.d.ts +0 -94
  197. package/dist/ncp/frames.d.ts.map +0 -1
  198. package/dist/ncp/frames.js +0 -192
  199. package/dist/ncp/frames.js.map +0 -1
  200. package/dist/ncp/handshake.d.ts +0 -30
  201. package/dist/ncp/handshake.d.ts.map +0 -1
  202. package/dist/ncp/handshake.js +0 -80
  203. package/dist/ncp/handshake.js.map +0 -1
  204. package/dist/ncp/index.d.ts +0 -12
  205. package/dist/ncp/index.d.ts.map +0 -1
  206. package/dist/ncp/index.js +0 -14
  207. package/dist/ncp/index.js.map +0 -1
  208. package/dist/ncp/ncp-error-codes.d.ts +0 -23
  209. package/dist/ncp/ncp-error-codes.d.ts.map +0 -1
  210. package/dist/ncp/ncp-error-codes.js +0 -34
  211. package/dist/ncp/ncp-error-codes.js.map +0 -1
  212. package/dist/ncp/ncp-patch-format.d.ts +0 -7
  213. package/dist/ncp/ncp-patch-format.d.ts.map +0 -1
  214. package/dist/ncp/ncp-patch-format.js +0 -13
  215. package/dist/ncp/ncp-patch-format.js.map +0 -1
  216. package/dist/ncp/preamble.d.ts +0 -47
  217. package/dist/ncp/preamble.d.ts.map +0 -1
  218. package/dist/ncp/preamble.js +0 -74
  219. package/dist/ncp/preamble.js.map +0 -1
  220. package/dist/ncp/registry.d.ts +0 -3
  221. package/dist/ncp/registry.d.ts.map +0 -1
  222. package/dist/ncp/registry.js +0 -13
  223. package/dist/ncp/registry.js.map +0 -1
  224. package/dist/ncp/stream-manager.d.ts +0 -57
  225. package/dist/ncp/stream-manager.d.ts.map +0 -1
  226. package/dist/ncp/stream-manager.js +0 -163
  227. package/dist/ncp/stream-manager.js.map +0 -1
  228. package/dist/ndp/frames.d.ts +0 -56
  229. package/dist/ndp/frames.d.ts.map +0 -1
  230. package/dist/ndp/frames.js +0 -87
  231. package/dist/ndp/frames.js.map +0 -1
  232. package/dist/ndp/index.d.ts +0 -5
  233. package/dist/ndp/index.d.ts.map +0 -1
  234. package/dist/ndp/index.js +0 -7
  235. package/dist/ndp/index.js.map +0 -1
  236. package/dist/ndp/ndp-registry.d.ts +0 -11
  237. package/dist/ndp/ndp-registry.d.ts.map +0 -1
  238. package/dist/ndp/ndp-registry.js +0 -79
  239. package/dist/ndp/ndp-registry.js.map +0 -1
  240. package/dist/ndp/registry.d.ts +0 -3
  241. package/dist/ndp/registry.d.ts.map +0 -1
  242. package/dist/ndp/registry.js +0 -10
  243. package/dist/ndp/registry.js.map +0 -1
  244. package/dist/ndp/validator.d.ts +0 -18
  245. package/dist/ndp/validator.d.ts.map +0 -1
  246. package/dist/ndp/validator.js +0 -48
  247. package/dist/ndp/validator.js.map +0 -1
  248. package/dist/nip/acme/client.d.ts +0 -31
  249. package/dist/nip/acme/client.d.ts.map +0 -1
  250. package/dist/nip/acme/client.js +0 -136
  251. package/dist/nip/acme/client.js.map +0 -1
  252. package/dist/nip/acme/index.d.ts +0 -6
  253. package/dist/nip/acme/index.d.ts.map +0 -1
  254. package/dist/nip/acme/index.js +0 -8
  255. package/dist/nip/acme/index.js.map +0 -1
  256. package/dist/nip/acme/jws.d.ts +0 -31
  257. package/dist/nip/acme/jws.d.ts.map +0 -1
  258. package/dist/nip/acme/jws.js +0 -76
  259. package/dist/nip/acme/jws.js.map +0 -1
  260. package/dist/nip/acme/messages.d.ts +0 -71
  261. package/dist/nip/acme/messages.d.ts.map +0 -1
  262. package/dist/nip/acme/messages.js +0 -4
  263. package/dist/nip/acme/messages.js.map +0 -1
  264. package/dist/nip/acme/server.d.ts +0 -41
  265. package/dist/nip/acme/server.d.ts.map +0 -1
  266. package/dist/nip/acme/server.js +0 -458
  267. package/dist/nip/acme/server.js.map +0 -1
  268. package/dist/nip/acme/wire.d.ts +0 -19
  269. package/dist/nip/acme/wire.d.ts.map +0 -1
  270. package/dist/nip/acme/wire.js +0 -21
  271. package/dist/nip/acme/wire.js.map +0 -1
  272. package/dist/nip/assurance-level.d.ts +0 -14
  273. package/dist/nip/assurance-level.d.ts.map +0 -1
  274. package/dist/nip/assurance-level.js +0 -33
  275. package/dist/nip/assurance-level.js.map +0 -1
  276. package/dist/nip/cert-format.d.ts +0 -5
  277. package/dist/nip/cert-format.d.ts.map +0 -1
  278. package/dist/nip/cert-format.js +0 -6
  279. package/dist/nip/cert-format.js.map +0 -1
  280. package/dist/nip/error-codes.d.ts +0 -23
  281. package/dist/nip/error-codes.d.ts.map +0 -1
  282. package/dist/nip/error-codes.js +0 -30
  283. package/dist/nip/error-codes.js.map +0 -1
  284. package/dist/nip/frames.d.ts +0 -53
  285. package/dist/nip/frames.d.ts.map +0 -1
  286. package/dist/nip/frames.js +0 -106
  287. package/dist/nip/frames.js.map +0 -1
  288. package/dist/nip/identity.d.ts +0 -18
  289. package/dist/nip/identity.d.ts.map +0 -1
  290. package/dist/nip/identity.js +0 -94
  291. package/dist/nip/identity.js.map +0 -1
  292. package/dist/nip/index.d.ts +0 -10
  293. package/dist/nip/index.d.ts.map +0 -1
  294. package/dist/nip/index.js +0 -13
  295. package/dist/nip/index.js.map +0 -1
  296. package/dist/nip/registry.d.ts +0 -3
  297. package/dist/nip/registry.d.ts.map +0 -1
  298. package/dist/nip/registry.js +0 -10
  299. package/dist/nip/registry.js.map +0 -1
  300. package/dist/nip/verifier.d.ts +0 -23
  301. package/dist/nip/verifier.d.ts.map +0 -1
  302. package/dist/nip/verifier.js +0 -90
  303. package/dist/nip/verifier.js.map +0 -1
  304. package/dist/nip/x509/builder.d.ts +0 -35
  305. package/dist/nip/x509/builder.d.ts.map +0 -1
  306. package/dist/nip/x509/builder.js +0 -59
  307. package/dist/nip/x509/builder.js.map +0 -1
  308. package/dist/nip/x509/index.d.ts +0 -4
  309. package/dist/nip/x509/index.d.ts.map +0 -1
  310. package/dist/nip/x509/index.js +0 -6
  311. package/dist/nip/x509/index.js.map +0 -1
  312. package/dist/nip/x509/oids.d.ts +0 -17
  313. package/dist/nip/x509/oids.d.ts.map +0 -1
  314. package/dist/nip/x509/oids.js +0 -23
  315. package/dist/nip/x509/oids.js.map +0 -1
  316. package/dist/nip/x509/verifier.d.ts +0 -26
  317. package/dist/nip/x509/verifier.d.ts.map +0 -1
  318. package/dist/nip/x509/verifier.js +0 -171
  319. package/dist/nip/x509/verifier.js.map +0 -1
  320. package/dist/nop/client.d.ts +0 -34
  321. package/dist/nop/client.d.ts.map +0 -1
  322. package/dist/nop/client.js +0 -90
  323. package/dist/nop/client.js.map +0 -1
  324. package/dist/nop/frames.d.ts +0 -65
  325. package/dist/nop/frames.d.ts.map +0 -1
  326. package/dist/nop/frames.js +0 -148
  327. package/dist/nop/frames.js.map +0 -1
  328. package/dist/nop/index.d.ts +0 -5
  329. package/dist/nop/index.d.ts.map +0 -1
  330. package/dist/nop/index.js +0 -7
  331. package/dist/nop/index.js.map +0 -1
  332. package/dist/nop/models.d.ts +0 -58
  333. package/dist/nop/models.d.ts.map +0 -1
  334. package/dist/nop/models.js +0 -50
  335. package/dist/nop/models.js.map +0 -1
  336. package/dist/nop/nop-types.d.ts +0 -136
  337. package/dist/nop/nop-types.d.ts.map +0 -1
  338. package/dist/nop/nop-types.js +0 -44
  339. package/dist/nop/nop-types.js.map +0 -1
  340. package/dist/nop/registry.d.ts +0 -3
  341. package/dist/nop/registry.d.ts.map +0 -1
  342. package/dist/nop/registry.js +0 -11
  343. package/dist/nop/registry.js.map +0 -1
  344. package/dist/nwp/client.d.ts +0 -22
  345. package/dist/nwp/client.d.ts.map +0 -1
  346. package/dist/nwp/client.js +0 -101
  347. package/dist/nwp/client.js.map +0 -1
  348. package/dist/nwp/frames.d.ts +0 -46
  349. package/dist/nwp/frames.d.ts.map +0 -1
  350. package/dist/nwp/frames.js +0 -81
  351. package/dist/nwp/frames.js.map +0 -1
  352. package/dist/nwp/index.d.ts +0 -4
  353. package/dist/nwp/index.d.ts.map +0 -1
  354. package/dist/nwp/index.js +0 -6
  355. package/dist/nwp/index.js.map +0 -1
  356. package/dist/nwp/registry.d.ts +0 -3
  357. package/dist/nwp/registry.d.ts.map +0 -1
  358. package/dist/nwp/registry.js +0 -9
  359. package/dist/nwp/registry.js.map +0 -1
  360. package/dist/setup.d.ts +0 -10
  361. package/dist/setup.d.ts.map +0 -1
  362. package/dist/setup.js +0 -29
  363. package/dist/setup.js.map +0 -1
@@ -1,148 +0,0 @@
1
- // Copyright 2026 INNO LOTUS PTY LTD
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { EncodingTier, FrameType } from "../core/frames.js";
4
- // ── TaskFrame ─────────────────────────────────────────────────────────────────
5
- export class TaskFrame {
6
- taskId;
7
- dag;
8
- timeoutMs;
9
- callbackUrl;
10
- context;
11
- priority;
12
- depth;
13
- frameType = FrameType.TASK;
14
- preferredTier = EncodingTier.MSGPACK;
15
- constructor(taskId, dag, timeoutMs, callbackUrl, context, priority, depth) {
16
- this.taskId = taskId;
17
- this.dag = dag;
18
- this.timeoutMs = timeoutMs;
19
- this.callbackUrl = callbackUrl;
20
- this.context = context;
21
- this.priority = priority;
22
- this.depth = depth;
23
- }
24
- toDict() {
25
- return {
26
- task_id: this.taskId,
27
- dag: this.dag,
28
- timeout_ms: this.timeoutMs ?? null,
29
- callback_url: this.callbackUrl ?? null,
30
- context: this.context ?? null,
31
- priority: this.priority ?? null,
32
- depth: this.depth ?? null,
33
- };
34
- }
35
- static fromDict(data) {
36
- return new TaskFrame(data["task_id"], data["dag"], data["timeout_ms"] ?? undefined, data["callback_url"] ?? undefined, data["context"] ?? undefined, data["priority"] ?? undefined, data["depth"] ?? undefined);
37
- }
38
- }
39
- // ── DelegateFrame ─────────────────────────────────────────────────────────────
40
- export class DelegateFrame {
41
- taskId;
42
- subtaskId;
43
- action;
44
- agentNid;
45
- inputs;
46
- params;
47
- idempotencyKey;
48
- frameType = FrameType.DELEGATE;
49
- preferredTier = EncodingTier.MSGPACK;
50
- constructor(taskId, subtaskId, action, agentNid, inputs, params, idempotencyKey) {
51
- this.taskId = taskId;
52
- this.subtaskId = subtaskId;
53
- this.action = action;
54
- this.agentNid = agentNid;
55
- this.inputs = inputs;
56
- this.params = params;
57
- this.idempotencyKey = idempotencyKey;
58
- }
59
- toDict() {
60
- return {
61
- task_id: this.taskId,
62
- subtask_id: this.subtaskId,
63
- action: this.action,
64
- agent_nid: this.agentNid,
65
- inputs: this.inputs ?? null,
66
- params: this.params ?? null,
67
- idempotency_key: this.idempotencyKey ?? null,
68
- };
69
- }
70
- static fromDict(data) {
71
- return new DelegateFrame(data["task_id"], data["subtask_id"], data["action"], data["agent_nid"], data["inputs"] ?? undefined, data["params"] ?? undefined, data["idempotency_key"] ?? undefined);
72
- }
73
- }
74
- // ── SyncFrame ─────────────────────────────────────────────────────────────────
75
- export class SyncFrame {
76
- taskId;
77
- syncId;
78
- waitFor;
79
- minRequired;
80
- aggregate;
81
- timeoutMs;
82
- frameType = FrameType.SYNC;
83
- preferredTier = EncodingTier.MSGPACK;
84
- constructor(taskId, syncId, waitFor, minRequired = 0, aggregate = "merge", timeoutMs) {
85
- this.taskId = taskId;
86
- this.syncId = syncId;
87
- this.waitFor = waitFor;
88
- this.minRequired = minRequired;
89
- this.aggregate = aggregate;
90
- this.timeoutMs = timeoutMs;
91
- }
92
- toDict() {
93
- return {
94
- task_id: this.taskId,
95
- sync_id: this.syncId,
96
- wait_for: this.waitFor,
97
- min_required: this.minRequired,
98
- aggregate: this.aggregate,
99
- timeout_ms: this.timeoutMs ?? null,
100
- };
101
- }
102
- static fromDict(data) {
103
- return new SyncFrame(data["task_id"], data["sync_id"], data["wait_for"], data["min_required"] ?? 0, data["aggregate"] ?? "merge", data["timeout_ms"] ?? undefined);
104
- }
105
- }
106
- // ── AlignStreamFrame ──────────────────────────────────────────────────────────
107
- export class AlignStreamFrame {
108
- streamId;
109
- taskId;
110
- subtaskId;
111
- seq;
112
- isFinal;
113
- senderNid;
114
- data;
115
- error;
116
- windowSize;
117
- frameType = FrameType.ALIGN_STREAM;
118
- preferredTier = EncodingTier.MSGPACK;
119
- constructor(streamId, taskId, subtaskId, seq, isFinal, senderNid, data, error, windowSize) {
120
- this.streamId = streamId;
121
- this.taskId = taskId;
122
- this.subtaskId = subtaskId;
123
- this.seq = seq;
124
- this.isFinal = isFinal;
125
- this.senderNid = senderNid;
126
- this.data = data;
127
- this.error = error;
128
- this.windowSize = windowSize;
129
- }
130
- toDict() {
131
- return {
132
- stream_id: this.streamId,
133
- task_id: this.taskId,
134
- subtask_id: this.subtaskId,
135
- seq: this.seq,
136
- is_final: this.isFinal,
137
- sender_nid: this.senderNid,
138
- data: this.data ?? null,
139
- error: this.error ? { error_code: this.error.errorCode, message: this.error.message ?? null } : null,
140
- window_size: this.windowSize ?? null,
141
- };
142
- }
143
- static fromDict(data) {
144
- const rawError = data["error"];
145
- return new AlignStreamFrame(data["stream_id"], data["task_id"], data["subtask_id"], data["seq"], data["is_final"], data["sender_nid"], data["data"] ?? undefined, rawError ? { errorCode: rawError.error_code, ...(rawError.message != null ? { message: rawError.message } : {}) } : undefined, data["window_size"] ?? undefined);
146
- }
147
- }
148
- //# sourceMappingURL=frames.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frames.js","sourceRoot":"","sources":["../../src/nop/frames.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- export * from "./models.js";
2
- export * from "./frames.js";
3
- export * from "./registry.js";
4
- export * from "./client.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nop/index.ts"],"names":[],"mappings":"AAGA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
package/dist/nop/index.js DELETED
@@ -1,7 +0,0 @@
1
- // Copyright 2026 INNO LOTUS PTY LTD
2
- // SPDX-License-Identifier: Apache-2.0
3
- export * from "./models.js";
4
- export * from "./frames.js";
5
- export * from "./registry.js";
6
- export * from "./client.js";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nop/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,sCAAsC;AAEtC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
@@ -1,58 +0,0 @@
1
- export declare enum TaskState {
2
- PENDING = "pending",
3
- PREFLIGHT = "preflight",
4
- RUNNING = "running",
5
- WAITING_SYNC = "waiting_sync",
6
- COMPLETED = "completed",
7
- FAILED = "failed",
8
- CANCELLED = "cancelled",
9
- SKIPPED = "skipped"
10
- }
11
- export declare enum TaskPriority {
12
- LOW = "low",
13
- NORMAL = "normal",
14
- HIGH = "high"
15
- }
16
- export declare enum BackoffStrategy {
17
- FIXED = "fixed",
18
- LINEAR = "linear",
19
- EXPONENTIAL = "exponential"
20
- }
21
- export declare enum AggregateStrategy {
22
- MERGE = "merge",
23
- FIRST = "first",
24
- FASTEST_K = "fastest_k",
25
- ALL = "all"
26
- }
27
- export interface RetryPolicy {
28
- maxRetries: number;
29
- backoff: BackoffStrategy;
30
- baseDelayMs?: number;
31
- maxDelayMs?: number;
32
- }
33
- export declare function computeDelayMs(policy: RetryPolicy, attempt: number): number;
34
- export interface TaskContext {
35
- sessionKey?: string;
36
- requesterNid?: string;
37
- traceId?: string;
38
- }
39
- export interface DagNode {
40
- id: string;
41
- action: string;
42
- agent: string;
43
- inputFrom?: readonly string[];
44
- inputMapping?: Record<string, string>;
45
- timeoutMs?: number;
46
- retryPolicy?: RetryPolicy;
47
- condition?: string;
48
- minRequired?: number;
49
- }
50
- export interface DagEdge {
51
- from: string;
52
- to: string;
53
- }
54
- export interface TaskDag {
55
- nodes: readonly DagNode[];
56
- edges: readonly DagEdge[];
57
- }
58
- //# sourceMappingURL=models.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/nop/models.ts"],"names":[],"mappings":"AAGA,oBAAY,SAAS;IACnB,OAAO,YAAkB;IACzB,SAAS,cAAkB;IAC3B,OAAO,YAAkB;IACzB,YAAY,iBAAkB;IAC9B,SAAS,cAAkB;IAC3B,MAAM,WAAkB;IACxB,SAAS,cAAkB;IAC3B,OAAO,YAAkB;CAC1B;AAED,oBAAY,YAAY;IACtB,GAAG,QAAW;IACd,MAAM,WAAW;IACjB,IAAI,SAAW;CAChB;AAED,oBAAY,eAAe;IACzB,KAAK,UAAgB;IACrB,MAAM,WAAgB;IACtB,WAAW,gBAAgB;CAC5B;AAED,oBAAY,iBAAiB;IAC3B,KAAK,UAAe;IACpB,KAAK,UAAe;IACpB,SAAS,cAAe;IACxB,GAAG,QAAe;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAI,MAAM,CAAC;IACrB,OAAO,EAAO,eAAe,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAG,MAAM,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAU3E;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAK,MAAM,CAAC;IACvB,YAAY,CAAC,EAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAQ,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAc,MAAM,CAAC;IACvB,MAAM,EAAU,MAAM,CAAC;IACvB,KAAK,EAAW,MAAM,CAAC;IACvB,SAAS,CAAC,EAAM,SAAS,MAAM,EAAE,CAAC;IAClC,YAAY,CAAC,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,SAAS,CAAC,EAAM,MAAM,CAAC;IACvB,WAAW,CAAC,EAAI,WAAW,CAAC;IAC5B,SAAS,CAAC,EAAM,MAAM,CAAC;IACvB,WAAW,CAAC,EAAI,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAI,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;IAC1B,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CAC3B"}
@@ -1,50 +0,0 @@
1
- // Copyright 2026 INNO LOTUS PTY LTD
2
- // SPDX-License-Identifier: Apache-2.0
3
- export var TaskState;
4
- (function (TaskState) {
5
- TaskState["PENDING"] = "pending";
6
- TaskState["PREFLIGHT"] = "preflight";
7
- TaskState["RUNNING"] = "running";
8
- TaskState["WAITING_SYNC"] = "waiting_sync";
9
- TaskState["COMPLETED"] = "completed";
10
- TaskState["FAILED"] = "failed";
11
- TaskState["CANCELLED"] = "cancelled";
12
- TaskState["SKIPPED"] = "skipped";
13
- })(TaskState || (TaskState = {}));
14
- export var TaskPriority;
15
- (function (TaskPriority) {
16
- TaskPriority["LOW"] = "low";
17
- TaskPriority["NORMAL"] = "normal";
18
- TaskPriority["HIGH"] = "high";
19
- })(TaskPriority || (TaskPriority = {}));
20
- export var BackoffStrategy;
21
- (function (BackoffStrategy) {
22
- BackoffStrategy["FIXED"] = "fixed";
23
- BackoffStrategy["LINEAR"] = "linear";
24
- BackoffStrategy["EXPONENTIAL"] = "exponential";
25
- })(BackoffStrategy || (BackoffStrategy = {}));
26
- export var AggregateStrategy;
27
- (function (AggregateStrategy) {
28
- AggregateStrategy["MERGE"] = "merge";
29
- AggregateStrategy["FIRST"] = "first";
30
- AggregateStrategy["FASTEST_K"] = "fastest_k";
31
- AggregateStrategy["ALL"] = "all";
32
- })(AggregateStrategy || (AggregateStrategy = {}));
33
- export function computeDelayMs(policy, attempt) {
34
- const base = policy.baseDelayMs ?? 1000;
35
- const cap = policy.maxDelayMs ?? 30_000;
36
- let delay;
37
- switch (policy.backoff) {
38
- case BackoffStrategy.FIXED:
39
- delay = base;
40
- break;
41
- case BackoffStrategy.LINEAR:
42
- delay = base * (attempt + 1);
43
- break;
44
- case BackoffStrategy.EXPONENTIAL:
45
- delay = base * Math.pow(2, attempt);
46
- break;
47
- }
48
- return Math.min(delay, cap);
49
- }
50
- //# sourceMappingURL=models.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/nop/models.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,sCAAsC;AAEtC,MAAM,CAAN,IAAY,SASX;AATD,WAAY,SAAS;IACnB,gCAAyB,CAAA;IACzB,oCAA2B,CAAA;IAC3B,gCAAyB,CAAA;IACzB,0CAA8B,CAAA;IAC9B,oCAA2B,CAAA;IAC3B,8BAAwB,CAAA;IACxB,oCAA2B,CAAA;IAC3B,gCAAyB,CAAA;AAC3B,CAAC,EATW,SAAS,KAAT,SAAS,QASpB;AAED,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,2BAAc,CAAA;IACd,iCAAiB,CAAA;IACjB,6BAAe,CAAA;AACjB,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AAED,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kCAAqB,CAAA;IACrB,oCAAsB,CAAA;IACtB,8CAA2B,CAAA;AAC7B,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,MAAM,CAAN,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,oCAAoB,CAAA;IACpB,oCAAoB,CAAA;IACpB,4CAAwB,CAAA;IACxB,gCAAkB,CAAA;AACpB,CAAC,EALW,iBAAiB,KAAjB,iBAAiB,QAK5B;AASD,MAAM,UAAU,cAAc,CAAC,MAAmB,EAAE,OAAe;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;IACxC,MAAM,GAAG,GAAI,MAAM,CAAC,UAAU,IAAK,MAAM,CAAC;IAC1C,IAAI,KAAa,CAAC;IAClB,QAAQ,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,KAAK,eAAe,CAAC,KAAK;YAAQ,KAAK,GAAG,IAAI,CAAC;YAAC,MAAM;QACtD,KAAK,eAAe,CAAC,MAAM;YAAO,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAAC,MAAM;QACtE,KAAK,eAAe,CAAC,WAAW;YAAE,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAAC,MAAM;IAC/E,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC"}
@@ -1,136 +0,0 @@
1
- /** NCP protocol version marker */
2
- type NcpVersion = 1;
3
- /** Alternative approach considered but not taken */
4
- export interface Alternative {
5
- value: string;
6
- probability: number;
7
- }
8
- /** NOP protocol version marker */
9
- type NopVersion = 1;
10
- /** Task priority levels */
11
- export type Priority = "urgent" | "normal" | "low";
12
- /** Task category — what kind of work this is */
13
- export type TaskCategory = "code" | "research" | "docs" | "test" | "refactor" | "ops";
14
- /** Task mailbox paths — where files live during lifecycle */
15
- export interface Mailbox {
16
- /** Base path for the task mailbox */
17
- base: string;
18
- /** Active directory name. Default: "active" */
19
- active?: string;
20
- /** Done directory name. Default: "done" */
21
- done?: string;
22
- }
23
- /** Context the worker needs to do its job */
24
- export interface TaskContext {
25
- /** File paths relevant to the task */
26
- files?: string[];
27
- /** Key facts the worker needs to know */
28
- knowledge?: string[];
29
- /** Git branch to work on */
30
- branch?: string;
31
- }
32
- /** Boundaries the worker must operate within */
33
- export interface TaskConstraints {
34
- /** Model to use: "sonnet", "haiku", "opus" */
35
- model?: string;
36
- /** Max seconds for task execution */
37
- time_limit?: number;
38
- /** Directories/files the worker may touch */
39
- scope?: string[];
40
- /** Whether changes need operator approval gate */
41
- proceed_gate?: boolean;
42
- }
43
- /** NOP payload for task dispatch (MVP subset of TaskFrame 0x40) */
44
- export interface NopIntentPayload {
45
- _nop: NopVersion;
46
- /** Unique task ID: task-{source}-{YYYYMMDD}-{HHMMSS} */
47
- id: string;
48
- /** Who dispatched — NPS NID format: urn:nps:agent:{domain}:{name} */
49
- from: string;
50
- /** Target worker NID. Omit = any available worker picks up */
51
- to?: string;
52
- /** ISO 8601 timestamp when task was dispatched */
53
- created_at: string;
54
- /** Task priority. Default: "normal" */
55
- priority?: Priority;
56
- /** What kind of work this task involves */
57
- category?: TaskCategory;
58
- /** Where task files live during lifecycle */
59
- mailbox: Mailbox;
60
- /** Context for the worker */
61
- context?: TaskContext;
62
- /** Execution boundaries (NPS-5 §3.2 scope carving) */
63
- constraints?: TaskConstraints;
64
- }
65
- /** Terminal task states (NPS-5 §4 state machine) */
66
- export type TaskStatus = "completed" | "failed" | "timeout" | "blocked";
67
- /** NOP payload for task result (AlignStream equivalent — NPS-5 §3.4) */
68
- export interface NopResultPayload {
69
- _nop: NopVersion;
70
- /** Same task ID from the intent */
71
- id: string;
72
- /** Terminal state */
73
- status: TaskStatus;
74
- /** Which worker executed — NPS NID format */
75
- from: string;
76
- /** ISO 8601 timestamp when worker claimed the task */
77
- picked_up_at: string;
78
- /** ISO 8601 timestamp when worker finished */
79
- completed_at: string;
80
- /** Files that were modified */
81
- files_changed?: string[];
82
- /** Git commit hashes + messages */
83
- commits?: string[];
84
- /** New tasks discovered during execution */
85
- follow_up?: string[];
86
- /** Seconds the task took */
87
- duration?: number;
88
- /** Error message if failed/timeout */
89
- error?: string | null;
90
- }
91
- /** Complete intent message: NCP envelope + NOP payload */
92
- export interface IntentMessage {
93
- _ncp: NcpVersion;
94
- type: "intent";
95
- /** Short verb phrase: "fix-bug", "write-test", "research", "refactor" */
96
- intent: string;
97
- /** Orchestrator's confidence this is the right task/worker. 0-1 */
98
- confidence: number;
99
- /** NOP task payload */
100
- payload: NopIntentPayload;
101
- }
102
- /** Complete result message: NCP envelope + NOP payload */
103
- export interface ResultMessage {
104
- _ncp: NcpVersion;
105
- type: "result";
106
- /** Human-readable summary of what was done */
107
- value: string;
108
- /** Worker's confidence in the result quality. 0-1 */
109
- probability: number;
110
- /** Other approaches considered but not taken */
111
- alternatives: Alternative[];
112
- /** NOP result payload */
113
- payload: NopResultPayload;
114
- }
115
- /** Any NOP message */
116
- export type NopMessage = IntentMessage | ResultMessage;
117
- /** All possible task states */
118
- export type TaskState = "pending" | "active" | "completed" | "failed" | "timeout" | "blocked" | "cancelled";
119
- /** Valid state transitions */
120
- export declare const VALID_TRANSITIONS: Record<string, TaskState[]>;
121
- /** Directory where a task file lives based on its state */
122
- export declare const STATE_DIRECTORY: Record<TaskState, string>;
123
- /** File extensions by message type */
124
- export declare const FILE_EXTENSIONS: {
125
- readonly intent: ".intent.json";
126
- readonly result: ".result.json";
127
- };
128
- /** Default mailbox directory names */
129
- export declare const MAILBOX_DEFAULTS: {
130
- readonly active: "active";
131
- readonly done: "done";
132
- readonly inbox: "inbox";
133
- readonly blocked: "blocked";
134
- };
135
- export {};
136
- //# sourceMappingURL=nop-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nop-types.d.ts","sourceRoot":"","sources":["../../src/nop/nop-types.ts"],"names":[],"mappings":"AAaA,kCAAkC;AAClC,KAAK,UAAU,GAAG,CAAC,CAAC;AAEpB,oDAAoD;AACpD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD,kCAAkC;AAClC,KAAK,UAAU,GAAG,CAAC,CAAC;AAEpB,2BAA2B;AAC3B,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEnD,gDAAgD;AAChD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC;AAEtF,6DAA6D;AAC7D,MAAM,WAAW,OAAO;IACtB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,6CAA6C;AAC7C,MAAM,WAAW,WAAW;IAC1B,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,kDAAkD;IAClD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,mEAAmE;AACnE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,6CAA6C;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,sDAAsD;IACtD,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAMD,oDAAoD;AACpD,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAExE,wEAAwE;AACxE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB;IACrB,MAAM,EAAE,UAAU,CAAC;IACnB,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAMD,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,yBAAyB;IACzB,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,sBAAsB;AACtB,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,aAAa,CAAC;AAMvD,+BAA+B;AAC/B,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,SAAS,GACT,SAAS,GACT,WAAW,CAAC;AAEhB,8BAA8B;AAC9B,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAQzD,CAAC;AAMF,2DAA2D;AAC3D,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAQrD,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AAEX,sCAAsC;AACtC,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC"}
@@ -1,44 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- // Copyright (c) 2026 LabAcacia / INNO LOTUS PTY LTD
3
- //
4
- // NOP Task Protocol — TypeScript Type Definitions
5
- // NPS-5 Neural Orchestration Protocol, MVP subset
6
- //
7
- // NCP carries the envelope. NOP fills the payload.
8
- // IntentFrame dispatches. ResultFrame reports back.
9
- /** Valid state transitions */
10
- export const VALID_TRANSITIONS = {
11
- pending: ["active", "cancelled"],
12
- active: ["completed", "failed", "timeout", "blocked"],
13
- blocked: ["active", "cancelled"],
14
- completed: [],
15
- failed: [],
16
- timeout: [],
17
- cancelled: [],
18
- };
19
- // -----------------------------------------------------------------------------
20
- // File Naming Conventions
21
- // -----------------------------------------------------------------------------
22
- /** Directory where a task file lives based on its state */
23
- export const STATE_DIRECTORY = {
24
- pending: "inbox",
25
- active: "active",
26
- completed: "done",
27
- failed: "done",
28
- timeout: "done",
29
- blocked: "blocked",
30
- cancelled: "done",
31
- };
32
- /** File extensions by message type */
33
- export const FILE_EXTENSIONS = {
34
- intent: ".intent.json",
35
- result: ".result.json",
36
- };
37
- /** Default mailbox directory names */
38
- export const MAILBOX_DEFAULTS = {
39
- active: "active",
40
- done: "done",
41
- inbox: "inbox",
42
- blocked: "blocked",
43
- };
44
- //# sourceMappingURL=nop-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nop-types.js","sourceRoot":"","sources":["../../src/nop/nop-types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,oDAAoD;AACpD,EAAE;AACF,kDAAkD;AAClD,kDAAkD;AAClD,EAAE;AACF,mDAAmD;AACnD,oDAAoD;AAkKpD,8BAA8B;AAC9B,MAAM,CAAC,MAAM,iBAAiB,GAAgC;IAC5D,OAAO,EAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;IAClC,MAAM,EAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;IACxD,OAAO,EAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;IAClC,SAAS,EAAE,EAAE;IACb,MAAM,EAAK,EAAE;IACb,OAAO,EAAI,EAAE;IACb,SAAS,EAAE,EAAE;CACd,CAAC;AAEF,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,eAAe,GAA8B;IACxD,OAAO,EAAI,OAAO;IAClB,MAAM,EAAK,QAAQ;IACnB,SAAS,EAAE,MAAM;IACjB,MAAM,EAAK,MAAM;IACjB,OAAO,EAAI,MAAM;IACjB,OAAO,EAAI,SAAS;IACpB,SAAS,EAAE,MAAM;CAClB,CAAC;AAEF,sCAAsC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,cAAc;CACd,CAAC;AAEX,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;CACV,CAAC"}
@@ -1,3 +0,0 @@
1
- import { FrameRegistry } from "../core/registry.js";
2
- export declare function registerNopFrames(registry: FrameRegistry): void;
3
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/nop/registry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAK/D"}
@@ -1,11 +0,0 @@
1
- // Copyright 2026 INNO LOTUS PTY LTD
2
- // SPDX-License-Identifier: Apache-2.0
3
- import { FrameType } from "../core/frames.js";
4
- import { AlignStreamFrame, DelegateFrame, SyncFrame, TaskFrame } from "./frames.js";
5
- export function registerNopFrames(registry) {
6
- registry.register(FrameType.TASK, TaskFrame);
7
- registry.register(FrameType.DELEGATE, DelegateFrame);
8
- registry.register(FrameType.SYNC, SyncFrame);
9
- registry.register(FrameType.ALIGN_STREAM, AlignStreamFrame);
10
- }
11
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/nop/registry.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,sCAAsC;AAGtC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,UAAU,iBAAiB,CAAC,QAAuB;IACvD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAU,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAM,aAAa,CAAC,CAAC;IACzD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAU,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC9D,CAAC"}
@@ -1,22 +0,0 @@
1
- import { EncodingTier } from "../core/frames.js";
2
- import { FrameRegistry } from "../core/registry.js";
3
- import { CapsFrame } from "../ncp/frames.js";
4
- import type { StreamFrame } from "../ncp/frames.js";
5
- import { ActionFrame } from "./frames.js";
6
- import type { AnchorFrame } from "../ncp/frames.js";
7
- import type { QueryFrame } from "./frames.js";
8
- export declare class NwpClient {
9
- private readonly _baseUrl;
10
- private readonly _codec;
11
- private readonly _tier;
12
- constructor(baseUrl: string, options?: {
13
- defaultTier?: EncodingTier;
14
- maxPayload?: number;
15
- registry?: FrameRegistry;
16
- });
17
- sendAnchor(frame: AnchorFrame): Promise<void>;
18
- query(frame: QueryFrame): Promise<CapsFrame>;
19
- stream(frame: QueryFrame): AsyncGenerator<StreamFrame>;
20
- invoke(frame: ActionFrame): Promise<unknown>;
21
- }
22
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/nwp/client.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAA+B,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,aAAa,CAAC;AAInE,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,YAAY,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAO;IAevF,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAiB3C,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC;IAwBvD,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBnD"}
@@ -1,101 +0,0 @@
1
- // Copyright 2026 INNO LOTUS PTY LTD
2
- // SPDX-License-Identifier: Apache-2.0
3
- /**
4
- * NwpClient — async HTTP-mode client for NPS Neural Web Protocol nodes (NPS-2).
5
- */
6
- import { NpsFrameCodec } from "../core/codec.js";
7
- import { EncodingTier } from "../core/frames.js";
8
- import { FrameRegistry } from "../core/registry.js";
9
- import { registerNcpFrames } from "../ncp/registry.js";
10
- import { CapsFrame } from "../ncp/frames.js";
11
- import { registerNwpFrames } from "./registry.js";
12
- import { asyncActionResponseFromDict } from "./frames.js";
13
- const CONTENT_TYPE = "application/x-nps-frame";
14
- export class NwpClient {
15
- _baseUrl;
16
- _codec;
17
- _tier;
18
- constructor(baseUrl, options = {}) {
19
- this._baseUrl = baseUrl.replace(/\/$/, "");
20
- this._tier = options.defaultTier ?? EncodingTier.MSGPACK;
21
- const registry = options.registry ?? (() => {
22
- const r = new FrameRegistry();
23
- registerNcpFrames(r);
24
- registerNwpFrames(r);
25
- return r;
26
- })();
27
- const codecOpts = options.maxPayload !== undefined ? { maxPayload: options.maxPayload } : {};
28
- this._codec = new NpsFrameCodec(registry, codecOpts);
29
- }
30
- async sendAnchor(frame) {
31
- const wire = this._codec.encode(frame, { overrideTier: this._tier });
32
- const res = await fetch(`${this._baseUrl}/anchor`, {
33
- method: "POST",
34
- body: wire,
35
- headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
36
- });
37
- if (!res.ok)
38
- throw new Error(`NWP /anchor failed: HTTP ${res.status}`);
39
- }
40
- async query(frame) {
41
- const wire = this._codec.encode(frame, { overrideTier: this._tier });
42
- const res = await fetch(`${this._baseUrl}/query`, {
43
- method: "POST",
44
- body: wire,
45
- headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
46
- });
47
- if (!res.ok)
48
- throw new Error(`NWP /query failed: HTTP ${res.status}`);
49
- const buf = new Uint8Array(await res.arrayBuffer());
50
- const result = this._codec.decode(buf);
51
- if (!(result instanceof CapsFrame)) {
52
- throw new TypeError(`Expected CapsFrame from /query, got ${result.constructor.name}.`);
53
- }
54
- return result;
55
- }
56
- async *stream(frame) {
57
- const wire = this._codec.encode(frame, { overrideTier: this._tier });
58
- const res = await fetch(`${this._baseUrl}/stream`, {
59
- method: "POST",
60
- body: wire,
61
- headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
62
- });
63
- if (!res.ok)
64
- throw new Error(`NWP /stream failed: HTTP ${res.status}`);
65
- if (res.body === null)
66
- return;
67
- const { StreamFrame: SF } = await import("../ncp/frames.js");
68
- for await (const chunk of res.body) {
69
- const bytes = chunk instanceof Uint8Array ? chunk : new Uint8Array(chunk);
70
- if (bytes.length === 0)
71
- continue;
72
- const result = this._codec.decode(bytes);
73
- if (!(result instanceof SF)) {
74
- throw new TypeError(`Expected StreamFrame from /stream, got ${result.constructor.name}.`);
75
- }
76
- yield result;
77
- if (result.isLast)
78
- break;
79
- }
80
- }
81
- async invoke(frame) {
82
- const wire = this._codec.encode(frame, { overrideTier: this._tier });
83
- const res = await fetch(`${this._baseUrl}/invoke`, {
84
- method: "POST",
85
- body: wire,
86
- headers: { "Content-Type": CONTENT_TYPE, "Accept": CONTENT_TYPE },
87
- });
88
- if (!res.ok)
89
- throw new Error(`NWP /invoke failed: HTTP ${res.status}`);
90
- if (frame.async_) {
91
- return asyncActionResponseFromDict(await res.json());
92
- }
93
- const contentType = res.headers.get("content-type") ?? "";
94
- if (contentType.includes(CONTENT_TYPE)) {
95
- const buf = new Uint8Array(await res.arrayBuffer());
96
- return this._codec.decode(buf);
97
- }
98
- return res.json();
99
- }
100
- }
101
- //# sourceMappingURL=client.js.map