@aria_asi/cli 0.2.25 → 0.2.29

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 (249) hide show
  1. package/CLIENT-ONBOARDING.md +282 -0
  2. package/bin/aria.js +1140 -14
  3. package/dist/aria-connector/src/auth-commands.d.ts +1 -0
  4. package/dist/aria-connector/src/auth-commands.d.ts.map +1 -1
  5. package/dist/aria-connector/src/auth-commands.js +89 -41
  6. package/dist/aria-connector/src/auth-commands.js.map +1 -1
  7. package/dist/aria-connector/src/chat.d.ts +3 -0
  8. package/dist/aria-connector/src/chat.d.ts.map +1 -1
  9. package/dist/aria-connector/src/chat.js +146 -8
  10. package/dist/aria-connector/src/chat.js.map +1 -1
  11. package/dist/aria-connector/src/codebase-scanner.d.ts +2 -2
  12. package/dist/aria-connector/src/codebase-scanner.d.ts.map +1 -1
  13. package/dist/aria-connector/src/codebase-scanner.js +1 -1
  14. package/dist/aria-connector/src/codebase-scanner.js.map +1 -1
  15. package/dist/aria-connector/src/config.d.ts +12 -0
  16. package/dist/aria-connector/src/config.d.ts.map +1 -1
  17. package/dist/aria-connector/src/config.js +2 -0
  18. package/dist/aria-connector/src/config.js.map +1 -1
  19. package/dist/aria-connector/src/connectors/claude-code.d.ts.map +1 -1
  20. package/dist/aria-connector/src/connectors/claude-code.js +111 -21
  21. package/dist/aria-connector/src/connectors/claude-code.js.map +1 -1
  22. package/dist/aria-connector/src/connectors/codebase-awareness.d.ts +37 -0
  23. package/dist/aria-connector/src/connectors/codebase-awareness.d.ts.map +1 -0
  24. package/dist/aria-connector/src/connectors/codebase-awareness.js +335 -0
  25. package/dist/aria-connector/src/connectors/codebase-awareness.js.map +1 -0
  26. package/dist/aria-connector/src/connectors/codex.d.ts +3 -0
  27. package/dist/aria-connector/src/connectors/codex.d.ts.map +1 -0
  28. package/dist/aria-connector/src/connectors/codex.js +248 -0
  29. package/dist/aria-connector/src/connectors/codex.js.map +1 -0
  30. package/dist/aria-connector/src/connectors/cognitive-skills.d.ts +2 -0
  31. package/dist/aria-connector/src/connectors/cognitive-skills.d.ts.map +1 -0
  32. package/dist/aria-connector/src/connectors/cognitive-skills.js +47 -0
  33. package/dist/aria-connector/src/connectors/cognitive-skills.js.map +1 -0
  34. package/dist/aria-connector/src/connectors/opencode.d.ts.map +1 -1
  35. package/dist/aria-connector/src/connectors/opencode.js +90 -4
  36. package/dist/aria-connector/src/connectors/opencode.js.map +1 -1
  37. package/dist/aria-connector/src/connectors/repo-git-hooks.d.ts +3 -0
  38. package/dist/aria-connector/src/connectors/repo-git-hooks.d.ts.map +1 -0
  39. package/dist/aria-connector/src/connectors/repo-git-hooks.js +87 -0
  40. package/dist/aria-connector/src/connectors/repo-git-hooks.js.map +1 -0
  41. package/dist/aria-connector/src/connectors/repo-guard.d.ts +19 -0
  42. package/dist/aria-connector/src/connectors/repo-guard.d.ts.map +1 -0
  43. package/dist/aria-connector/src/connectors/repo-guard.js +509 -0
  44. package/dist/aria-connector/src/connectors/repo-guard.js.map +1 -0
  45. package/dist/aria-connector/src/connectors/runtime.d.ts +2 -0
  46. package/dist/aria-connector/src/connectors/runtime.d.ts.map +1 -0
  47. package/dist/aria-connector/src/connectors/runtime.js +330 -0
  48. package/dist/aria-connector/src/connectors/runtime.js.map +1 -0
  49. package/dist/aria-connector/src/connectors/shell.d.ts.map +1 -1
  50. package/dist/aria-connector/src/connectors/shell.js +78 -13
  51. package/dist/aria-connector/src/connectors/shell.js.map +1 -1
  52. package/dist/aria-connector/src/connectors/syncd.d.ts +27 -0
  53. package/dist/aria-connector/src/connectors/syncd.d.ts.map +1 -0
  54. package/dist/aria-connector/src/connectors/syncd.js +405 -0
  55. package/dist/aria-connector/src/connectors/syncd.js.map +1 -0
  56. package/dist/aria-connector/src/decisions.d.ts +207 -0
  57. package/dist/aria-connector/src/decisions.d.ts.map +1 -0
  58. package/dist/aria-connector/src/decisions.js +291 -0
  59. package/dist/aria-connector/src/decisions.js.map +1 -0
  60. package/dist/aria-connector/src/garden-control-plane.d.ts.map +1 -1
  61. package/dist/aria-connector/src/garden-control-plane.js +74 -17
  62. package/dist/aria-connector/src/garden-control-plane.js.map +1 -1
  63. package/dist/aria-connector/src/github-connect.d.ts +18 -0
  64. package/dist/aria-connector/src/github-connect.d.ts.map +1 -0
  65. package/dist/aria-connector/src/github-connect.js +117 -0
  66. package/dist/aria-connector/src/github-connect.js.map +1 -0
  67. package/dist/aria-connector/src/harness-client.d.ts +15 -0
  68. package/dist/aria-connector/src/harness-client.d.ts.map +1 -1
  69. package/dist/aria-connector/src/harness-client.js +106 -3
  70. package/dist/aria-connector/src/harness-client.js.map +1 -1
  71. package/dist/aria-connector/src/hive-client.d.ts +30 -0
  72. package/dist/aria-connector/src/hive-client.d.ts.map +1 -1
  73. package/dist/aria-connector/src/hive-client.js +124 -5
  74. package/dist/aria-connector/src/hive-client.js.map +1 -1
  75. package/dist/aria-connector/src/index.d.ts +13 -2
  76. package/dist/aria-connector/src/index.d.ts.map +1 -1
  77. package/dist/aria-connector/src/index.js +10 -1
  78. package/dist/aria-connector/src/index.js.map +1 -1
  79. package/dist/aria-connector/src/lib/aristotle-noor-wire.d.ts +102 -0
  80. package/dist/aria-connector/src/lib/aristotle-noor-wire.d.ts.map +1 -0
  81. package/dist/aria-connector/src/lib/aristotle-noor-wire.js +231 -0
  82. package/dist/aria-connector/src/lib/aristotle-noor-wire.js.map +1 -0
  83. package/dist/aria-connector/src/providers/types.d.ts +5 -0
  84. package/dist/aria-connector/src/providers/types.d.ts.map +1 -1
  85. package/dist/aria-connector/src/runtime-proof.d.ts +45 -0
  86. package/dist/aria-connector/src/runtime-proof.d.ts.map +1 -0
  87. package/dist/aria-connector/src/runtime-proof.js +340 -0
  88. package/dist/aria-connector/src/runtime-proof.js.map +1 -0
  89. package/dist/aria-connector/src/setup-wizard.d.ts.map +1 -1
  90. package/dist/aria-connector/src/setup-wizard.js +34 -2
  91. package/dist/aria-connector/src/setup-wizard.js.map +1 -1
  92. package/dist/assets/hooks/aria-agent-handoff.mjs +224 -0
  93. package/dist/assets/hooks/aria-agent-ledger-merge.mjs +164 -0
  94. package/dist/assets/hooks/aria-architect-fallback.mjs +267 -0
  95. package/dist/assets/hooks/aria-cognition-substrate-binding.mjs +676 -0
  96. package/dist/assets/hooks/aria-discovery-record.mjs +101 -0
  97. package/dist/assets/hooks/aria-harness-via-sdk.mjs +412 -0
  98. package/dist/assets/hooks/aria-import-resolution-gate.mjs +330 -0
  99. package/dist/assets/hooks/aria-outcome-record.mjs +84 -0
  100. package/dist/assets/hooks/aria-pre-emit-dryrun.mjs +294 -0
  101. package/dist/assets/hooks/aria-pre-text-gate.mjs +112 -0
  102. package/dist/assets/hooks/aria-pre-tool-gate.mjs +2133 -0
  103. package/dist/assets/hooks/aria-preprompt-consult.mjs +438 -0
  104. package/dist/assets/hooks/aria-preturn-memory-gate.mjs +570 -0
  105. package/dist/assets/hooks/aria-repo-doctrine-gate.mjs +397 -0
  106. package/dist/assets/hooks/aria-stop-gate.mjs +1551 -0
  107. package/dist/assets/hooks/aria-trigger-autolearn.mjs +229 -0
  108. package/dist/assets/hooks/aria-userprompt-abandon-detect.mjs +192 -0
  109. package/dist/assets/hooks/doctrine_trigger_map.json +479 -0
  110. package/dist/assets/hooks/lib/canonical-lenses.mjs +64 -0
  111. package/dist/assets/hooks/lib/gate-audit.mjs +43 -0
  112. package/dist/assets/hooks/test-aria-preturn-memory-gate.mjs +245 -0
  113. package/dist/assets/hooks/test-tier-lens-labeling.mjs +399 -0
  114. package/dist/assets/opencode-plugins/harness-context/index.js +60 -0
  115. package/dist/assets/opencode-plugins/harness-context/inject-context.mjs +179 -0
  116. package/dist/assets/opencode-plugins/harness-context/package.json +9 -0
  117. package/dist/assets/opencode-plugins/harness-gate/index.js +248 -0
  118. package/dist/assets/opencode-plugins/harness-outcome/index.js +129 -0
  119. package/dist/assets/opencode-plugins/harness-role/index.js +77 -0
  120. package/dist/assets/opencode-plugins/harness-role/package.json +9 -0
  121. package/dist/assets/opencode-plugins/harness-stop/index.js +241 -0
  122. package/dist/runtime/discipline/CLAUDE.md +339 -0
  123. package/dist/runtime/discipline/skills/aria-cognition/aria-essence/SKILL.md +63 -0
  124. package/dist/runtime/discipline/skills/aria-cognition/aria-essence/references/domain-matrix.md +80 -0
  125. package/dist/runtime/discipline/skills/aria-cognition/aria-essence/references/evolution-loop.md +30 -0
  126. package/dist/runtime/discipline/skills/aria-cognition/aria-essence/references/readable-cognition.md +27 -0
  127. package/dist/runtime/discipline/skills/aria-cognition/aria-forge-guardrails/SKILL.md +35 -0
  128. package/dist/runtime/discipline/skills/aria-cognition/aria-forge-guardrails/references/checklist.md +31 -0
  129. package/dist/runtime/discipline/skills/aria-cognition/aria-repo-doctrine/SKILL.md +39 -0
  130. package/dist/runtime/discipline/skills/aria-cognition/forge-quality-rules/SKILL.md +43 -0
  131. package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/SKILL.md +38 -0
  132. package/dist/runtime/discipline/skills/aria-cognition/istiqra-induction/SKILL.md +26 -0
  133. package/dist/runtime/discipline/skills/aria-cognition/ladunni-22/SKILL.md +35 -0
  134. package/dist/runtime/discipline/skills/aria-cognition/mizan/SKILL.md +72 -0
  135. package/dist/runtime/discipline/skills/aria-cognition/nadia/SKILL.md +38 -0
  136. package/dist/runtime/discipline/skills/aria-cognition/nadia-psi/SKILL.md +38 -0
  137. package/dist/runtime/discipline/skills/aria-cognition/predictor/SKILL.md +25 -0
  138. package/dist/runtime/discipline/skills/aria-cognition/qiyas-analogy/SKILL.md +26 -0
  139. package/dist/runtime/discipline/skills/aria-cognition/soul-domains/SKILL.md +25 -0
  140. package/dist/runtime/discipline/skills/aria-harness/aria-aristotle-intra-phase/SKILL.md +81 -0
  141. package/dist/runtime/discipline/skills/aria-harness/aria-aristotle-post-phase/SKILL.md +98 -0
  142. package/dist/runtime/discipline/skills/aria-harness/aria-aristotle-pre-phase/SKILL.md +99 -0
  143. package/dist/runtime/discipline/skills/aria-harness/aria-harness-deploy/SKILL.md +127 -0
  144. package/dist/runtime/discipline/skills/aria-harness/aria-harness-no-stripping/SKILL.md +117 -0
  145. package/dist/runtime/discipline/skills/aria-harness/aria-harness-onboarding/SKILL.md +112 -0
  146. package/dist/runtime/discipline/skills/aria-harness/aria-harness-output-discipline/SKILL.md +102 -0
  147. package/dist/runtime/discipline/skills/aria-harness/aria-harness-substrate-binding/SKILL.md +121 -0
  148. package/dist/runtime/doctor.mjs +23 -0
  149. package/dist/runtime/local-phase.mjs +632 -0
  150. package/dist/runtime/manifest.json +15 -0
  151. package/dist/runtime/mizan-scheduler.mjs +331 -0
  152. package/dist/runtime/package.json +6 -0
  153. package/dist/runtime/provider-proxy.mjs +594 -0
  154. package/dist/runtime/sdk/BUNDLED.json +5 -0
  155. package/dist/runtime/sdk/index.d.ts +477 -0
  156. package/dist/runtime/sdk/index.js +1469 -0
  157. package/dist/runtime/sdk/index.js.map +1 -0
  158. package/dist/runtime/sdk/package.json +8 -0
  159. package/dist/runtime/sdk/runWithCognition.d.ts +77 -0
  160. package/dist/runtime/sdk/runWithCognition.js +157 -0
  161. package/dist/runtime/sdk/runWithCognition.js.map +1 -0
  162. package/dist/runtime/service.mjs +2708 -0
  163. package/dist/runtime/vendor/aria-gate-runtime/index.d.ts +53 -0
  164. package/dist/runtime/vendor/aria-gate-runtime/index.d.ts.map +1 -0
  165. package/dist/runtime/vendor/aria-gate-runtime/index.js +277 -0
  166. package/dist/runtime/vendor/aria-gate-runtime/index.js.map +1 -0
  167. package/dist/runtime/vendor/aria-gate-runtime/package.json +6 -0
  168. package/dist/sdk/BUNDLED.json +2 -2
  169. package/dist/sdk/index.d.ts +317 -0
  170. package/dist/sdk/index.js +827 -85
  171. package/dist/sdk/index.js.map +1 -1
  172. package/dist/sdk/runWithCognition.d.ts +77 -0
  173. package/dist/sdk/runWithCognition.js +157 -0
  174. package/dist/sdk/runWithCognition.js.map +1 -0
  175. package/hooks/aria-agent-handoff.mjs +11 -1
  176. package/hooks/aria-architect-fallback.mjs +267 -0
  177. package/hooks/aria-cognition-substrate-binding.mjs +676 -0
  178. package/hooks/aria-discovery-record.mjs +101 -0
  179. package/hooks/aria-harness-via-sdk.mjs +34 -21
  180. package/hooks/aria-import-resolution-gate.mjs +330 -0
  181. package/hooks/aria-outcome-record.mjs +84 -0
  182. package/hooks/aria-pre-emit-dryrun.mjs +294 -0
  183. package/hooks/aria-pre-tool-gate.mjs +985 -40
  184. package/hooks/aria-preprompt-consult.mjs +113 -13
  185. package/hooks/aria-preturn-memory-gate.mjs +298 -6
  186. package/hooks/aria-repo-doctrine-gate.mjs +397 -0
  187. package/hooks/aria-stop-gate.mjs +840 -75
  188. package/hooks/aria-userprompt-abandon-detect.mjs +5 -1
  189. package/hooks/doctrine_trigger_map.json +209 -15
  190. package/hooks/lib/canonical-lenses.mjs +64 -0
  191. package/hooks/lib/gate-audit.mjs +43 -0
  192. package/opencode-plugins/harness-context/index.js +1 -1
  193. package/opencode-plugins/harness-context/inject-context.mjs +82 -23
  194. package/opencode-plugins/harness-gate/index.js +248 -0
  195. package/opencode-plugins/harness-outcome/index.js +129 -0
  196. package/opencode-plugins/harness-stop/index.js +241 -0
  197. package/package.json +8 -2
  198. package/runtime-src/doctor.mjs +23 -0
  199. package/runtime-src/local-phase.mjs +632 -0
  200. package/runtime-src/mizan-scheduler.mjs +331 -0
  201. package/runtime-src/provider-proxy.mjs +594 -0
  202. package/runtime-src/service.mjs +2708 -0
  203. package/scripts/bundle-sdk.mjs +317 -0
  204. package/scripts/install-client.sh +176 -0
  205. package/scripts/publish-all.sh +344 -0
  206. package/scripts/publish-docker.sh +27 -0
  207. package/scripts/validate-hook-contracts.mjs +54 -0
  208. package/scripts/validate-skill-prompts.mjs +95 -0
  209. package/skills/aria-cognition/aria-essence/SKILL.md +63 -0
  210. package/skills/aria-cognition/aria-essence/references/domain-matrix.md +80 -0
  211. package/skills/aria-cognition/aria-essence/references/evolution-loop.md +30 -0
  212. package/skills/aria-cognition/aria-essence/references/readable-cognition.md +27 -0
  213. package/skills/aria-cognition/aria-forge-guardrails/SKILL.md +35 -0
  214. package/skills/aria-cognition/aria-forge-guardrails/references/checklist.md +31 -0
  215. package/skills/aria-cognition/aria-repo-doctrine/SKILL.md +39 -0
  216. package/skills/aria-cognition/forge-quality-rules/SKILL.md +43 -0
  217. package/skills/aria-cognition/ghazali-8lens/SKILL.md +38 -0
  218. package/skills/aria-cognition/istiqra-induction/SKILL.md +26 -0
  219. package/skills/aria-cognition/ladunni-22/SKILL.md +35 -0
  220. package/skills/aria-cognition/mizan/SKILL.md +72 -0
  221. package/skills/aria-cognition/nadia/SKILL.md +38 -0
  222. package/skills/aria-cognition/nadia-psi/SKILL.md +38 -0
  223. package/skills/aria-cognition/predictor/SKILL.md +25 -0
  224. package/skills/aria-cognition/qiyas-analogy/SKILL.md +26 -0
  225. package/skills/aria-cognition/soul-domains/SKILL.md +25 -0
  226. package/src/auth-commands.ts +111 -45
  227. package/src/chat.ts +174 -13
  228. package/src/codebase-scanner.ts +4 -0
  229. package/src/config.ts +15 -0
  230. package/src/connectors/claude-code.ts +115 -26
  231. package/src/connectors/codebase-awareness.ts +408 -0
  232. package/src/connectors/codex.ts +274 -0
  233. package/src/connectors/cognitive-skills.ts +51 -0
  234. package/src/connectors/opencode.ts +93 -4
  235. package/src/connectors/repo-git-hooks.ts +86 -0
  236. package/src/connectors/repo-guard.ts +589 -0
  237. package/src/connectors/runtime.ts +374 -0
  238. package/src/connectors/shell.ts +83 -14
  239. package/src/connectors/syncd.ts +488 -0
  240. package/src/decisions.ts +469 -0
  241. package/src/garden-control-plane.ts +101 -26
  242. package/src/github-connect.ts +143 -0
  243. package/src/harness-client.ts +128 -3
  244. package/src/hive-client.ts +165 -5
  245. package/src/index.ts +41 -2
  246. package/src/lib/aristotle-noor-wire.ts +310 -0
  247. package/src/providers/types.ts +6 -0
  248. package/src/runtime-proof.ts +392 -0
  249. package/src/setup-wizard.ts +37 -2
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Dalio decision-log SDK primitives.
3
+ *
4
+ * Covers the full Dalio loop surface:
5
+ * recordDalio — POST /api/decisions
6
+ * evaluatePendingDecisions — POST /api/decisions/evaluate-pending
7
+ * getBlockingIncidents — GET /api/incidents/blocking
8
+ * claimSessionLock — POST /api/hive/session-lock
9
+ * releaseSessionLock — DELETE /api/hive/session-lock/<id>
10
+ * postSessionMessage — POST /api/hive/session-message
11
+ * readSessionMessages — GET /api/hive/session-message
12
+ *
13
+ * Per memory:feedback_sdk_harness_cli_parity.md: every primitive here
14
+ * must have a matching harness server route AND a CLI surface in bin/aria.js.
15
+ * Per memory:feedback_full_harness_binding_must_be_structural.md: harness
16
+ * binding is enforced structurally — calls throw on non-2xx, never silently
17
+ * degrade.
18
+ *
19
+ * No timeouts per memory:feedback_no_timeouts_doctrine.md.
20
+ * No graceful degradation per memory:feedback_no_graceful_degradation.md.
21
+ */
22
+ import * as fs from 'node:fs';
23
+ import * as path from 'node:path';
24
+ import { homedir } from 'node:os';
25
+ // ── Base URL + owner-token resolution (mirrors harness-client.ts pattern) ─────
26
+ const HARNESS_BASE_URL = process.env.ARIA_HIVE_RUNTIME_URL ??
27
+ process.env.ARIA_HARNESS_BASE_URL ??
28
+ process.env.ARIA_HARNESS_URL ??
29
+ 'https://harness.ariasos.com';
30
+ const OWNER_TOKEN_PATH = path.join(homedir(), '.aria', 'owner-token');
31
+ function ownerHeaders() {
32
+ if (!fs.existsSync(OWNER_TOKEN_PATH))
33
+ return {};
34
+ const jwt = fs.readFileSync(OWNER_TOKEN_PATH, 'utf-8').trim();
35
+ if (!jwt)
36
+ return {};
37
+ return { Authorization: `Bearer ${jwt}`, 'x-aria-owner': 'true' };
38
+ }
39
+ function baseHeaders() {
40
+ return { 'Content-Type': 'application/json', ...ownerHeaders() };
41
+ }
42
+ async function requireOk(resp, label) {
43
+ if (resp.ok)
44
+ return resp;
45
+ let detail = resp.statusText;
46
+ try {
47
+ const body = await resp.json();
48
+ detail = body.error ?? body.message ?? detail;
49
+ }
50
+ catch {
51
+ // ignore parse error — use statusText
52
+ }
53
+ throw new Error(`[aria-connector/${label}] HTTP ${resp.status}: ${detail}`);
54
+ }
55
+ // ── recordDalio ────────────────────────────────────────────────────────────────
56
+ /**
57
+ * Log a Dalio decision to /api/decisions.
58
+ *
59
+ * Requires a measurable expected_outcome predicate per
60
+ * memory:feedback_dalio_expected_required.md. Gate refuses qualitative prose.
61
+ *
62
+ * Throws on non-2xx — no silent fallback per doctrine.
63
+ */
64
+ export async function recordDalio(args) {
65
+ const payload = {
66
+ decision_type: args.decision_type,
67
+ category: args.category,
68
+ context: args.context,
69
+ decision: args.decision,
70
+ reasoning: args.reasoning,
71
+ expected_outcome: args.expected_outcome,
72
+ outcome: args.outcome ?? 'pending',
73
+ source: args.source ?? 'aria-connector',
74
+ model_used: args.model_used ?? 'unknown',
75
+ tags: args.tags ?? [],
76
+ metadata: {
77
+ ...(args.metadata ?? {}),
78
+ ...(args.sessionId ? { sessionId: args.sessionId } : {}),
79
+ ...(args.anchors?.length ? { anchors: args.anchors } : {}),
80
+ },
81
+ };
82
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/decisions`, {
83
+ method: 'POST',
84
+ headers: baseHeaders(),
85
+ body: JSON.stringify(payload),
86
+ });
87
+ await requireOk(resp, 'recordDalio');
88
+ const data = await resp.json();
89
+ const decision_id = data.decision_id ?? data.id;
90
+ if (!decision_id) {
91
+ throw new Error('[aria-connector/recordDalio] Server returned no decision_id');
92
+ }
93
+ return { decision_id, quality_score: data.quality_score, impact_score: data.impact_score };
94
+ }
95
+ // ── evaluatePendingDecisions ───────────────────────────────────────────────────
96
+ /**
97
+ * Trigger evaluation of pending decisions at /api/decisions/evaluate-pending.
98
+ *
99
+ * Returns count of evaluated decisions and count of evaluation failures.
100
+ * Throws on non-2xx.
101
+ */
102
+ export async function evaluatePendingDecisions() {
103
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/decisions/evaluate-pending`, {
104
+ method: 'POST',
105
+ headers: baseHeaders(),
106
+ body: JSON.stringify({}),
107
+ });
108
+ await requireOk(resp, 'evaluatePendingDecisions');
109
+ const data = await resp.json();
110
+ return {
111
+ evaluated: data.evaluated ?? 0,
112
+ failures: data.failures ?? 0,
113
+ inferred: data.inferred,
114
+ updated: data.updated,
115
+ learning_signals: data.learning_signals,
116
+ };
117
+ }
118
+ // ── getBlockingIncidents ───────────────────────────────────────────────────────
119
+ /**
120
+ * Fetch blocking incidents for a session from /api/incidents/blocking.
121
+ *
122
+ * Blocking incidents are injected by the cron evaluator when an expected_outcome
123
+ * predicate fails — they surface in the next harness packet as hard gates.
124
+ * Throws on non-2xx.
125
+ */
126
+ export async function getBlockingIncidents(sessionId) {
127
+ const url = `${HARNESS_BASE_URL}/api/incidents/blocking?sessionId=${encodeURIComponent(sessionId)}`;
128
+ const resp = await fetch(url, {
129
+ method: 'GET',
130
+ headers: baseHeaders(),
131
+ });
132
+ await requireOk(resp, 'getBlockingIncidents');
133
+ const data = await resp.json();
134
+ return data.incidents ?? data.data ?? [];
135
+ }
136
+ // ── claimSessionLock ───────────────────────────────────────────────────────────
137
+ /**
138
+ * Claim a hive session lock for a file path.
139
+ *
140
+ * Required before editing a file when multiple sessions may be active on the
141
+ * same path per memory:feedback_hive_session_coordination.md. Pre-tool-gate
142
+ * hard-blocks concurrent edits without a valid lock.
143
+ *
144
+ * Throws on non-2xx (including 409 Conflict when lock is already held).
145
+ */
146
+ export async function claimSessionLock(args) {
147
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/hive/session-lock`, {
148
+ method: 'POST',
149
+ headers: baseHeaders(),
150
+ body: JSON.stringify({
151
+ file_path: args.filePath,
152
+ session_id: args.sessionId,
153
+ ttl_minutes: args.ttlMinutes,
154
+ scope_kind: args.scopeKind,
155
+ scope_path: args.scopePath,
156
+ operation_kind: args.operationKind,
157
+ owner_session_id: args.ownerSessionId,
158
+ client_id: args.clientId,
159
+ surface: args.surface,
160
+ stale_after_seconds: args.staleAfterSeconds,
161
+ urgency: args.urgency,
162
+ proposed_merge_order: args.proposedMergeOrder,
163
+ intended_patch: args.intendedPatch,
164
+ current_mode: args.currentMode,
165
+ takeover_if_stale: args.takeoverIfStale,
166
+ metadata: args.metadata,
167
+ }),
168
+ });
169
+ await requireOk(resp, 'claimSessionLock');
170
+ const data = await resp.json();
171
+ const lock_id = data.lock_id ?? data.id;
172
+ if (!lock_id) {
173
+ throw new Error('[aria-connector/claimSessionLock] Server returned no lock_id');
174
+ }
175
+ return {
176
+ lock_id,
177
+ file_path: data.file_path ?? args.filePath,
178
+ session_id: data.session_id ?? args.sessionId,
179
+ scope_kind: data.scope_kind ?? args.scopeKind,
180
+ scope_path: data.scope_path ?? args.scopePath,
181
+ operation_kind: data.operation_kind ?? args.operationKind,
182
+ owner_session_id: data.owner_session_id ?? args.ownerSessionId,
183
+ base_file_hash: data.base_file_hash,
184
+ base_blob_sha: data.base_blob_sha,
185
+ expires_at: data.expires_at,
186
+ lease_heartbeat_at: data.lease_heartbeat_at,
187
+ stale_after_seconds: data.stale_after_seconds,
188
+ current_mode: data.current_mode ?? args.currentMode,
189
+ proposed_merge_order: data.proposed_merge_order,
190
+ coordination_packet: data.coordination_packet,
191
+ stale_takeovers: data.stale_takeovers,
192
+ };
193
+ }
194
+ // ── releaseSessionLock ─────────────────────────────────────────────────────────
195
+ /**
196
+ * Release a hive session lock acquired via claimSessionLock.
197
+ *
198
+ * Call this after finishing edits to the locked file path.
199
+ * Throws on non-2xx.
200
+ */
201
+ export async function releaseSessionLock(lockId) {
202
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/hive/session-lock?lock_id=${encodeURIComponent(lockId)}`, {
203
+ method: 'DELETE',
204
+ headers: baseHeaders(),
205
+ });
206
+ await requireOk(resp, 'releaseSessionLock');
207
+ }
208
+ export async function heartbeatSessionLock(args) {
209
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/hive/session-lock`, {
210
+ method: 'PATCH',
211
+ headers: baseHeaders(),
212
+ body: JSON.stringify({
213
+ action: 'heartbeat',
214
+ lock_id: args.lockId,
215
+ session_id: args.sessionId,
216
+ file_path: args.filePath,
217
+ ttl_minutes: args.ttlMinutes,
218
+ stale_after_seconds: args.staleAfterSeconds,
219
+ }),
220
+ });
221
+ await requireOk(resp, 'heartbeatSessionLock');
222
+ return await resp.json();
223
+ }
224
+ export async function checkSessionLockDrift(args) {
225
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/hive/session-lock`, {
226
+ method: 'PATCH',
227
+ headers: baseHeaders(),
228
+ body: JSON.stringify({
229
+ action: 'check_drift',
230
+ lock_id: args.lockId,
231
+ session_id: args.sessionId,
232
+ file_path: args.filePath,
233
+ }),
234
+ });
235
+ await requireOk(resp, 'checkSessionLockDrift');
236
+ return await resp.json();
237
+ }
238
+ // ── postSessionMessage ─────────────────────────────────────────────────────────
239
+ /**
240
+ * Post a coordination message from one session to another via the hive.
241
+ *
242
+ * Used before concurrent edits to announce intent and coordinate with parallel
243
+ * sessions per memory:feedback_hive_session_coordination.md.
244
+ * Throws on non-2xx.
245
+ */
246
+ export async function postSessionMessage(args) {
247
+ const resp = await fetch(`${HARNESS_BASE_URL}/api/hive/session-message`, {
248
+ method: 'POST',
249
+ headers: baseHeaders(),
250
+ body: JSON.stringify({
251
+ from_session_id: args.fromSessionId,
252
+ to_session_id: args.toSessionId,
253
+ topic: args.topic,
254
+ body: args.body,
255
+ }),
256
+ });
257
+ await requireOk(resp, 'postSessionMessage');
258
+ const data = await resp.json();
259
+ const message_id = data.message_id ?? data.id;
260
+ if (!message_id) {
261
+ throw new Error('[aria-connector/postSessionMessage] Server returned no message_id');
262
+ }
263
+ return {
264
+ message_id,
265
+ from_session_id: data.from_session_id ?? args.fromSessionId,
266
+ to_session_id: data.to_session_id ?? args.toSessionId,
267
+ topic: data.topic ?? args.topic,
268
+ created_at: data.created_at,
269
+ };
270
+ }
271
+ // ── readSessionMessages ────────────────────────────────────────────────────────
272
+ /**
273
+ * Read session messages for a session from /api/hive/session-message.
274
+ *
275
+ * Pass unreadOnly=true (default: true) to fetch only unread messages.
276
+ * Throws on non-2xx.
277
+ */
278
+ export async function readSessionMessages(args) {
279
+ const unreadOnly = args.unreadOnly ?? true;
280
+ const url = `${HARNESS_BASE_URL}/api/hive/session-message` +
281
+ `?session_id=${encodeURIComponent(args.sessionId)}` +
282
+ `&unread=${unreadOnly ? 'true' : 'false'}`;
283
+ const resp = await fetch(url, {
284
+ method: 'GET',
285
+ headers: baseHeaders(),
286
+ });
287
+ await requireOk(resp, 'readSessionMessages');
288
+ const data = await resp.json();
289
+ return data.messages ?? data.data ?? [];
290
+ }
291
+ //# sourceMappingURL=decisions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decisions.js","sourceRoot":"","sources":["../../../src/decisions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"garden-control-plane.d.ts","sourceRoot":"","sources":["../../../src/garden-control-plane.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,eAAe,GAAG,WAAW,CAAC;IACvF,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAGD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,GAAE,MAAM,EAAO,GAClB,OAAO,CAAC,OAAO,CAAC,CAsBlB;AAGD,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,GAAG,OAAO,CAAC,IAAI,CAAC,CA8ChB"}
1
+ {"version":3,"file":"garden-control-plane.d.ts","sourceRoot":"","sources":["../../../src/garden-control-plane.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,eAAe,GAAG,WAAW,CAAC;IACvF,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAiDD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,GAAE,MAAM,EAAO,GAClB,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAGD,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,GAAG,OAAO,CAAC,IAAI,CAAC,CAgEhB"}
@@ -2,26 +2,70 @@
2
2
  // Replaces static system prompt injection with turn-by-turn garden integration.
3
3
  // Every turn: read relevant memories, generate response, write new memories.
4
4
  // Projects persist forever. Context is infinite. The harness improves per turn.
5
+ import { existsSync, readFileSync } from 'node:fs';
6
+ import { homedir } from 'node:os';
7
+ import { join } from 'node:path';
5
8
  const GARDEN_URL = process.env.GARDEN_SERVICE_URL || 'http://127.0.0.1:8097';
9
+ const HARNESS_URL = process.env.ARIA_HARNESS_BASE_URL ||
10
+ process.env.ARIA_HARNESS_URL ||
11
+ 'https://harness.ariasos.com';
12
+ const RUNTIME_URL = (process.env.ARIA_RUNTIME_URL || 'http://127.0.0.1:4319').replace(/\/+$/, '');
13
+ function readLocalToken() {
14
+ const ownerTokenPath = join(homedir(), '.aria', 'owner-token');
15
+ if (existsSync(ownerTokenPath)) {
16
+ const token = readFileSync(ownerTokenPath, 'utf8').trim();
17
+ if (token)
18
+ return token;
19
+ }
20
+ const licensePath = join(homedir(), '.aria', 'license.json');
21
+ if (existsSync(licensePath)) {
22
+ try {
23
+ const payload = JSON.parse(readFileSync(licensePath, 'utf8'));
24
+ return String(payload.token || payload.jti || '').trim();
25
+ }
26
+ catch {
27
+ return '';
28
+ }
29
+ }
30
+ return '';
31
+ }
32
+ function resolveBearerToken() {
33
+ return (process.env.ARIA_API_KEY ||
34
+ process.env.ARIA_MASTER_TOKEN ||
35
+ process.env.ARIA_TOKEN ||
36
+ readLocalToken()).trim();
37
+ }
38
+ async function postGardenMemory(url, body, headers = {}) {
39
+ const resp = await fetch(url, {
40
+ method: 'POST',
41
+ headers: {
42
+ 'Content-Type': 'application/json',
43
+ ...headers,
44
+ },
45
+ body: JSON.stringify(body),
46
+ });
47
+ const data = await resp.json().catch(() => ({}));
48
+ return resp.ok && data?.ok !== false;
49
+ }
6
50
  // ── WRITE: Plant memories after every turn ──
7
51
  export async function plantGardenMemory(type, content, intensity, sessionId, userId, projectId, tags = []) {
8
52
  try {
9
- const resp = await fetch(`${GARDEN_URL}/garden/fire`, {
10
- method: 'POST',
11
- headers: { 'Content-Type': 'application/json' },
12
- body: JSON.stringify({
13
- type,
14
- content: content.slice(0, 2000),
15
- intensity: Math.max(0.1, Math.min(1, intensity)),
16
- sessionId,
17
- userId,
18
- projectId,
19
- tags,
20
- }),
21
- signal: AbortSignal.timeout(3000),
22
- });
23
- const data = await resp.json().catch(() => ({}));
24
- return resp.ok && data?.ok !== false;
53
+ const payload = {
54
+ type,
55
+ content: content.slice(0, 2000),
56
+ intensity: Math.max(0.1, Math.min(1, intensity)),
57
+ sessionId,
58
+ userId,
59
+ projectId,
60
+ tags,
61
+ };
62
+ const token = resolveBearerToken();
63
+ if (token) {
64
+ const namedWrite = await postGardenMemory(`${HARNESS_URL.replace(/\/+$/, '')}/api/garden/fire`, payload, { Authorization: `Bearer ${token}` }).catch(() => false);
65
+ if (namedWrite)
66
+ return true;
67
+ }
68
+ return await postGardenMemory(`${GARDEN_URL}/garden/fire`, payload);
25
69
  }
26
70
  catch {
27
71
  return false;
@@ -29,7 +73,20 @@ export async function plantGardenMemory(type, content, intensity, sessionId, use
29
73
  }
30
74
  // ── TURN-BY-TURN: Complete cycle ──
31
75
  export async function gardenTurnCycle(input) {
32
- await plantGardenMemory('conversation', `User: ${input.message.slice(0, 500)}\nAria: ${input.response.slice(0, 1000)}`, 0.6, input.sessionId, input.userId, input.projectId, ['turn', 'conversation']);
76
+ const token = resolveBearerToken();
77
+ let wroteConversation = false;
78
+ if (token) {
79
+ wroteConversation = await postGardenMemory(`${RUNTIME_URL}/garden/turn`, {
80
+ apiKey: token,
81
+ sessionId: input.sessionId,
82
+ message: input.message,
83
+ response: input.response,
84
+ userId: input.userId,
85
+ }, { Authorization: `Bearer ${token}` }).catch(() => false);
86
+ }
87
+ if (!wroteConversation) {
88
+ await plantGardenMemory('conversation', `User: ${input.message.slice(0, 500)}\nAria: ${input.response.slice(0, 1000)}`, 0.6, input.sessionId, input.userId, input.projectId, ['turn', 'conversation']);
89
+ }
33
90
  if (input.gateViolations?.length) {
34
91
  await plantGardenMemory('evolution', `Gate violations: ${input.gateViolations.join(', ')}`, 0.8, input.sessionId, input.userId, input.projectId, ['gate', 'evolution']);
35
92
  }
@@ -1 +1 @@
1
- {"version":3,"file":"garden-control-plane.js","sourceRoot":"","sources":["../../../src/garden-control-plane.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,gFAAgF;AAChF,6EAA6E;AAC7E,gFAAgF;AAEhF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,uBAAuB,CAAC;AAc7E,+CAA+C;AAC/C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAA0B,EAC1B,OAAe,EACf,SAAiB,EACjB,SAAiB,EACjB,MAAe,EACf,SAAkB,EAClB,OAAiB,EAAE;IAEnB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,cAAc,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,IAAI;gBACJ,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;gBAC/B,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBAChD,SAAS;gBACT,MAAM;gBACN,SAAS;gBACT,IAAI;aACL,CAAC;YACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;SAClC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,KAAK,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,qCAAqC;AACrC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAQrC;IACC,MAAM,iBAAiB,CACrB,cAAc,EACd,SAAS,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,WAAW,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAC9E,GAAG,EACH,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,SAAS,EACf,CAAC,MAAM,EAAE,cAAc,CAAC,CACzB,CAAC;IAEF,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACjC,MAAM,iBAAiB,CACrB,WAAW,EACX,oBAAoB,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACrD,GAAG,EACH,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,SAAS,EACf,CAAC,MAAM,EAAE,WAAW,CAAC,CACtB,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAClC,MAAM,iBAAiB,CACrB,WAAW,EACX,cAAc,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAChD,GAAG,EACH,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,SAAS,EACf,CAAC,WAAW,CAAC,CACd,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,iBAAiB,CACrB,eAAe,EACf,iCAAiC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAC9D,GAAG,EACH,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,SAAS,EACf,CAAC,SAAS,EAAE,YAAY,CAAC,CAC1B,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"garden-control-plane.js","sourceRoot":"","sources":["../../../src/garden-control-plane.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export interface GitHubConnectResult {
2
+ ok: boolean;
3
+ authenticated: boolean;
4
+ npmrcConfigured: boolean;
5
+ gitConfigured: boolean;
6
+ logs: string[];
7
+ error?: string;
8
+ }
9
+ export interface GitHubStatusResult {
10
+ ghInstalled: boolean;
11
+ authenticated: boolean;
12
+ npmrcConfigured: boolean;
13
+ }
14
+ export declare function getGitHubStatus(): GitHubStatusResult;
15
+ export declare function connectGitHub(options?: {
16
+ interactive?: boolean;
17
+ }): GitHubConnectResult;
18
+ //# sourceMappingURL=github-connect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-connect.d.ts","sourceRoot":"","sources":["../../../src/github-connect.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAgDD,wBAAgB,eAAe,IAAI,kBAAkB,CAMpD;AAED,wBAAgB,aAAa,CAAC,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,mBAAmB,CA+D1F"}
@@ -0,0 +1,117 @@
1
+ import { execFileSync } from 'node:child_process';
2
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
+ import { homedir } from 'node:os';
4
+ import { join } from 'node:path';
5
+ const NPMRC_PATH = join(homedir(), '.npmrc');
6
+ const GH_SCOPE_LINE = '@aria_asi:registry=https://npm.pkg.github.com';
7
+ const GH_TOKEN_PREFIX = '//npm.pkg.github.com/:_authToken=';
8
+ const GH_ALWAYS_AUTH = 'always-auth=true';
9
+ function hasGhCli() {
10
+ try {
11
+ execFileSync('gh', ['--version'], { stdio: 'ignore' });
12
+ return true;
13
+ }
14
+ catch {
15
+ return false;
16
+ }
17
+ }
18
+ function isGhAuthenticated() {
19
+ try {
20
+ execFileSync('gh', ['auth', 'status', '--hostname', 'github.com'], { stdio: 'ignore' });
21
+ return true;
22
+ }
23
+ catch {
24
+ return false;
25
+ }
26
+ }
27
+ function tryExec(args, stdio = 'ignore') {
28
+ try {
29
+ execFileSync('gh', args, { stdio });
30
+ return true;
31
+ }
32
+ catch {
33
+ return false;
34
+ }
35
+ }
36
+ function upsertNpmrc(token) {
37
+ const dir = homedir();
38
+ if (!existsSync(dir)) {
39
+ mkdirSync(dir, { recursive: true, mode: 0o700 });
40
+ }
41
+ const existing = existsSync(NPMRC_PATH) ? readFileSync(NPMRC_PATH, 'utf8') : '';
42
+ const lines = existing
43
+ .split(/\r?\n/)
44
+ .filter((line) => line.trim() && !line.startsWith('@aria_asi:registry=') && !line.startsWith(GH_TOKEN_PREFIX) && line.trim() !== GH_ALWAYS_AUTH);
45
+ lines.push(GH_SCOPE_LINE, `${GH_TOKEN_PREFIX}${token}`, GH_ALWAYS_AUTH);
46
+ writeFileSync(NPMRC_PATH, `${lines.join('\n')}\n`, { mode: 0o600 });
47
+ }
48
+ function readGhToken() {
49
+ return execFileSync('gh', ['auth', 'token'], { encoding: 'utf8' }).trim();
50
+ }
51
+ export function getGitHubStatus() {
52
+ const ghInstalled = hasGhCli();
53
+ const authenticated = ghInstalled ? isGhAuthenticated() : false;
54
+ const npmrcConfigured = existsSync(NPMRC_PATH)
55
+ && readFileSync(NPMRC_PATH, 'utf8').includes(GH_SCOPE_LINE);
56
+ return { ghInstalled, authenticated, npmrcConfigured };
57
+ }
58
+ export function connectGitHub(options = {}) {
59
+ const interactive = options.interactive !== false;
60
+ const logs = [];
61
+ if (!hasGhCli()) {
62
+ return {
63
+ ok: false,
64
+ authenticated: false,
65
+ npmrcConfigured: false,
66
+ gitConfigured: false,
67
+ logs,
68
+ error: 'GitHub CLI (gh) is not installed. Install gh first, then run `aria github connect` again.',
69
+ };
70
+ }
71
+ let authenticated = isGhAuthenticated();
72
+ if (!authenticated) {
73
+ if (!interactive) {
74
+ return {
75
+ ok: false,
76
+ authenticated: false,
77
+ npmrcConfigured: false,
78
+ gitConfigured: false,
79
+ logs,
80
+ error: 'GitHub CLI is installed but not authenticated. Run `aria github connect` interactively.',
81
+ };
82
+ }
83
+ logs.push('Launching GitHub browser login...');
84
+ execFileSync('gh', ['auth', 'login', '--web', '--hostname', 'github.com', '--git-protocol', 'https', '--scopes', 'read:packages'], {
85
+ stdio: 'inherit',
86
+ });
87
+ authenticated = isGhAuthenticated();
88
+ }
89
+ else if (interactive) {
90
+ tryExec(['auth', 'refresh', '--hostname', 'github.com', '--scopes', 'read:packages'], 'inherit');
91
+ }
92
+ if (!authenticated) {
93
+ return {
94
+ ok: false,
95
+ authenticated: false,
96
+ npmrcConfigured: false,
97
+ gitConfigured: false,
98
+ logs,
99
+ error: 'GitHub authentication did not complete successfully.',
100
+ };
101
+ }
102
+ const gitConfigured = tryExec(['auth', 'setup-git'], interactive ? 'inherit' : 'ignore');
103
+ const token = readGhToken();
104
+ upsertNpmrc(token);
105
+ logs.push('GitHub auth is active.');
106
+ logs.push('Configured ~/.npmrc for @aria_asi on GitHub Packages.');
107
+ if (gitConfigured)
108
+ logs.push('Configured git to use GitHub CLI credentials.');
109
+ return {
110
+ ok: true,
111
+ authenticated: true,
112
+ npmrcConfigured: true,
113
+ gitConfigured,
114
+ logs,
115
+ };
116
+ }
117
+ //# sourceMappingURL=github-connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-connect.js","sourceRoot":"","sources":["../../../src/github-connect.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,11 @@ export interface HarnessPacket {
46
46
  */
47
47
  interface HarnessClientOptions {
48
48
  baseUrl?: string;
49
+ runtimeBaseUrl?: string;
50
+ }
51
+ interface RuntimeContext extends Record<string, unknown> {
52
+ sessionId?: string;
53
+ parentReceiptId?: string | null;
49
54
  }
50
55
  interface GateContext {
51
56
  gate: string;
@@ -56,6 +61,7 @@ interface GateContext {
56
61
  }
57
62
  export declare class HarnessClient {
58
63
  private baseUrl;
64
+ private runtimeBaseUrl;
59
65
  private token;
60
66
  private tokenPromise;
61
67
  constructor(options?: HarnessClientOptions);
@@ -84,6 +90,11 @@ export declare class HarnessClient {
84
90
  * Convenience: PUT
85
91
  */
86
92
  put<T = unknown>(path: string, body?: unknown, gateContext?: GateContext): Promise<HarnessResponse<T>>;
93
+ runtimeRequest<T = unknown>(path: string, body?: unknown): Promise<T>;
94
+ mizanPlan(context: RuntimeContext): Promise<unknown>;
95
+ mizanPre(context: RuntimeContext, packet?: unknown): Promise<unknown>;
96
+ mizanMid(message: string, plannedApproach: string, context?: RuntimeContext, packet?: unknown): Promise<unknown>;
97
+ mizanPost(text: string, evidence: Record<string, unknown>, context?: RuntimeContext, packet?: unknown): Promise<unknown>;
87
98
  private tryExtractError;
88
99
  private pushGateLog;
89
100
  }
@@ -140,6 +151,10 @@ export declare function validateOutput(args: {
140
151
  violations: string[];
141
152
  rewritten?: string;
142
153
  } | null>;
154
+ export declare function mizanPlan(context: RuntimeContext): Promise<unknown | null>;
155
+ export declare function mizanPre(context: RuntimeContext, packet?: unknown): Promise<unknown | null>;
156
+ export declare function mizanMid(message: string, plannedApproach: string, context?: RuntimeContext, packet?: unknown): Promise<unknown | null>;
157
+ export declare function mizanPost(text: string, evidence: Record<string, unknown>, context?: RuntimeContext, packet?: unknown): Promise<unknown | null>;
143
158
  /**
144
159
  * GET /api/garden/turns?userId=...&limit=... to rehydrate recent context.
145
160
  * Returns chronologically-ordered turns (oldest first), empty array on error.
@@ -1 +1 @@
1
- {"version":3,"file":"harness-client.d.ts","sourceRoot":"","sources":["../../../src/harness-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-client.d.ts","sourceRoot":"","sources":["../../../src/harness-client.ts"],"names":[],"mappings":"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"}