pi-harness-runtime 0.10.13 → 0.10.15

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 (581) hide show
  1. package/harness/notification-events.ts +2 -2
  2. package/package.json +4 -7
  3. package/packages/auth/src/minimax-browser-auth.js +889 -0
  4. package/packages/capability-registry/src/types.js +10 -0
  5. package/packages/checkpoint/src/checkpoint-manager.js +29 -0
  6. package/packages/clipboard/src/copy-sync.js +169 -0
  7. package/packages/clipboard/src/gist-relay.js +185 -0
  8. package/packages/clipboard/src/github-login.js +68 -0
  9. package/packages/config-capture/src/index.js +268 -0
  10. package/packages/cookie-sanitizer/src/atomic-write.js +66 -0
  11. package/packages/cookie-sanitizer/src/detect-format.js +87 -0
  12. package/packages/cookie-sanitizer/src/index.js +38 -0
  13. package/packages/cookie-sanitizer/src/infer-provider.js +95 -0
  14. package/packages/cookie-sanitizer/src/normalize.js +74 -0
  15. package/packages/cookie-sanitizer/src/parse-json.js +107 -0
  16. package/packages/cookie-sanitizer/src/parse-netscape.js +98 -0
  17. package/packages/cookie-sanitizer/src/sync.js +268 -0
  18. package/packages/cookie-sanitizer/src/types.js +12 -0
  19. package/packages/cookie-sanitizer/src/watcher.js +147 -0
  20. package/packages/evaluation-engine/src/engine.js +343 -0
  21. package/packages/evaluation-engine/src/index.js +7 -0
  22. package/packages/evaluation-engine/src/types.js +14 -0
  23. package/packages/event-store/src/types.js +5 -0
  24. package/packages/experience-replay/src/index.js +6 -0
  25. package/packages/experience-replay/src/replay.js +228 -0
  26. package/packages/experience-replay/src/types.js +6 -0
  27. package/packages/learning-engine/src/engine.js +294 -0
  28. package/packages/learning-engine/src/index.js +7 -0
  29. package/packages/learning-engine/src/types.js +63 -0
  30. package/packages/memory-engine/src/engine.js +507 -0
  31. package/packages/memory-engine/src/index.js +7 -0
  32. package/packages/memory-engine/src/types.js +39 -0
  33. package/packages/model-registry/src/types.js +5 -0
  34. package/packages/performance-optimizer/src/index.js +6 -0
  35. package/packages/performance-optimizer/src/optimizer.js +304 -0
  36. package/packages/performance-optimizer/src/types.js +6 -0
  37. package/packages/projection-engine/src/types.js +5 -0
  38. package/packages/providers/src/provider-id.js +112 -0
  39. package/packages/quota-manager/src/quota-manager.js +259 -0
  40. package/packages/quota-manager/src/tui-usage-monitor.js +267 -0
  41. package/packages/todo-bd-sync/src/detector.js +131 -0
  42. package/packages/todo-bd-sync/src/extension.js +104 -0
  43. package/packages/todo-bd-sync/src/sync.js +289 -0
  44. package/packages/todo-bd-sync/src/task-analyzer.js +239 -0
  45. package/packages/todo-bd-sync/src/types.js +66 -0
  46. package/packages/token-estimation/src/index.js +114 -0
  47. package/packages/types/src/agent-worker-types.js +41 -0
  48. package/packages/types/src/ai-providers.js +66 -0
  49. package/packages/types/src/runtime-types.js +3 -0
  50. package/packages/workflow-events/src/types.js +5 -0
  51. package/packages/write-review/src/blackboard.js +228 -0
  52. package/packages/write-review/src/gate.js +137 -0
  53. package/packages/write-review/src/index.js +17 -0
  54. package/packages/write-review/src/injection.js +141 -0
  55. package/packages/write-review/src/review.js +153 -0
  56. package/packages/write-review/src/trigger.js +106 -0
  57. package/packages/write-review/src/types.js +25 -0
  58. package/IMPLEMENTATION/RFC-0010/ACCEPTANCE_CRITERIA.md +0 -7
  59. package/IMPLEMENTATION/RFC-0010/AI_BRIEF.md +0 -20
  60. package/IMPLEMENTATION/RFC-0010/FILES.md +0 -11
  61. package/IMPLEMENTATION/RFC-0010/TASKS.md +0 -10
  62. package/IMPLEMENTATION/RFC-0010/TESTS.md +0 -6
  63. package/IMPLEMENTATION/RFC-0011/ACCEPTANCE_CRITERIA.md +0 -7
  64. package/IMPLEMENTATION/RFC-0011/AI_BRIEF.md +0 -19
  65. package/IMPLEMENTATION/RFC-0011/FILES.md +0 -11
  66. package/IMPLEMENTATION/RFC-0011/TASKS.md +0 -10
  67. package/IMPLEMENTATION/RFC-0011/TESTS.md +0 -6
  68. package/IMPLEMENTATION/RFC-0012/ACCEPTANCE_CRITERIA.md +0 -7
  69. package/IMPLEMENTATION/RFC-0012/AI_BRIEF.md +0 -18
  70. package/IMPLEMENTATION/RFC-0012/FILES.md +0 -11
  71. package/IMPLEMENTATION/RFC-0012/TASKS.md +0 -10
  72. package/IMPLEMENTATION/RFC-0012/TESTS.md +0 -6
  73. package/IMPLEMENTATION/RFC-0013/ACCEPTANCE_CRITERIA.md +0 -7
  74. package/IMPLEMENTATION/RFC-0013/AI_BRIEF.md +0 -19
  75. package/IMPLEMENTATION/RFC-0013/FILES.md +0 -11
  76. package/IMPLEMENTATION/RFC-0013/TASKS.md +0 -10
  77. package/IMPLEMENTATION/RFC-0013/TESTS.md +0 -6
  78. package/IMPLEMENTATION/RFC-0014/ACCEPTANCE_CRITERIA.md +0 -7
  79. package/IMPLEMENTATION/RFC-0014/AI_BRIEF.md +0 -20
  80. package/IMPLEMENTATION/RFC-0014/FILES.md +0 -11
  81. package/IMPLEMENTATION/RFC-0014/TASKS.md +0 -10
  82. package/IMPLEMENTATION/RFC-0014/TESTS.md +0 -6
  83. package/IMPLEMENTATION/RFC-0015/ACCEPTANCE_CRITERIA.md +0 -2
  84. package/IMPLEMENTATION/RFC-0015/AI_BRIEF.md +0 -2
  85. package/IMPLEMENTATION/RFC-0015/FILES.md +0 -2
  86. package/IMPLEMENTATION/RFC-0015/TASKS.md +0 -4
  87. package/IMPLEMENTATION/RFC-0015/TESTS.md +0 -3
  88. package/IMPLEMENTATION/RFC-0016/ACCEPTANCE_CRITERIA.md +0 -2
  89. package/IMPLEMENTATION/RFC-0016/AI_BRIEF.md +0 -2
  90. package/IMPLEMENTATION/RFC-0016/FILES.md +0 -2
  91. package/IMPLEMENTATION/RFC-0016/TASKS.md +0 -4
  92. package/IMPLEMENTATION/RFC-0016/TESTS.md +0 -3
  93. package/IMPLEMENTATION/RFC-0017/ACCEPTANCE_CRITERIA.md +0 -2
  94. package/IMPLEMENTATION/RFC-0017/AI_BRIEF.md +0 -2
  95. package/IMPLEMENTATION/RFC-0017/FILES.md +0 -2
  96. package/IMPLEMENTATION/RFC-0017/TASKS.md +0 -4
  97. package/IMPLEMENTATION/RFC-0017/TESTS.md +0 -3
  98. package/IMPLEMENTATION/RFC-0018/ACCEPTANCE_CRITERIA.md +0 -2
  99. package/IMPLEMENTATION/RFC-0018/AI_BRIEF.md +0 -2
  100. package/IMPLEMENTATION/RFC-0018/FILES.md +0 -2
  101. package/IMPLEMENTATION/RFC-0018/TASKS.md +0 -4
  102. package/IMPLEMENTATION/RFC-0018/TESTS.md +0 -3
  103. package/IMPLEMENTATION/RFC-0019/ACCEPTANCE_CRITERIA.md +0 -7
  104. package/IMPLEMENTATION/RFC-0019/AI_BRIEF.md +0 -18
  105. package/IMPLEMENTATION/RFC-0019/TASKS.md +0 -10
  106. package/IMPLEMENTATION/RFC-0020/ACCEPTANCE_CRITERIA.md +0 -7
  107. package/IMPLEMENTATION/RFC-0020/AI_BRIEF.md +0 -18
  108. package/IMPLEMENTATION/RFC-0020/TASKS.md +0 -10
  109. package/IMPLEMENTATION/RFC-0021/ACCEPTANCE_CRITERIA.md +0 -7
  110. package/IMPLEMENTATION/RFC-0021/AI_BRIEF.md +0 -18
  111. package/IMPLEMENTATION/RFC-0021/TASKS.md +0 -10
  112. package/IMPLEMENTATION/RFC-0022/ACCEPTANCE_CRITERIA.md +0 -7
  113. package/IMPLEMENTATION/RFC-0022/AI_BRIEF.md +0 -18
  114. package/IMPLEMENTATION/RFC-0022/TASKS.md +0 -10
  115. package/IMPLEMENTATION/RFC-0023/ACCEPTANCE_CRITERIA.md +0 -7
  116. package/IMPLEMENTATION/RFC-0023/AI_BRIEF.md +0 -18
  117. package/IMPLEMENTATION/RFC-0023/TASKS.md +0 -10
  118. package/IMPLEMENTATION/RFC-0024/AI_BRIEF.md +0 -1
  119. package/IMPLEMENTATION/RFC-0024/TASKS.md +0 -3
  120. package/IMPLEMENTATION/RFC-0025/AI_BRIEF.md +0 -1
  121. package/IMPLEMENTATION/RFC-0025/TASKS.md +0 -3
  122. package/IMPLEMENTATION/RFC-0026/AI_BRIEF.md +0 -1
  123. package/IMPLEMENTATION/RFC-0026/TASKS.md +0 -3
  124. package/IMPLEMENTATION/RFC-0027/AI_BRIEF.md +0 -1
  125. package/IMPLEMENTATION/RFC-0027/TASKS.md +0 -3
  126. package/IMPLEMENTATION/RFC-0028/AI_BRIEF.md +0 -1
  127. package/IMPLEMENTATION/RFC-0028/TASKS.md +0 -3
  128. package/IMPLEMENTATION/RFC-0029/AI_BRIEF.md +0 -1
  129. package/IMPLEMENTATION/RFC-0029/TASKS.md +0 -4
  130. package/IMPLEMENTATION/RFC-0030/AI_BRIEF.md +0 -1
  131. package/IMPLEMENTATION/RFC-0030/TASKS.md +0 -3
  132. package/IMPLEMENTATION/RFC-0031/AI_BRIEF.md +0 -45
  133. package/IMPLEMENTATION/RFC-0031/TASKS.md +0 -48
  134. package/IMPLEMENTATION/RFC-0032/AI_BRIEF.md +0 -45
  135. package/IMPLEMENTATION/RFC-0032/TASKS.md +0 -44
  136. package/IMPLEMENTATION/RFC-0033/AI_BRIEF.md +0 -46
  137. package/IMPLEMENTATION/RFC-0033/TASKS.md +0 -49
  138. package/IMPLEMENTATION/RFC-0034/AI_BRIEF.md +0 -54
  139. package/IMPLEMENTATION/RFC-0034/TASKS.md +0 -57
  140. package/IMPLEMENTATION/RFC-0035/AI_BRIEF.md +0 -55
  141. package/IMPLEMENTATION/RFC-0035/TASKS.md +0 -75
  142. package/IMPLEMENTATION/RFC-0036/AI_BRIEF.md +0 -62
  143. package/IMPLEMENTATION/RFC-0036/TASKS.md +0 -60
  144. package/IMPLEMENTATION/RFC-0037/AI_BRIEF.md +0 -59
  145. package/IMPLEMENTATION/RFC-0037/TASKS.md +0 -63
  146. package/IMPLEMENTATION/RFC-0038/AI_BRIEF.md +0 -67
  147. package/IMPLEMENTATION/RFC-0038/TASKS.md +0 -65
  148. package/IMPLEMENTATION/RFC-0039/AI_BRIEF.md +0 -68
  149. package/IMPLEMENTATION/RFC-0039/TASKS.md +0 -74
  150. package/IMPLEMENTATION/RFC-0040/AI_BRIEF.md +0 -79
  151. package/IMPLEMENTATION/RFC-0040/TASKS.md +0 -77
  152. package/IMPLEMENTATION/RFC-0041/ACCEPTANCE_CRITERIA.md +0 -8
  153. package/IMPLEMENTATION/RFC-0041/AI_BRIEF.md +0 -26
  154. package/IMPLEMENTATION/RFC-0041/FILES.md +0 -12
  155. package/IMPLEMENTATION/RFC-0041/TASKS.md +0 -12
  156. package/IMPLEMENTATION/RFC-0041/TESTS.md +0 -12
  157. package/IMPLEMENTATION/RFC-0042/ACCEPTANCE_CRITERIA.md +0 -7
  158. package/IMPLEMENTATION/RFC-0042/AI_BRIEF.md +0 -5
  159. package/IMPLEMENTATION/RFC-0042/FILES.md +0 -14
  160. package/IMPLEMENTATION/RFC-0042/TASKS.md +0 -12
  161. package/IMPLEMENTATION/RFC-0042/TESTS.md +0 -11
  162. package/IMPLEMENTATION/RFC-0043/ACCEPTANCE_CRITERIA.md +0 -7
  163. package/IMPLEMENTATION/RFC-0043/AI_BRIEF.md +0 -5
  164. package/IMPLEMENTATION/RFC-0043/FILES.md +0 -14
  165. package/IMPLEMENTATION/RFC-0043/TASKS.md +0 -12
  166. package/IMPLEMENTATION/RFC-0043/TESTS.md +0 -10
  167. package/IMPLEMENTATION/RFC-0044/ACCEPTANCE_CRITERIA.md +0 -7
  168. package/IMPLEMENTATION/RFC-0044/AI_BRIEF.md +0 -5
  169. package/IMPLEMENTATION/RFC-0044/FILES.md +0 -13
  170. package/IMPLEMENTATION/RFC-0044/TASKS.md +0 -12
  171. package/IMPLEMENTATION/RFC-0044/TESTS.md +0 -10
  172. package/IMPLEMENTATION/RFC-0045/ACCEPTANCE_CRITERIA.md +0 -30
  173. package/IMPLEMENTATION/RFC-0045/AI_BRIEF.md +0 -53
  174. package/IMPLEMENTATION/RFC-0045/FILES.md +0 -13
  175. package/IMPLEMENTATION/RFC-0045/TASKS.md +0 -31
  176. package/IMPLEMENTATION/RFC-0045/TESTS.md +0 -62
  177. package/IMPLEMENTATION/RFC-0046/ACCEPTANCE_CRITERIA.md +0 -1
  178. package/IMPLEMENTATION/RFC-0046/AI_BRIEF.md +0 -1
  179. package/IMPLEMENTATION/RFC-0046/FILES.md +0 -2
  180. package/IMPLEMENTATION/RFC-0046/TASKS.md +0 -3
  181. package/IMPLEMENTATION/RFC-0046/TESTS.md +0 -1
  182. package/IMPLEMENTATION/RFC-0047/ACCEPTANCE_CRITERIA.md +0 -1
  183. package/IMPLEMENTATION/RFC-0047/AI_BRIEF.md +0 -1
  184. package/IMPLEMENTATION/RFC-0047/FILES.md +0 -2
  185. package/IMPLEMENTATION/RFC-0047/TASKS.md +0 -3
  186. package/IMPLEMENTATION/RFC-0047/TESTS.md +0 -1
  187. package/IMPLEMENTATION/RFC-0048/ACCEPTANCE_CRITERIA.md +0 -1
  188. package/IMPLEMENTATION/RFC-0048/AI_BRIEF.md +0 -1
  189. package/IMPLEMENTATION/RFC-0048/FILES.md +0 -2
  190. package/IMPLEMENTATION/RFC-0048/TASKS.md +0 -3
  191. package/IMPLEMENTATION/RFC-0048/TESTS.md +0 -1
  192. package/IMPLEMENTATION/RFC-0049/ACCEPTANCE_CRITERIA.md +0 -1
  193. package/IMPLEMENTATION/RFC-0049/AI_BRIEF.md +0 -1
  194. package/IMPLEMENTATION/RFC-0049/FILES.md +0 -2
  195. package/IMPLEMENTATION/RFC-0049/TASKS.md +0 -3
  196. package/IMPLEMENTATION/RFC-0049/TESTS.md +0 -1
  197. package/IMPLEMENTATION/RFC-0050/ACCEPTANCE_CRITERIA.md +0 -1
  198. package/IMPLEMENTATION/RFC-0050/AI_BRIEF.md +0 -1
  199. package/IMPLEMENTATION/RFC-0050/FILES.md +0 -2
  200. package/IMPLEMENTATION/RFC-0050/TASKS.md +0 -3
  201. package/IMPLEMENTATION/RFC-0050/TESTS.md +0 -1
  202. package/IMPLEMENTATION/RFC-0051/ACCEPTANCE_CRITERIA.md +0 -6
  203. package/IMPLEMENTATION/RFC-0051/AI_BRIEF.md +0 -20
  204. package/IMPLEMENTATION/RFC-0051/FILES.md +0 -8
  205. package/IMPLEMENTATION/RFC-0051/TASKS.md +0 -3
  206. package/IMPLEMENTATION/RFC-0051/TESTS.md +0 -4
  207. package/IMPLEMENTATION/RFC-0052/ACCEPTANCE_CRITERIA.md +0 -7
  208. package/IMPLEMENTATION/RFC-0052/AI_BRIEF.md +0 -19
  209. package/IMPLEMENTATION/RFC-0052/FILES.md +0 -8
  210. package/IMPLEMENTATION/RFC-0052/TASKS.md +0 -3
  211. package/IMPLEMENTATION/RFC-0052/TESTS.md +0 -1
  212. package/IMPLEMENTATION/RFC-0053/ACCEPTANCE_CRITERIA.md +0 -8
  213. package/IMPLEMENTATION/RFC-0053/AI_BRIEF.md +0 -20
  214. package/IMPLEMENTATION/RFC-0053/FILES.md +0 -9
  215. package/IMPLEMENTATION/RFC-0053/TASKS.md +0 -3
  216. package/IMPLEMENTATION/RFC-0053/TESTS.md +0 -1
  217. package/IMPLEMENTATION/RFC-0054/ACCEPTANCE_CRITERIA.md +0 -8
  218. package/IMPLEMENTATION/RFC-0054/AI_BRIEF.md +0 -19
  219. package/IMPLEMENTATION/RFC-0054/FILES.md +0 -8
  220. package/IMPLEMENTATION/RFC-0054/TASKS.md +0 -3
  221. package/IMPLEMENTATION/RFC-0054/TESTS.md +0 -1
  222. package/IMPLEMENTATION/RFC-0055/ACCEPTANCE_CRITERIA.md +0 -8
  223. package/IMPLEMENTATION/RFC-0055/AI_BRIEF.md +0 -17
  224. package/IMPLEMENTATION/RFC-0055/FILES.md +0 -9
  225. package/IMPLEMENTATION/RFC-0055/TASKS.md +0 -3
  226. package/IMPLEMENTATION/RFC-0055/TESTS.md +0 -1
  227. package/IMPLEMENTATION/RFC-0056/ACCEPTANCE_CRITERIA.md +0 -6
  228. package/IMPLEMENTATION/RFC-0056/AI_BRIEF.md +0 -18
  229. package/IMPLEMENTATION/RFC-0056/FILES.md +0 -9
  230. package/IMPLEMENTATION/RFC-0056/TASKS.md +0 -9
  231. package/IMPLEMENTATION/RFC-0056/TESTS.md +0 -7
  232. package/IMPLEMENTATION/RFC-0057/ACCEPTANCE_CRITERIA.md +0 -5
  233. package/IMPLEMENTATION/RFC-0057/AI_BRIEF.md +0 -5
  234. package/IMPLEMENTATION/RFC-0057/FILES.md +0 -11
  235. package/IMPLEMENTATION/RFC-0057/TASKS.md +0 -9
  236. package/IMPLEMENTATION/RFC-0057/TESTS.md +0 -7
  237. package/IMPLEMENTATION/RFC-0058/ACCEPTANCE_CRITERIA.md +0 -6
  238. package/IMPLEMENTATION/RFC-0058/AI_BRIEF.md +0 -5
  239. package/IMPLEMENTATION/RFC-0058/FILES.md +0 -11
  240. package/IMPLEMENTATION/RFC-0058/TASKS.md +0 -9
  241. package/IMPLEMENTATION/RFC-0058/TESTS.md +0 -7
  242. package/IMPLEMENTATION/RFC-0059/ACCEPTANCE_CRITERIA.md +0 -6
  243. package/IMPLEMENTATION/RFC-0059/AI_BRIEF.md +0 -5
  244. package/IMPLEMENTATION/RFC-0059/FILES.md +0 -11
  245. package/IMPLEMENTATION/RFC-0059/TASKS.md +0 -9
  246. package/IMPLEMENTATION/RFC-0059/TESTS.md +0 -7
  247. package/IMPLEMENTATION/RFC-0060/ACCEPTANCE_CRITERIA.md +0 -7
  248. package/IMPLEMENTATION/RFC-0060/AI_BRIEF.md +0 -5
  249. package/IMPLEMENTATION/RFC-0060/FILES.md +0 -14
  250. package/IMPLEMENTATION/RFC-0060/TASKS.md +0 -12
  251. package/IMPLEMENTATION/RFC-0060/TESTS.md +0 -10
  252. package/IMPLEMENTATION/RFC-0061/ACCEPTANCE_CRITERIA.md +0 -1
  253. package/IMPLEMENTATION/RFC-0061/AI_BRIEF.md +0 -1
  254. package/IMPLEMENTATION/RFC-0061/FILES.md +0 -2
  255. package/IMPLEMENTATION/RFC-0061/TASKS.md +0 -4
  256. package/IMPLEMENTATION/RFC-0061/TESTS.md +0 -2
  257. package/IMPLEMENTATION/RFC-0062/ACCEPTANCE_CRITERIA.md +0 -1
  258. package/IMPLEMENTATION/RFC-0062/AI_BRIEF.md +0 -1
  259. package/IMPLEMENTATION/RFC-0062/FILES.md +0 -2
  260. package/IMPLEMENTATION/RFC-0062/TASKS.md +0 -4
  261. package/IMPLEMENTATION/RFC-0062/TESTS.md +0 -2
  262. package/IMPLEMENTATION/RFC-0063/ACCEPTANCE_CRITERIA.md +0 -1
  263. package/IMPLEMENTATION/RFC-0063/AI_BRIEF.md +0 -1
  264. package/IMPLEMENTATION/RFC-0063/FILES.md +0 -2
  265. package/IMPLEMENTATION/RFC-0063/TASKS.md +0 -4
  266. package/IMPLEMENTATION/RFC-0063/TESTS.md +0 -2
  267. package/IMPLEMENTATION/RFC-0064/ACCEPTANCE_CRITERIA.md +0 -1
  268. package/IMPLEMENTATION/RFC-0064/AI_BRIEF.md +0 -1
  269. package/IMPLEMENTATION/RFC-0064/FILES.md +0 -2
  270. package/IMPLEMENTATION/RFC-0064/TASKS.md +0 -4
  271. package/IMPLEMENTATION/RFC-0064/TESTS.md +0 -2
  272. package/IMPLEMENTATION/RFC-0065/ACCEPTANCE_CRITERIA.md +0 -1
  273. package/IMPLEMENTATION/RFC-0065/AI_BRIEF.md +0 -1
  274. package/IMPLEMENTATION/RFC-0065/FILES.md +0 -2
  275. package/IMPLEMENTATION/RFC-0065/TASKS.md +0 -4
  276. package/IMPLEMENTATION/RFC-0065/TESTS.md +0 -2
  277. package/IMPLEMENTATION/RFC-0066/ACCEPTANCE_CRITERIA.md +0 -2
  278. package/IMPLEMENTATION/RFC-0066/AI_BRIEF.md +0 -2
  279. package/IMPLEMENTATION/RFC-0066/FILES.md +0 -2
  280. package/IMPLEMENTATION/RFC-0066/TASKS.md +0 -4
  281. package/IMPLEMENTATION/RFC-0066/TESTS.md +0 -3
  282. package/IMPLEMENTATION/RFC-0067/ACCEPTANCE_CRITERIA.md +0 -2
  283. package/IMPLEMENTATION/RFC-0067/AI_BRIEF.md +0 -2
  284. package/IMPLEMENTATION/RFC-0067/FILES.md +0 -2
  285. package/IMPLEMENTATION/RFC-0067/TASKS.md +0 -4
  286. package/IMPLEMENTATION/RFC-0067/TESTS.md +0 -3
  287. package/IMPLEMENTATION/RFC-0068/ACCEPTANCE_CRITERIA.md +0 -2
  288. package/IMPLEMENTATION/RFC-0068/AI_BRIEF.md +0 -2
  289. package/IMPLEMENTATION/RFC-0068/FILES.md +0 -2
  290. package/IMPLEMENTATION/RFC-0068/TASKS.md +0 -4
  291. package/IMPLEMENTATION/RFC-0068/TESTS.md +0 -3
  292. package/IMPLEMENTATION/RFC-0069/ACCEPTANCE_CRITERIA.md +0 -2
  293. package/IMPLEMENTATION/RFC-0069/AI_BRIEF.md +0 -2
  294. package/IMPLEMENTATION/RFC-0069/FILES.md +0 -2
  295. package/IMPLEMENTATION/RFC-0069/TASKS.md +0 -4
  296. package/IMPLEMENTATION/RFC-0069/TESTS.md +0 -3
  297. package/IMPLEMENTATION/RFC-0070/ACCEPTANCE_CRITERIA.md +0 -2
  298. package/IMPLEMENTATION/RFC-0070/AI_BRIEF.md +0 -2
  299. package/IMPLEMENTATION/RFC-0070/FILES.md +0 -2
  300. package/IMPLEMENTATION/RFC-0070/TASKS.md +0 -4
  301. package/IMPLEMENTATION/RFC-0070/TESTS.md +0 -3
  302. package/IMPLEMENTATION/RFC-0071/ACCEPTANCE_CRITERIA.md +0 -2
  303. package/IMPLEMENTATION/RFC-0071/AI_BRIEF.md +0 -2
  304. package/IMPLEMENTATION/RFC-0071/FILES.md +0 -2
  305. package/IMPLEMENTATION/RFC-0071/TASKS.md +0 -4
  306. package/IMPLEMENTATION/RFC-0071/TESTS.md +0 -3
  307. package/IMPLEMENTATION/RFC-0072/ACCEPTANCE_CRITERIA.md +0 -2
  308. package/IMPLEMENTATION/RFC-0072/AI_BRIEF.md +0 -2
  309. package/IMPLEMENTATION/RFC-0072/FILES.md +0 -2
  310. package/IMPLEMENTATION/RFC-0072/TASKS.md +0 -4
  311. package/IMPLEMENTATION/RFC-0072/TESTS.md +0 -3
  312. package/IMPLEMENTATION/RFC-0073/ACCEPTANCE_CRITERIA.md +0 -2
  313. package/IMPLEMENTATION/RFC-0073/AI_BRIEF.md +0 -2
  314. package/IMPLEMENTATION/RFC-0073/FILES.md +0 -2
  315. package/IMPLEMENTATION/RFC-0073/TASKS.md +0 -4
  316. package/IMPLEMENTATION/RFC-0073/TESTS.md +0 -3
  317. package/IMPLEMENTATION/RFC-0074/ACCEPTANCE_CRITERIA.md +0 -2
  318. package/IMPLEMENTATION/RFC-0074/AI_BRIEF.md +0 -17
  319. package/IMPLEMENTATION/RFC-0074/FILES.md +0 -2
  320. package/IMPLEMENTATION/RFC-0074/TASKS.md +0 -4
  321. package/IMPLEMENTATION/RFC-0074/TESTS.md +0 -3
  322. package/IMPLEMENTATION/RFC-0075/ACCEPTANCE_CRITERIA.md +0 -2
  323. package/IMPLEMENTATION/RFC-0075/AI_BRIEF.md +0 -2
  324. package/IMPLEMENTATION/RFC-0075/FILES.md +0 -2
  325. package/IMPLEMENTATION/RFC-0075/TASKS.md +0 -4
  326. package/IMPLEMENTATION/RFC-0075/TESTS.md +0 -3
  327. package/IMPLEMENTATION/RFC-0076/ACCEPTANCE_CRITERIA.md +0 -2
  328. package/IMPLEMENTATION/RFC-0076/AI_BRIEF.md +0 -2
  329. package/IMPLEMENTATION/RFC-0076/FILES.md +0 -2
  330. package/IMPLEMENTATION/RFC-0076/TASKS.md +0 -4
  331. package/IMPLEMENTATION/RFC-0076/TESTS.md +0 -3
  332. package/IMPLEMENTATION/RFC-0077/ACCEPTANCE_CRITERIA.md +0 -2
  333. package/IMPLEMENTATION/RFC-0077/AI_BRIEF.md +0 -2
  334. package/IMPLEMENTATION/RFC-0077/FILES.md +0 -2
  335. package/IMPLEMENTATION/RFC-0077/TASKS.md +0 -4
  336. package/IMPLEMENTATION/RFC-0077/TESTS.md +0 -3
  337. package/IMPLEMENTATION/RFC-0078/ACCEPTANCE_CRITERIA.md +0 -2
  338. package/IMPLEMENTATION/RFC-0078/AI_BRIEF.md +0 -17
  339. package/IMPLEMENTATION/RFC-0078/FILES.md +0 -2
  340. package/IMPLEMENTATION/RFC-0078/TASKS.md +0 -4
  341. package/IMPLEMENTATION/RFC-0078/TESTS.md +0 -3
  342. package/IMPLEMENTATION/RFC-0079/ACCEPTANCE_CRITERIA.md +0 -2
  343. package/IMPLEMENTATION/RFC-0079/AI_BRIEF.md +0 -7
  344. package/IMPLEMENTATION/RFC-0079/FILES.md +0 -2
  345. package/IMPLEMENTATION/RFC-0079/TASKS.md +0 -4
  346. package/IMPLEMENTATION/RFC-0079/TESTS.md +0 -3
  347. package/IMPLEMENTATION/RFC-0080/ACCEPTANCE_CRITERIA.md +0 -2
  348. package/IMPLEMENTATION/RFC-0080/AI_BRIEF.md +0 -2
  349. package/IMPLEMENTATION/RFC-0080/FILES.md +0 -2
  350. package/IMPLEMENTATION/RFC-0080/TASKS.md +0 -4
  351. package/IMPLEMENTATION/RFC-0080/TESTS.md +0 -3
  352. package/IMPLEMENTATION/RFC-0081/ACCEPTANCE_CRITERIA.md +0 -2
  353. package/IMPLEMENTATION/RFC-0081/AI_BRIEF.md +0 -2
  354. package/IMPLEMENTATION/RFC-0081/FILES.md +0 -2
  355. package/IMPLEMENTATION/RFC-0081/TASKS.md +0 -4
  356. package/IMPLEMENTATION/RFC-0081/TESTS.md +0 -3
  357. package/IMPLEMENTATION/RFC-0082/ACCEPTANCE_CRITERIA.md +0 -2
  358. package/IMPLEMENTATION/RFC-0082/AI_BRIEF.md +0 -2
  359. package/IMPLEMENTATION/RFC-0082/FILES.md +0 -2
  360. package/IMPLEMENTATION/RFC-0082/TASKS.md +0 -4
  361. package/IMPLEMENTATION/RFC-0082/TESTS.md +0 -3
  362. package/IMPLEMENTATION/RFC-0083/ACCEPTANCE_CRITERIA.md +0 -2
  363. package/IMPLEMENTATION/RFC-0083/AI_BRIEF.md +0 -2
  364. package/IMPLEMENTATION/RFC-0083/FILES.md +0 -2
  365. package/IMPLEMENTATION/RFC-0083/TASKS.md +0 -4
  366. package/IMPLEMENTATION/RFC-0083/TESTS.md +0 -3
  367. package/IMPLEMENTATION/RFC-0084/ACCEPTANCE_CRITERIA.md +0 -2
  368. package/IMPLEMENTATION/RFC-0084/AI_BRIEF.md +0 -2
  369. package/IMPLEMENTATION/RFC-0084/FILES.md +0 -2
  370. package/IMPLEMENTATION/RFC-0084/TASKS.md +0 -4
  371. package/IMPLEMENTATION/RFC-0084/TESTS.md +0 -3
  372. package/IMPLEMENTATION/RFC-0085/ACCEPTANCE_CRITERIA.md +0 -2
  373. package/IMPLEMENTATION/RFC-0085/AI_BRIEF.md +0 -2
  374. package/IMPLEMENTATION/RFC-0085/FILES.md +0 -2
  375. package/IMPLEMENTATION/RFC-0085/TASKS.md +0 -4
  376. package/IMPLEMENTATION/RFC-0085/TESTS.md +0 -3
  377. package/IMPLEMENTATION/RFC-0086/ACCEPTANCE_CRITERIA.md +0 -2
  378. package/IMPLEMENTATION/RFC-0086/AI_BRIEF.md +0 -2
  379. package/IMPLEMENTATION/RFC-0086/FILES.md +0 -2
  380. package/IMPLEMENTATION/RFC-0086/TASKS.md +0 -4
  381. package/IMPLEMENTATION/RFC-0086/TESTS.md +0 -3
  382. package/IMPLEMENTATION/RFC-0087/ACCEPTANCE_CRITERIA.md +0 -2
  383. package/IMPLEMENTATION/RFC-0087/AI_BRIEF.md +0 -2
  384. package/IMPLEMENTATION/RFC-0087/FILES.md +0 -2
  385. package/IMPLEMENTATION/RFC-0087/TASKS.md +0 -4
  386. package/IMPLEMENTATION/RFC-0087/TESTS.md +0 -3
  387. package/IMPLEMENTATION/RFC-0088/ACCEPTANCE_CRITERIA.md +0 -2
  388. package/IMPLEMENTATION/RFC-0088/AI_BRIEF.md +0 -2
  389. package/IMPLEMENTATION/RFC-0088/FILES.md +0 -2
  390. package/IMPLEMENTATION/RFC-0088/TASKS.md +0 -4
  391. package/IMPLEMENTATION/RFC-0088/TESTS.md +0 -3
  392. package/IMPLEMENTATION/RFC-0089/ACCEPTANCE_CRITERIA.md +0 -2
  393. package/IMPLEMENTATION/RFC-0089/AI_BRIEF.md +0 -2
  394. package/IMPLEMENTATION/RFC-0089/FILES.md +0 -2
  395. package/IMPLEMENTATION/RFC-0089/TASKS.md +0 -4
  396. package/IMPLEMENTATION/RFC-0089/TESTS.md +0 -3
  397. package/IMPLEMENTATION/RFC-0090/ACCEPTANCE_CRITERIA.md +0 -2
  398. package/IMPLEMENTATION/RFC-0090/AI_BRIEF.md +0 -2
  399. package/IMPLEMENTATION/RFC-0090/FILES.md +0 -2
  400. package/IMPLEMENTATION/RFC-0090/TASKS.md +0 -4
  401. package/IMPLEMENTATION/RFC-0090/TESTS.md +0 -3
  402. package/IMPLEMENTATION/RFC-0091/ACCEPTANCE_CRITERIA.md +0 -2
  403. package/IMPLEMENTATION/RFC-0091/AI_BRIEF.md +0 -2
  404. package/IMPLEMENTATION/RFC-0091/FILES.md +0 -2
  405. package/IMPLEMENTATION/RFC-0091/TASKS.md +0 -4
  406. package/IMPLEMENTATION/RFC-0091/TESTS.md +0 -3
  407. package/IMPLEMENTATION/RFC-0092/ACCEPTANCE_CRITERIA.md +0 -2
  408. package/IMPLEMENTATION/RFC-0092/AI_BRIEF.md +0 -20
  409. package/IMPLEMENTATION/RFC-0092/FILES.md +0 -2
  410. package/IMPLEMENTATION/RFC-0092/TASKS.md +0 -4
  411. package/IMPLEMENTATION/RFC-0092/TESTS.md +0 -3
  412. package/IMPLEMENTATION/RFC-0093/ACCEPTANCE_CRITERIA.md +0 -2
  413. package/IMPLEMENTATION/RFC-0093/AI_BRIEF.md +0 -22
  414. package/IMPLEMENTATION/RFC-0093/FILES.md +0 -2
  415. package/IMPLEMENTATION/RFC-0093/TASKS.md +0 -4
  416. package/IMPLEMENTATION/RFC-0093/TESTS.md +0 -3
  417. package/IMPLEMENTATION/RFC-0094/ACCEPTANCE_CRITERIA.md +0 -2
  418. package/IMPLEMENTATION/RFC-0094/AI_BRIEF.md +0 -2
  419. package/IMPLEMENTATION/RFC-0094/FILES.md +0 -2
  420. package/IMPLEMENTATION/RFC-0094/TASKS.md +0 -4
  421. package/IMPLEMENTATION/RFC-0094/TESTS.md +0 -3
  422. package/IMPLEMENTATION/RFC-0095/ACCEPTANCE_CRITERIA.md +0 -2
  423. package/IMPLEMENTATION/RFC-0095/AI_BRIEF.md +0 -2
  424. package/IMPLEMENTATION/RFC-0095/FILES.md +0 -2
  425. package/IMPLEMENTATION/RFC-0095/TASKS.md +0 -4
  426. package/IMPLEMENTATION/RFC-0095/TESTS.md +0 -3
  427. package/IMPLEMENTATION/RFC-0096/ACCEPTANCE_CRITERIA.md +0 -2
  428. package/IMPLEMENTATION/RFC-0096/AI_BRIEF.md +0 -2
  429. package/IMPLEMENTATION/RFC-0096/FILES.md +0 -2
  430. package/IMPLEMENTATION/RFC-0096/TASKS.md +0 -4
  431. package/IMPLEMENTATION/RFC-0096/TESTS.md +0 -3
  432. package/IMPLEMENTATION/RFC-0097/ACCEPTANCE_CRITERIA.md +0 -2
  433. package/IMPLEMENTATION/RFC-0097/AI_BRIEF.md +0 -2
  434. package/IMPLEMENTATION/RFC-0097/FILES.md +0 -2
  435. package/IMPLEMENTATION/RFC-0097/TASKS.md +0 -4
  436. package/IMPLEMENTATION/RFC-0097/TESTS.md +0 -3
  437. package/IMPLEMENTATION/RFC-0098/ACCEPTANCE_CRITERIA.md +0 -2
  438. package/IMPLEMENTATION/RFC-0098/AI_BRIEF.md +0 -2
  439. package/IMPLEMENTATION/RFC-0098/FILES.md +0 -2
  440. package/IMPLEMENTATION/RFC-0098/TASKS.md +0 -4
  441. package/IMPLEMENTATION/RFC-0098/TESTS.md +0 -3
  442. package/IMPLEMENTATION/RFC-0099/ACCEPTANCE_CRITERIA.md +0 -2
  443. package/IMPLEMENTATION/RFC-0099/AI_BRIEF.md +0 -2
  444. package/IMPLEMENTATION/RFC-0099/FILES.md +0 -2
  445. package/IMPLEMENTATION/RFC-0099/TASKS.md +0 -4
  446. package/IMPLEMENTATION/RFC-0099/TESTS.md +0 -3
  447. package/IMPLEMENTATION/RFC-0100/ACCEPTANCE_CRITERIA.md +0 -2
  448. package/IMPLEMENTATION/RFC-0100/AI_BRIEF.md +0 -2
  449. package/IMPLEMENTATION/RFC-0100/FILES.md +0 -2
  450. package/IMPLEMENTATION/RFC-0100/TASKS.md +0 -4
  451. package/IMPLEMENTATION/RFC-0100/TESTS.md +0 -3
  452. package/IMPLEMENTATION/RFC-0101/ACCEPTANCE_CRITERIA.md +0 -74
  453. package/IMPLEMENTATION/RFC-0101/AI_BRIEF.md +0 -80
  454. package/IMPLEMENTATION/RFC-0101/FILES.md +0 -82
  455. package/IMPLEMENTATION/RFC-0101/TASKS.md +0 -92
  456. package/IMPLEMENTATION/RFC-0101/TESTS.md +0 -127
  457. package/IMPLEMENTATION/RFC-0102/ACCEPTANCE_CRITERIA.md +0 -33
  458. package/IMPLEMENTATION/RFC-0102/AI_BRIEF.md +0 -34
  459. package/IMPLEMENTATION/RFC-0102/FILES.md +0 -73
  460. package/IMPLEMENTATION/RFC-0102/TASKS.md +0 -75
  461. package/IMPLEMENTATION/RFC-0102/TESTS.md +0 -78
  462. package/IMPLEMENTATION/RFC-0103/ACCEPTANCE_CRITERIA.md +0 -45
  463. package/IMPLEMENTATION/RFC-0103/AI_BRIEF.md +0 -46
  464. package/IMPLEMENTATION/RFC-0103/FILES.md +0 -121
  465. package/IMPLEMENTATION/RFC-0103/TASKS.md +0 -97
  466. package/IMPLEMENTATION/RFC-0103/TESTS.md +0 -118
  467. package/IMPLEMENTATION/RFC-0104/ACCEPTANCE_CRITERIA.md +0 -29
  468. package/IMPLEMENTATION/RFC-0104/FILES.md +0 -33
  469. package/IMPLEMENTATION/RFC-0105/ACCEPTANCE_CRITERIA.md +0 -29
  470. package/IMPLEMENTATION/RFC-0105/FILES.md +0 -41
  471. package/IMPLEMENTATION/RFC-0106/ACCEPTANCE_CRITERIA.md +0 -29
  472. package/IMPLEMENTATION/RFC-0106/FILES.md +0 -43
  473. package/RFC/0001_LOOP_RUNTIME.md +0 -14
  474. package/RFC/0002_PROVIDER_ADAPTER.md +0 -3
  475. package/RFC/0003_QUOTA_MANAGER.md +0 -3
  476. package/RFC/0004_PLAYWRIGHT_ADAPTER.md +0 -3
  477. package/RFC/0005_GIT_WORKTREE.md +0 -3
  478. package/RFC/0006_CHECKPOINT_MANAGER.md +0 -56
  479. package/RFC/0007_SCHEDULER.md +0 -32
  480. package/RFC/0008_PROVIDER_ROUTER.md +0 -44
  481. package/RFC/0009_SHARED_CONTEXT.md +0 -32
  482. package/RFC/0010_CONTEXT_WINDOW_MANAGER.md +0 -50
  483. package/RFC/0011_SHARED_BLACKBOARD.md +0 -42
  484. package/RFC/0012_AGENT_HANDOFF_PROTOCOL.md +0 -41
  485. package/RFC/0013_E2E_TEST_ENGINE.md +0 -42
  486. package/RFC/0014_PROJECT_DETECTOR_AND_TEST_DATA_ENGINE.md +0 -35
  487. package/RFC/0015_JOB_STATE_MACHINE.md +0 -45
  488. package/RFC/0016_TASK_GRAPH.md +0 -31
  489. package/RFC/0017_MASTER_PLANNER.md +0 -32
  490. package/RFC/0018_REPAIR_ENGINE.md +0 -36
  491. package/RFC/0019_AUTO_COMPACT_AND_CONTINUE.md +0 -51
  492. package/RFC/0020_OUTPUT_TOKEN_LIMIT_HANDLER.md +0 -49
  493. package/RFC/0021_PARTIAL_RESPONSE_RECOVERY.md +0 -49
  494. package/RFC/0022_NOTIFICATION_CENTER.md +0 -47
  495. package/RFC/0023_LOCAL_BROWSER_AGENT.md +0 -67
  496. package/RFC/0024_LOCAL_RUNTIME_AGENT.md +0 -3
  497. package/RFC/0025_COMMAND_EXECUTOR.md +0 -3
  498. package/RFC/0026_WORKSPACE_MANAGER.md +0 -3
  499. package/RFC/0027_RUNTIME_API.md +0 -3
  500. package/RFC/0028_POLICY_ENGINE.md +0 -3
  501. package/RFC/0029_DEEPAGENTS_ADAPTER.md +0 -2
  502. package/RFC/0030_AGENT_WORKER_INTERFACE.md +0 -2
  503. package/RFC/0031_PROVIDER_ADAPTER_SDK.md +0 -171
  504. package/RFC/0032_CHECKPOINT_ENGINE.md +0 -217
  505. package/RFC/0033_SESSION_MANAGER.md +0 -262
  506. package/RFC/0034_OBSERVABILITY.md +0 -416
  507. package/RFC/0035_ROADMAP_V1.md +0 -295
  508. package/RFC/0036_CODE_REVIEW_ENGINE.md +0 -430
  509. package/RFC/0037_CODE_GENERATION_PIPELINE.md +0 -504
  510. package/RFC/0038_FRAMEWORK_DETECTOR.md +0 -466
  511. package/RFC/0039_TEST_DATA_GENERATOR.md +0 -504
  512. package/RFC/0040_FRAMEWORK_PLUGIN_SDK.md +0 -543
  513. package/RFC/0041_PROMPT_COMPILER.md +0 -232
  514. package/RFC/0042_CONTEXT_COMPILER.md +0 -216
  515. package/RFC/0043_REQUIREMENT_COMPILER.md +0 -211
  516. package/RFC/0044_TASK_COMPILER.md +0 -207
  517. package/RFC/0045_PROJECT_ANALYZER.md +0 -246
  518. package/RFC/0046_DEPENDENCY_ANALYZER.md +0 -14
  519. package/RFC/0047_REPOSITORY_KNOWLEDGE_GRAPH.md +0 -14
  520. package/RFC/0048_CODE_MERGE_ENGINE.md +0 -14
  521. package/RFC/0049_CONFLICT_RESOLUTION_ENGINE.md +0 -14
  522. package/RFC/0050_DOCUMENTATION_GENERATOR.md +0 -14
  523. package/RFC/0051_CAPABILITY_REGISTRY.md +0 -144
  524. package/RFC/0052_SKILL_REGISTRY.md +0 -167
  525. package/RFC/0053_MODEL_REGISTRY.md +0 -214
  526. package/RFC/0054_PROVIDER_ROUTER.md +0 -239
  527. package/RFC/0055_COST_OPTIMIZER.md +0 -285
  528. package/RFC/0056_PERFORMANCE_OPTIMIZER.md +0 -118
  529. package/RFC/0057_EVALUATION_ENGINE.md +0 -116
  530. package/RFC/0058_LEARNING_ENGINE.md +0 -113
  531. package/RFC/0059_EXPERIENCE_REPLAY.md +0 -107
  532. package/RFC/0060_MEMORY_ENGINE_OKF.md +0 -152
  533. package/RFC/0061_FRAPPE_PLUGIN.md +0 -9
  534. package/RFC/0062_NEXTJS_PLUGIN.md +0 -9
  535. package/RFC/0063_REACT_VITE_PLUGIN.md +0 -9
  536. package/RFC/0064_DJANGO_PLUGIN.md +0 -9
  537. package/RFC/0065_LARAVEL_PLUGIN.md +0 -9
  538. package/RFC/0066_GENERIC_WEB_PLUGIN.md +0 -24
  539. package/RFC/0067_CLI_PLUGIN_SDK.md +0 -101
  540. package/RFC/0068_MCP_ADAPTER.md +0 -114
  541. package/RFC/0069_GOOGLE_A2A_ADAPTER.md +0 -139
  542. package/RFC/0070_OPENAI_CODEX_ADAPTER.md +0 -134
  543. package/RFC/0071_REQUIREMENT_INTAKE.md +0 -95
  544. package/RFC/0072_PROJECT_BOOTSTRAP.md +0 -82
  545. package/RFC/0073_ARCHITECTURE_GENERATOR.md +0 -85
  546. package/RFC/0074_SPRINT_PLANNER.md +0 -61
  547. package/RFC/0075_MILESTONE_MANAGER.md +0 -58
  548. package/RFC/0076_BACKLOG_MANAGER.md +0 -24
  549. package/RFC/0077_HUMAN_APPROVAL_GATE.md +0 -24
  550. package/RFC/0078_RELEASE_MANAGER.md +0 -24
  551. package/RFC/0079_VERSION_MANAGER.md +0 -24
  552. package/RFC/0080_DEPLOYMENT_PIPELINE.md +0 -24
  553. package/RFC/0081_MULTI_USER_RUNTIME.md +0 -24
  554. package/RFC/0082_RBAC.md +0 -24
  555. package/RFC/0083_AUDIT_TRAIL.md +0 -24
  556. package/RFC/0084_DASHBOARD.md +0 -24
  557. package/RFC/0085_ANALYTICS.md +0 -24
  558. package/RFC/0086_DISTRIBUTED_RUNTIME.md +0 -24
  559. package/RFC/0087_CLUSTER_MANAGER.md +0 -24
  560. package/RFC/0088_RUNTIME_FEDERATION.md +0 -24
  561. package/RFC/0089_HIGH_AVAILABILITY.md +0 -24
  562. package/RFC/0090_DISASTER_RECOVERY.md +0 -24
  563. package/RFC/0091_AUTONOMOUS_ARCHITECTURE_REVIEW.md +0 -24
  564. package/RFC/0092_AUTONOMOUS_REFACTORING.md +0 -24
  565. package/RFC/0093_AUTONOMOUS_BUG_FIXING.md +0 -24
  566. package/RFC/0094_AUTONOMOUS_PERFORMANCE_TUNING.md +0 -24
  567. package/RFC/0095_AUTONOMOUS_SECURITY_REVIEW.md +0 -24
  568. package/RFC/0096_AUTONOMOUS_COST_OPTIMIZATION.md +0 -24
  569. package/RFC/0097_AUTONOMOUS_DOCUMENTATION.md +0 -24
  570. package/RFC/0098_AUTONOMOUS_KNOWLEDGE_MANAGEMENT.md +0 -24
  571. package/RFC/0099_RUNTIME_EVOLUTION_ENGINE.md +0 -24
  572. package/RFC/0100_SELF_DEVELOPING_RUNTIME.md +0 -24
  573. package/RFC/0101_AUTONOMOUS_OPERATIONS_RUNTIME.md +0 -1105
  574. package/RFC/0102_CONTEXT_ENGINEERING_PIPELINE.md +0 -508
  575. package/RFC/0103_SESSION_EVENT_RUNTIME_AGENT_COMMUNICATION_LAYER.md +0 -616
  576. package/RFC/0104_DISTRIBUTED_AGENT_COMMUNICATION.md +0 -143
  577. package/RFC/0105_DISTRIBUTED_KNOWLEDGE_RETRIEVAL.md +0 -301
  578. package/RFC/0106_KNOWLEDGE_GRAPH_PROVENANCE.md +0 -368
  579. package/RFC/README.md +0 -11
  580. package/packages/event-bus/dist/tsconfig.tsbuildinfo +0 -1
  581. package/packages/provider-adapter-sdk/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,107 +0,0 @@
1
- # RFC-0059 — Experience Replay
2
-
3
- ## 1. Purpose
4
-
5
- Experience Replay reconstructs prior runtime execution from persisted events, checkpoints, prompts, outputs, and evaluation evidence. It supports debugging, regression analysis, and reproducibility.
6
-
7
- Replay is read-only by default.
8
-
9
- ## 2. Inputs
10
-
11
- ```ts
12
- export interface ReplayRequest {
13
- jobId: string;
14
- mode: "inspect" | "simulate" | "reexecute";
15
- fromSequence?: number;
16
- toSequence?: number;
17
- allowExternalCalls: boolean;
18
- }
19
- ```
20
-
21
- ## 3. Outputs
22
-
23
- ```ts
24
- export interface ReplayResult {
25
- jobId: string;
26
- reconstructedState: JobStateSnapshot;
27
- timeline: ReplayEvent[];
28
- divergences: ReplayDivergence[];
29
- artifacts: string[];
30
- }
31
- ```
32
-
33
- ## 4. Modes
34
-
35
- ### Inspect
36
-
37
- Rebuilds state without executing tasks or provider calls.
38
-
39
- ### Simulate
40
-
41
- Runs deterministic runtime transitions using recorded inputs but no external model/provider calls.
42
-
43
- ### Reexecute
44
-
45
- Runs selected steps again. This mode requires explicit approval and isolated worktree.
46
-
47
- ## 5. Replay Sources
48
-
49
- ```text
50
- checkpoint.json
51
- events.jsonl
52
- task-graph.json
53
- prompt packages
54
- agent reports
55
- test results
56
- evaluation results
57
- repair attempts
58
- OKF knowledge references
59
- ```
60
-
61
- ## 6. Determinism
62
-
63
- A replay records divergence when:
64
-
65
- - Source file hash differs.
66
- - Project rules changed.
67
- - Provider output differs.
68
- - Test environment changed.
69
- - Required artifact is missing.
70
- - Runtime version differs.
71
-
72
- ## 7. Safety
73
-
74
- Replay must never:
75
-
76
- - Re-run destructive commands without approval.
77
- - Modify the original worktree.
78
- - Reuse expired credentials.
79
- - Send notifications as if replay were live.
80
- - Mark original tasks complete.
81
-
82
- ## 8. Runtime Events
83
-
84
- ```ts
85
- type ReplayRuntimeEvent =
86
- | { type: "replay.started"; jobId: string; mode: string }
87
- | { type: "replay.state.reconstructed"; jobId: string; sequence: number }
88
- | { type: "replay.divergence.detected"; jobId: string; reason: string }
89
- | { type: "replay.completed"; jobId: string };
90
- ```
91
-
92
- ## 9. Tests
93
-
94
- - Reconstructs state from event log.
95
- - Detects changed source hash.
96
- - Inspect mode performs no writes.
97
- - Reexecute mode requires approval.
98
- - Original task state remains unchanged.
99
- - Missing artifact creates divergence entry.
100
-
101
- ## 10. Acceptance Criteria
102
-
103
- - Replay can reconstruct any checkpointed job.
104
- - Inspect mode is strictly read-only.
105
- - Divergences are explicit.
106
- - Reexecution is isolated.
107
- - Original job data is immutable.
@@ -1,152 +0,0 @@
1
- # RFC-0060 — Memory Engine with OKF Integration
2
-
3
- ## 1. Purpose
4
-
5
- The Memory Engine converts runtime knowledge into durable, human-readable, agent-readable project memory using Google's Open Knowledge Format (OKF).
6
-
7
- It bridges temporary Shared Blackboard state and long-term project knowledge.
8
-
9
- ## 2. Responsibilities
10
-
11
- - Read OKF bundles.
12
- - Validate OKF concept documents.
13
- - Index concepts.
14
- - Resolve links.
15
- - Retrieve relevant knowledge.
16
- - Export approved lessons.
17
- - Preserve version history.
18
- - Generate directory indexes.
19
- - Record update logs.
20
-
21
- ## 3. OKF Bundle Structure
22
-
23
- ```text
24
- knowledge/
25
- +-- index.md
26
- +-- log.md
27
- +-- runtime/
28
- | +-- index.md
29
- | +-- loop-runtime.md
30
- | +-- shared-blackboard.md
31
- +-- providers/
32
- +-- frameworks/
33
- +-- failures/
34
- +-- patterns/
35
- +-- lessons/
36
- ```
37
-
38
- ## 4. Concept Model
39
-
40
- ```ts
41
- export interface OkfConcept {
42
- id: string;
43
- type: string;
44
- title?: string;
45
- description?: string;
46
- resource?: string;
47
- tags: string[];
48
- timestamp?: string;
49
- metadata: Record<string, unknown>;
50
- body: string;
51
- links: OkfLink[];
52
- }
53
- ```
54
-
55
- The only required OKF frontmatter field is `type`. Unknown metadata must be preserved.
56
-
57
- ## 5. Public Interface
58
-
59
- ```ts
60
- export interface MemoryEngine {
61
- loadBundle(path: string): Promise<KnowledgeBundle>;
62
- validateBundle(bundle: KnowledgeBundle): Promise<ValidationResult>;
63
- search(query: KnowledgeQuery): Promise<KnowledgeResult[]>;
64
- writeConcept(input: WriteConceptRequest): Promise<OkfConcept>;
65
- rebuildIndex(path: string): Promise<void>;
66
- }
67
- ```
68
-
69
- ## 6. Retrieval
70
-
71
- Retrieval combines:
72
-
73
- - Exact title match
74
- - Tag match
75
- - Concept type
76
- - Link traversal
77
- - Framework relevance
78
- - Task relevance
79
- - Freshness
80
- - Authority metadata
81
-
82
- ## 7. Authority
83
-
84
- Recommended extension:
85
-
86
- ```yaml
87
- authority: approved | generated | unverified
88
- ```
89
-
90
- Consumers should prioritize approved concepts, but must preserve generated and unverified concepts.
91
-
92
- ## 8. Blackboard Promotion
93
-
94
- ```text
95
- runtime state
96
- -> candidate knowledge
97
- -> deduplicate
98
- -> review
99
- -> approved concept
100
- -> write OKF
101
- -> update index.md
102
- -> append log.md
103
- ```
104
-
105
- Temporary status updates should not automatically become durable knowledge.
106
-
107
- ## 9. Validation
108
-
109
- A conformant concept:
110
-
111
- - Is UTF-8 Markdown.
112
- - Contains YAML frontmatter.
113
- - Contains non-empty `type`.
114
- - Preserves unknown fields.
115
- - May contain broken links without failing the entire bundle.
116
-
117
- Reserved files:
118
-
119
- - `index.md`
120
- - `log.md`
121
-
122
- ## 10. Security
123
-
124
- The Memory Engine must never persist:
125
-
126
- - API keys
127
- - Cookies
128
- - Passwords
129
- - Raw secrets
130
- - Private user data unrelated to engineering
131
- - Complete confidential files unless explicitly approved
132
-
133
- ## 11. Tests
134
-
135
- - Loads valid OKF concept.
136
- - Rejects concept missing `type`.
137
- - Preserves unknown frontmatter.
138
- - Tolerates broken link.
139
- - Generates `index.md`.
140
- - Appends `log.md`.
141
- - Searches by tag and type.
142
- - Exports approved learning item.
143
- - Rejects secret-like content.
144
-
145
- ## 12. Acceptance Criteria
146
-
147
- - Bundle validation follows OKF v0.1.
148
- - Unknown frontmatter survives round-trip.
149
- - Search returns source references.
150
- - Blackboard content requires promotion review.
151
- - Index and log generation are deterministic.
152
- - Secret filtering occurs before persistence.
@@ -1,9 +0,0 @@
1
- # RFC-0061 FRAPPE_PLUGIN
2
-
3
- Purpose
4
- - Framework integration
5
-
6
- Interface
7
- ```ts
8
- export interface FrameworkPlugin{detect(root:string):Promise<boolean>;analyze(root:string):Promise<any>;}
9
- ```
@@ -1,9 +0,0 @@
1
- # RFC-0062 NEXTJS_PLUGIN
2
-
3
- Purpose
4
- - Framework integration
5
-
6
- Interface
7
- ```ts
8
- export interface FrameworkPlugin{detect(root:string):Promise<boolean>;analyze(root:string):Promise<any>;}
9
- ```
@@ -1,9 +0,0 @@
1
- # RFC-0063 REACT_VITE_PLUGIN
2
-
3
- Purpose
4
- - Framework integration
5
-
6
- Interface
7
- ```ts
8
- export interface FrameworkPlugin{detect(root:string):Promise<boolean>;analyze(root:string):Promise<any>;}
9
- ```
@@ -1,9 +0,0 @@
1
- # RFC-0064 DJANGO_PLUGIN
2
-
3
- Purpose
4
- - Framework integration
5
-
6
- Interface
7
- ```ts
8
- export interface FrameworkPlugin{detect(root:string):Promise<boolean>;analyze(root:string):Promise<any>;}
9
- ```
@@ -1,9 +0,0 @@
1
- # RFC-0065 LARAVEL_PLUGIN
2
-
3
- Purpose
4
- - Framework integration
5
-
6
- Interface
7
- ```ts
8
- export interface FrameworkPlugin{detect(root:string):Promise<boolean>;analyze(root:string):Promise<any>;}
9
- ```
@@ -1,24 +0,0 @@
1
- # RFC-0066 — GENERIC WEB PLUGIN
2
-
3
- ## Purpose
4
- Defines the architecture contract for the generic web plugin subsystem.
5
-
6
- ## Scope
7
- - Responsibilities
8
- - Public interfaces
9
- - Runtime events
10
- - Integration points
11
- - Acceptance criteria
12
-
13
- ## Key Interfaces
14
- - Service
15
- - Configuration
16
- - Events
17
-
18
- ## Dependencies
19
- To be refined during implementation review.
20
-
21
- ## Acceptance
22
- - Typed API
23
- - Deterministic behavior
24
- - Unit tests
@@ -1,101 +0,0 @@
1
- # RFC-0067 — CLI Plugin SDK
2
-
3
- ## Summary
4
-
5
- A Node.js CLI SDK for managing pi-harness plugins — install, list, update, remove, and invoke plugin commands. Provides both a programmatic API (`PluginCLI`) and a standalone CLI (`pi-plugin`).
6
-
7
- ## Architecture
8
-
9
- ```
10
- packages/cli-plugin-sdk/
11
- +-- src/
12
- | +-- index.ts # PluginCLI class + CLI entry
13
- | +-- commands/ # Install, list, remove, invoke, update
14
- | +-- registry.ts # npm registry client
15
- | +-- plugin-fs.ts # Filesystem operations
16
- | +-- types.ts
17
- +-- bin/
18
- | +-- pi-plugin.js # CLI entry point
19
- +-- package.json
20
- +-- README.md
21
- ```
22
-
23
- ## CLI Commands
24
-
25
- ```bash
26
- pi-plugin install <name> [--version <v>] [--global]
27
- pi-plugin list [--json]
28
- pi-plugin remove <name>
29
- pi-plugin update [name]
30
- pi-plugin invoke <name> <command> [--args <json>]
31
- pi-plugin search <query>
32
- ```
33
-
34
- ## Programmatic API
35
-
36
- ```typescript
37
- import { PluginCLI } from '@pi/cli-plugin-sdk';
38
-
39
- const cli = new PluginCLI({ cwd: process.cwd() });
40
- await cli.install('my-plugin');
41
- await cli.invoke('my-plugin', 'analyze', { path: './src' });
42
- const plugins = await cli.list();
43
- await cli.remove('my-plugin');
44
- ```
45
-
46
- ## Interfaces
47
-
48
- ```typescript
49
- // packages/cli-plugin-sdk/src/types.ts
50
-
51
- export interface PluginCLIConfig {
52
- cwd?: string;
53
- globalDir?: string;
54
- registry?: string;
55
- npmBin?: string;
56
- }
57
-
58
- export interface InstalledPlugin {
59
- name: string;
60
- version: string;
61
- path: string;
62
- manifest: PluginManifest;
63
- }
64
-
65
- export interface PluginSearchResult {
66
- name: string;
67
- version: string;
68
- description: string;
69
- downloads: number;
70
- }
71
-
72
- export class PluginCLI {
73
- constructor(config?: PluginCLIConfig);
74
- install(name: string, options?: { version?: string; global?: boolean }): Promise<void>;
75
- remove(name: string): Promise<void>;
76
- list(options?: { json?: boolean }): Promise<InstalledPlugin[]>;
77
- update(name?: string): Promise<void>;
78
- search(query: string): Promise<PluginSearchResult[]>;
79
- invoke(pluginName: string, command: string, args?: Record<string, unknown>): Promise<unknown>;
80
- getPluginPath(name: string): string | null;
81
- }
82
- ```
83
-
84
- ## Key Implementation Details
85
-
86
- - **Installation**: Uses `npm install` with `--save` or `--global` flag
87
- - **Plugin directory**: `{cwd}/node_modules/@pi/plugins/` for local, `~/.pi/plugins/` for global
88
- - **Manifest validation**: Validates `package.json` has `pi` field with `sdkVersion`
89
- - **Invoke**: Loads plugin module and calls exported function by name
90
- - **Search**: Queries npm registry for packages matching `@pi/plugin-*` or `@pi/*-plugin`
91
-
92
- ## Acceptance Criteria
93
-
94
- - [ ] `pi-plugin install` installs from npm and validates manifest
95
- - [ ] `pi-plugin list` shows all installed plugins with versions
96
- - [ ] `pi-plugin remove` uninstalls and cleans up
97
- - [ ] `pi-plugin update` updates to latest compatible version
98
- - [ ] `pi-plugin invoke` calls plugin exported function
99
- - [ ] `pi-plugin search` queries npm registry
100
- - [ ] Programmatic `PluginCLI` API works
101
- - [ ] Unit tests for all commands
@@ -1,114 +0,0 @@
1
- # RFC-0068 — MCP Adapter
2
-
3
- ## Summary
4
-
5
- Exposes the pi-harness runtime as a [Model Context Protocol](https://modelcontextprotocol.io) (MCP) server. External MCP-compatible clients (Claude Desktop, Cursor, etc.) can discover and invoke harness capabilities as MCP tools, prompts, and resources.
6
-
7
- ## Architecture
8
-
9
- ```
10
- packages/mcp-adapter/
11
- +-- src/
12
- | +-- server.ts # MCP server (stdio transport)
13
- | +-- tools.ts # Tool definitions (4 core tools)
14
- | +-- resources.ts # Read-only resource handlers
15
- | +-- prompts.ts # Prompt templates
16
- | +-- types.ts
17
- | +-- index.ts
18
- +-- package.json
19
- +-- README.md
20
- ```
21
-
22
- ## MCP Protocol Compliance
23
-
24
- - **Transport**: STDIO (JSON-RPC 2.0 over stdin/stdout)
25
- - **Protocol version**: 2024-11-05
26
- - **Schema**: Follows MCP JSON-RPC request/response convention
27
-
28
- ## Exposed Tools
29
-
30
- | Tool | Description | Parameters |
31
- |------|-------------|------------|
32
- | `analyze_workspace` | Analyze a codebase directory | `{ path: string, framework?: string }` |
33
- | `search_memory` | Search harness memory store | `{ query: string, limit?: number }` |
34
- | `list_skills` | List available harness skills | `{ capability?: string }` |
35
- | `invoke_skill` | Invoke a named skill | `{ name: string, trigger: object }` |
36
-
37
- ## Exposed Resources
38
-
39
- | URI | Description |
40
- |-----|-------------|
41
- | `harness://skills` | JSON list of all registered skills |
42
- | `harness://capabilities` | Current capability registry |
43
- | `harness://framework/{name}` | Framework analysis result |
44
-
45
- ## Exposed Prompts
46
-
47
- | Prompt | Description |
48
- |--------|-------------|
49
- | `analyze_project` | Full project analysis with recommendations |
50
- | `review_code` | Code review with context from workspace |
51
-
52
- ## Server Entry
53
-
54
- ```typescript
55
- // src/server.ts
56
- export async function createMCPServer(options?: MCPServerOptions): Promise<void> {
57
- // Read JSON-RPC requests from stdin
58
- // Write responses to stdout
59
- // Log errors to stderr
60
- }
61
- ```
62
-
63
- ## Key Implementation
64
-
65
- - **Transport**: STDIO — reads JSON-RPC requests from `process.stdin`, writes to `process.stdout`
66
- - **Protocol**: MCP 2024-11-05 JSON-RPC 2.0
67
- - **Server initialization**: Sends `initialize` response with server name/version/capabilities
68
- - **Tool invocation**: Maps MCP `tools/call` to harness internal calls
69
- - **Resources**: Read-only, served as `resources/list` + `resources/read`
70
- - **Prompts**: Served as `prompts/list` + `prompts/get`
71
- - **No network**: STDIO-only for security
72
-
73
- ## Types
74
-
75
- ```typescript
76
- // src/types.ts
77
-
78
- export interface MCPServerOptions {
79
- name?: string;
80
- version?: string;
81
- capabilities?: ServerCapabilities;
82
- }
83
-
84
- export interface ServerCapabilities {
85
- tools?: { listChanged?: boolean };
86
- resources?: { subscribe?: boolean; listChanged?: boolean };
87
- prompts?: { listChanged?: boolean };
88
- }
89
-
90
- // MCP JSON-RPC types
91
- export interface MCPRequest {
92
- jsonrpc: "2.0";
93
- id: number | string;
94
- method: string;
95
- params?: Record<string, unknown>;
96
- }
97
-
98
- export interface MCPResponse {
99
- jsonrpc: "2.0";
100
- id: number | string;
101
- result?: unknown;
102
- error?: { code: number; message: string; data?: unknown };
103
- }
104
- ```
105
-
106
- ## Acceptance Criteria
107
-
108
- - [ ] MCP server starts and responds to `initialize`
109
- - [ ] `tools/list` returns 4 harness tools
110
- - [ ] `tools/call` invokes tool and returns result
111
- - [ ] `resources/list` returns harness resources
112
- - [ ] `prompts/list` returns harness prompts
113
- - [ ] STDIO transport works correctly
114
- - [ ] Unit tests for tool handlers
@@ -1,139 +0,0 @@
1
- # RFC-0069 — Google A2A Adapter
2
-
3
- ## Summary
4
-
5
- Implements the [Google Agent-to-Agent (A2A) protocol](https://google.github.io/A2A/) to enable pi-harness agents to discover, communicate, and delegate tasks to other A2A-compatible agents. Bridges the harness agent system with the broader A2A ecosystem.
6
-
7
- ## Architecture
8
-
9
- ```
10
- packages/a2a-adapter/
11
- +-- src/
12
- | +-- agent.ts # A2AAgent class (agentcard, task handling)
13
- | +-- client.ts # A2AClient class (agent discovery, delegation)
14
- | +-- protocol.ts # A2A protocol types and constants
15
- | +-- transport.ts # HTTP transport with SSE support
16
- | +-- types.ts
17
- | +-- index.ts
18
- +-- package.json
19
- +-- README.md
20
- ```
21
-
22
- ## A2A Protocol Overview
23
-
24
- A2A defines:
25
-
26
- - **AgentCard**: JSON document at `/.well-known/agent.json` describing agent capabilities
27
- - **Tasks**: Long-running task objects with status updates
28
- - **Messages**: Task input/output as JSON
29
- - **Skills**: Agent capability descriptors
30
- - **Transport**: HTTP + Server-Sent Events (SSE) for streaming
31
-
32
- ## A2AAgent (Server Side)
33
-
34
- ```typescript
35
- // Expose this harness agent as an A2A agent
36
- export class A2AAgent {
37
- constructor(config: A2AAgentConfig);
38
-
39
- // Serve AgentCard at /.well-known/agent.json
40
- async serveAgentCard(): Promise<AgentCard>;
41
-
42
- // Handle incoming A2A requests
43
- async handleRequest(req: A2ARequest): Promise<A2AResponse>;
44
-
45
- // Send task result back (for push notifications)
46
- async sendTaskResult(taskId: string, result: TaskResult): Promise<void>;
47
-
48
- // Stream task updates via SSE
49
- streamTaskUpdates(taskId: string): AsyncGenerator<TaskUpdate>;
50
- }
51
- ```
52
-
53
- ## A2AClient (Delegate Side)
54
-
55
- ```typescript
56
- // Discover and delegate to remote A2A agents
57
- export class A2AClient {
58
- constructor(config?: A2AClientConfig);
59
-
60
- // Discover agent via URL or well-known endpoint
61
- async discoverAgent(url: string): Promise<AgentCard>;
62
-
63
- // Search for agents by skill/capability
64
- async findAgents(criteria: AgentSearchCriteria): Promise<AgentCard[]>;
65
-
66
- // Send task to agent
67
- async sendTask(agentUrl: string, task: Task): Promise<TaskHandle>;
68
-
69
- // Get task result
70
- async getTaskResult(taskId: string, agentUrl: string): Promise<TaskResult>;
71
-
72
- // Subscribe to task updates (SSE)
73
- subscribeToTask(taskId: string, agentUrl: string): AsyncGenerator<TaskUpdate>;
74
- }
75
- ```
76
-
77
- ## AgentCard
78
-
79
- ```typescript
80
- export interface AgentCard {
81
- name: string;
82
- description: string;
83
- url: string;
84
- version: string;
85
- capabilities: {
86
- streaming?: boolean;
87
- pushNotifications?: boolean;
88
- stateTransitionHistory?: boolean;
89
- };
90
- skills: Skill[];
91
- authentication?: { schemes: string[] };
92
- defaultInputModes?: string[];
93
- defaultOutputModes?: string[];
94
- }
95
-
96
- export interface Skill {
97
- id: string;
98
- name: string;
99
- description: string;
100
- tags?: string[];
101
- inputModes?: string[];
102
- outputModes?: string[];
103
- }
104
- ```
105
-
106
- ## Task Lifecycle
107
-
108
- ```
109
- SendingAgent -> [send_task] -> ReceivingAgent
110
- -> Task created (status: working)
111
- -> TaskUpdate events (optional)
112
- -> Task completed/cancelled/failed
113
- SendingAgent <- [task_result] <- ReceivingAgent
114
- ```
115
-
116
- ## Harness Integration
117
-
118
- ```typescript
119
- // Integrate with harness agent system
120
- export interface A2AIntegrationConfig {
121
- agentUrl: string;
122
- agentPort: number;
123
- pushUrl?: string; // For push notifications
124
- agentCard: Partial<AgentCard>;
125
- }
126
-
127
- // When harness receives A2A task, route to skill-registry
128
- // When harness delegates, use A2AClient
129
- ```
130
-
131
- ## Acceptance Criteria
132
-
133
- - [ ] `A2AAgent` serves valid AgentCard at well-known endpoint
134
- - [ ] `A2AAgent` handles `send_task` requests and returns task result
135
- - [ ] `A2AClient` discovers agents via well-known URL
136
- - [ ] `A2AClient` sends tasks and retrieves results
137
- - [ ] SSE streaming for task updates works
138
- - [ ] Harness skill-registry used for task routing
139
- - [ ] Unit tests for all components