@yoda.digital/iris-gateway 1.13.6 → 1.13.7

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## [1.13.7](https://github.com/yoda-digital/iris-gateway/compare/v1.13.6...v1.13.7) (2026-03-20)
2
+
3
+ ### Bug Fixes
4
+
5
+ * **lifecycle:** replace ping readiness check with checkHealth() polling ([#179](https://github.com/yoda-digital/iris-gateway/issues/179)) ([abe1eb0](https://github.com/yoda-digital/iris-gateway/commit/abe1eb04c51cecbde083fdad44714423097653db)), closes [yoda-digital/iris-gateway#176](https://github.com/yoda-digital/iris-gateway/issues/176)
6
+
7
+ ### Refactoring
8
+
9
+ * **gateway:** extract model-sync logic to src/config/model-sync.ts ([#180](https://github.com/yoda-digital/iris-gateway/issues/180)) ([50db842](https://github.com/yoda-digital/iris-gateway/commit/50db842969f5f2c84ce0f513bb2853dc1996691b)), closes [yoda-digital/iris-gateway#173](https://github.com/yoda-digital/iris-gateway/issues/173)
10
+
1
11
  ## [1.13.6](https://github.com/yoda-digital/iris-gateway/compare/v1.13.5...v1.13.6) (2026-03-20)
2
12
 
3
13
  ### Bug Fixes
@@ -0,0 +1,20 @@
1
+ /**
2
+ * model-sync.ts — Single-responsibility module for syncing iris.config.json
3
+ * models to opencode.json and agent frontmatter.
4
+ *
5
+ * Extracted from lifecycle.ts to satisfy the VISION.md 500-line hard limit.
6
+ */
7
+ import type { IrisConfig } from "./types.js";
8
+ import type { OpenCodeConfig } from "./types.js";
9
+ import type { Logger } from "../logging/logger.js";
10
+ /**
11
+ * Syncs iris.config.json model configuration into opencode.json and agent
12
+ * frontmatter files. Returns `true` if opencode.json was modified.
13
+ *
14
+ * Responsibilities:
15
+ * 1. Sync `models.primary` / `models.small` → opencode.json top-level fields
16
+ * 2. Auto-register unknown OpenRouter models via the OpenRouter /models API
17
+ * 3. Sync `models.primary` into `.opencode/agent/*.md` frontmatter
18
+ */
19
+ export declare function syncModelsToOpenCode(config: IrisConfig, ocConfig: OpenCodeConfig, logger: Logger): Promise<boolean>;
20
+ //# sourceMappingURL=model-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-sync.d.ts","sourceRoot":"","sources":["../../src/config/model-sync.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAsJlB"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * model-sync.ts — Single-responsibility module for syncing iris.config.json
3
+ * models to opencode.json and agent frontmatter.
4
+ *
5
+ * Extracted from lifecycle.ts to satisfy the VISION.md 500-line hard limit.
6
+ */
7
+ import { join } from "node:path";
8
+ import { readFileSync, writeFileSync, readdirSync } from "node:fs";
9
+ /**
10
+ * Syncs iris.config.json model configuration into opencode.json and agent
11
+ * frontmatter files. Returns `true` if opencode.json was modified.
12
+ *
13
+ * Responsibilities:
14
+ * 1. Sync `models.primary` / `models.small` → opencode.json top-level fields
15
+ * 2. Auto-register unknown OpenRouter models via the OpenRouter /models API
16
+ * 3. Sync `models.primary` into `.opencode/agent/*.md` frontmatter
17
+ */
18
+ export async function syncModelsToOpenCode(config, ocConfig, logger) {
19
+ if (!config.models || typeof config.models !== "object")
20
+ return false;
21
+ const ocPath = join(ocConfig.projectDir ?? process.cwd(), ".opencode", "opencode.json");
22
+ let ocJson;
23
+ try {
24
+ ocJson = JSON.parse(readFileSync(ocPath, "utf-8"));
25
+ }
26
+ catch (err) {
27
+ logger.warn({ err }, "Could not sync models to opencode.json");
28
+ return false;
29
+ }
30
+ let changed = false;
31
+ let writeSucceeded = false;
32
+ const models = config.models;
33
+ // 1. Sync primary / small model fields
34
+ if (models.primary && ocJson.model !== models.primary) {
35
+ ocJson.model = models.primary;
36
+ changed = true;
37
+ }
38
+ if (models.small && ocJson.small_model !== models.small) {
39
+ ocJson.small_model = models.small;
40
+ changed = true;
41
+ }
42
+ // 2. Auto-register unknown OpenRouter models
43
+ // OpenCode silently fails on unknown models — no tool calls, empty responses.
44
+ // We query the OpenRouter /models API to get real capabilities (context window, etc.)
45
+ // and register each model correctly. Falls back to safe defaults if API unreachable.
46
+ //
47
+ // Guard: opencode.json may have malformed provider sections (e.g. `"provider": "string"`
48
+ // instead of an object). The ??= assignments below would throw TypeError in that case.
49
+ // Wrap the entire mutation + write block so any such error logs a warning and returns
50
+ // false instead of crashing startGateway().
51
+ try {
52
+ const newModels = [models.primary, models.small].filter(Boolean);
53
+ for (const modelId of newModels) {
54
+ const orPrefix = "openrouter/";
55
+ if (!modelId.startsWith(orPrefix))
56
+ continue;
57
+ const orModelId = modelId.slice(orPrefix.length);
58
+ const providerModels = ocJson.provider?.openrouter;
59
+ const existingModels = (providerModels?.models ?? {});
60
+ if (!existingModels[orModelId]) {
61
+ // Query OpenRouter for real model capabilities
62
+ let contextWindow = 131072;
63
+ let maxOutput = 16384;
64
+ let supportsTools = true;
65
+ let modelName = orModelId;
66
+ try {
67
+ const apiKey = process.env["OPENROUTER_API_KEY"];
68
+ if (apiKey) {
69
+ const resp = await fetch(`https://openrouter.ai/api/v1/models/${encodeURIComponent(orModelId)}`, { headers: { Authorization: `Bearer ${apiKey}` } });
70
+ if (resp.ok) {
71
+ const data = (await resp.json());
72
+ if (typeof data.context_length === "number")
73
+ contextWindow = data.context_length;
74
+ const topProvider = data.top_provider;
75
+ if (typeof topProvider?.max_completion_tokens === "number") {
76
+ maxOutput = topProvider.max_completion_tokens;
77
+ }
78
+ if (Array.isArray(data.supported_parameters)) {
79
+ supportsTools = data.supported_parameters.includes("tools");
80
+ }
81
+ if (typeof data.name === "string")
82
+ modelName = data.name;
83
+ logger.info({ contextWindow, maxOutput, supportsTools }, `Fetched capabilities for ${orModelId} from OpenRouter`);
84
+ }
85
+ }
86
+ }
87
+ catch (err) {
88
+ logger.warn({ err }, "Failed to fetch model capabilities from OpenRouter API — using safe defaults");
89
+ }
90
+ const entry = {
91
+ name: modelName,
92
+ attachment: true,
93
+ tool_call: supportsTools,
94
+ limit: { context: contextWindow, output: maxOutput },
95
+ };
96
+ // Note: interleaved/reasoning flags are intentionally NOT set here.
97
+ // They are model-specific (e.g. DeepSeek-R1 reasoning_content) and must be
98
+ // configured manually — wrong flags cause silent hang waiting for a field that never arrives.
99
+ ocJson.provider ??= {};
100
+ const provider = ocJson.provider;
101
+ provider.openrouter ??= { options: { baseURL: "https://openrouter.ai/api/v1" }, models: {} };
102
+ const openrouterSection = provider.openrouter;
103
+ if (!openrouterSection.models)
104
+ openrouterSection.models = {};
105
+ openrouterSection.models[orModelId] = entry;
106
+ changed = true;
107
+ logger.info({ contextWindow, maxOutput, supportsTools }, `Registered model in opencode.json: ${orModelId}`);
108
+ }
109
+ }
110
+ // Write opencode.json if changed
111
+ if (changed) {
112
+ writeFileSync(ocPath, JSON.stringify(ocJson, null, 2));
113
+ writeSucceeded = true;
114
+ logger.info({ model: ocJson.model, small_model: ocJson.small_model }, "Synced models from iris.config.json to opencode.json");
115
+ }
116
+ }
117
+ catch (mutationErr) {
118
+ logger.warn({ err: mutationErr }, "Failed to mutate opencode.json — malformed structure or write error. Model sync skipped.");
119
+ return false;
120
+ }
121
+ // 3. Sync primary model into agent frontmatter
122
+ // agent model: overrides opencode.json — must be kept in sync
123
+ if (models.primary) {
124
+ const agentDir = join(ocConfig.projectDir ?? process.cwd(), ".opencode", "agent");
125
+ try {
126
+ const agentFiles = readdirSync(agentDir).filter((f) => f.endsWith(".md"));
127
+ for (const file of agentFiles) {
128
+ const agentPath = join(agentDir, file);
129
+ const content = readFileSync(agentPath, "utf-8");
130
+ if (content.startsWith("---") && /^model:/m.test(content)) {
131
+ const updated = content.replace(/^(model:\s*)(.+)$/m, `$1${models.primary}`);
132
+ if (updated !== content) {
133
+ writeFileSync(agentPath, updated);
134
+ logger.info({ model: models.primary }, `Synced model in .opencode/agent/${file}`);
135
+ }
136
+ }
137
+ }
138
+ }
139
+ catch {
140
+ /* agent dir may not exist — skip */
141
+ }
142
+ }
143
+ const finalModel = models.primary ?? ocJson.model ?? "unknown";
144
+ logger.info({ model: finalModel }, `\n ✔ Model: ${finalModel}\n`);
145
+ return changed;
146
+ }
147
+ //# sourceMappingURL=model-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-sync.js","sourceRoot":"","sources":["../../src/config/model-sync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/gateway/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/gateway/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ import { startChannelAdapters } from "./adapters.js";
34
34
  import { registerShutdownHandlers } from "./shutdown.js";
35
35
  import { join } from "node:path";
36
36
  import { readFileSync, writeFileSync } from "node:fs";
37
+ import { syncModelsToOpenCode } from "../config/model-sync.js";
37
38
  const SSE_RECONNECT_DELAY_MS = 3_000;
38
39
  const SSE_MAX_RECONNECT_DELAY_MS = 30_000;
39
40
  export async function startGateway(configPath) {
@@ -45,111 +46,25 @@ export async function startGateway(configPath) {
45
46
  // 3. Ensure state directory
46
47
  const stateDir = ensureDir(getStateDir());
47
48
  // 4. Sync iris.config.json models → opencode.json (before bridge starts)
48
- if (config.models && typeof config.models === "object") {
49
+ await syncModelsToOpenCode(config, config.opencode, logger);
50
+ // 4a. Validate opencode.json model keys for legacy format (runs unconditionally, regardless of config.models).
51
+ // Auto-registration writes keys as "model-name" (e.g. "hunter-alpha"), NOT "openrouter/model-name".
52
+ // A key containing "openrouter/" indicates a stale entry written before auto-registration was introduced.
53
+ {
49
54
  const ocPath = join(config.opencode.projectDir ?? process.cwd(), ".opencode", "opencode.json");
50
55
  try {
51
56
  const ocConfig = JSON.parse(readFileSync(ocPath, "utf-8"));
52
- let changed = false;
53
- const models = config.models;
54
- if (models.primary && ocConfig.model !== models.primary) {
55
- ocConfig.model = models.primary;
56
- changed = true;
57
- }
58
- if (models.small && ocConfig.small_model !== models.small) {
59
- ocConfig.small_model = models.small;
60
- changed = true;
61
- }
62
- // Register unknown models in provider.openrouter.models.
63
- // OpenCode silently fails on unknown models — no tool calls, empty responses.
64
- // We query the OpenRouter /models API to get real capabilities (context window, etc.)
65
- // and register each model correctly. Falls back to safe defaults if API unreachable.
66
- const newModels = [models.primary, models.small].filter(Boolean);
67
- for (const modelId of newModels) {
68
- const orPrefix = "openrouter/";
69
- if (!modelId.startsWith(orPrefix))
70
- continue;
71
- const orModelId = modelId.slice(orPrefix.length);
72
- const providerModels = ocConfig.provider?.openrouter?.models ?? {};
73
- if (!providerModels[orModelId]) {
74
- // Query OpenRouter for real model capabilities
75
- let contextWindow = 131072;
76
- let maxOutput = 16384;
77
- let supportsTools = true;
78
- let modelName = orModelId;
79
- try {
80
- const apiKey = process.env["OPENROUTER_API_KEY"];
81
- if (apiKey) {
82
- const resp = await fetch(`https://openrouter.ai/api/v1/models/${encodeURIComponent(orModelId)}`, { headers: { Authorization: `Bearer ${apiKey}` } });
83
- if (resp.ok) {
84
- const data = await resp.json();
85
- if (typeof data.context_length === "number")
86
- contextWindow = data.context_length;
87
- const topProvider = data.top_provider;
88
- if (typeof topProvider?.max_completion_tokens === "number")
89
- maxOutput = topProvider.max_completion_tokens;
90
- if (Array.isArray(data.supported_parameters)) {
91
- supportsTools = data.supported_parameters.includes("tools");
92
- }
93
- if (typeof data.name === "string")
94
- modelName = data.name;
95
- logger.info({ contextWindow, maxOutput, supportsTools }, `Fetched capabilities for ${orModelId} from OpenRouter`);
96
- }
97
- }
98
- }
99
- catch { /* API unreachable — use safe defaults */ }
100
- const entry = {
101
- name: modelName,
102
- attachment: true,
103
- tool_call: supportsTools,
104
- limit: { context: contextWindow, output: maxOutput },
105
- };
106
- // Note: interleaved/reasoning flags are intentionally NOT set here.
107
- // They are model-specific (e.g. DeepSeek-R1 reasoning_content) and must be
108
- // configured manually — wrong flags cause silent hang waiting for a field that never arrives.
109
- if (!ocConfig.provider)
110
- ocConfig.provider = {};
111
- if (!ocConfig.provider.openrouter)
112
- ocConfig.provider.openrouter = { options: { baseURL: "https://openrouter.ai/api/v1" }, models: {} };
113
- if (!ocConfig.provider.openrouter.models)
114
- ocConfig.provider.openrouter.models = {};
115
- ocConfig.provider.openrouter.models[orModelId] = entry;
116
- changed = true;
117
- logger.info({ contextWindow, maxOutput, supportsTools }, `Registered model in opencode.json: ${orModelId}`);
118
- }
119
- }
120
- if (changed) {
121
- writeFileSync(ocPath, JSON.stringify(ocConfig, null, 2));
122
- logger.info({
123
- model: ocConfig.model,
124
- small_model: ocConfig.small_model,
125
- }, "Synced models from iris.config.json to opencode.json");
126
- }
127
- // Also sync primary model into agent frontmatter — agent model: overrides opencode.json
128
- if (models.primary) {
129
- const agentDir = join(config.opencode.projectDir ?? process.cwd(), ".opencode", "agent");
130
- try {
131
- const { readdirSync } = await import("node:fs");
132
- const agentFiles = readdirSync(agentDir).filter((f) => f.endsWith(".md"));
133
- for (const file of agentFiles) {
134
- const agentPath = join(agentDir, file);
135
- const content = readFileSync(agentPath, "utf-8");
136
- if (content.startsWith("---") && /^model:/m.test(content)) {
137
- const updated = content.replace(/^(model:\s*)(.+)$/m, `$1${models.primary}`);
138
- if (updated !== content) {
139
- writeFileSync(agentPath, updated);
140
- logger.info({ model: models.primary }, `Synced model in .opencode/agent/${file}`);
141
- }
142
- }
143
- }
57
+ const providerModels = (ocConfig.provider?.openrouter?.models ?? {});
58
+ for (const key of Object.keys(providerModels)) {
59
+ if (key.startsWith("openrouter/")) {
60
+ const newKey = key.slice("openrouter/".length);
61
+ logger.warn({ key, newKey }, `Legacy model key detected in opencode.json: "${key}" uses full provider prefix — ` +
62
+ `OpenCode will look for "${newKey}" which may not exist. ` +
63
+ `Rename key to "${newKey}" to match auto-registration convention.`);
144
64
  }
145
- catch { /* agent dir may not exist — skip */ }
146
65
  }
147
- const finalModel = models.primary ?? ocConfig.model ?? "unknown";
148
- console.log(`\n ✔ Model: ${finalModel}\n`);
149
- }
150
- catch (err) {
151
- logger.warn({ err }, "Could not sync models to opencode.json");
152
66
  }
67
+ catch { /* opencode.json may not exist yet — skip */ }
153
68
  }
154
69
  // 4b. Start OpenCode bridge
155
70
  const bridge = new OpenCodeBridge(config.opencode, logger);
@@ -163,19 +78,13 @@ export async function startGateway(configPath) {
163
78
  try {
164
79
  const healthy = await bridge.checkHealth();
165
80
  if (healthy) {
166
- const testSession = await bridge.createSession("__readiness_check__");
167
- try {
168
- await bridge.sendMessage(testSession.id, "ping");
169
- warmupDone = true;
170
- }
171
- catch {
172
- // Provider init may fail on first attempt; retry after delay
173
- }
174
- await bridge.deleteSession(testSession.id);
175
- if (warmupDone) {
176
- logger.info("OpenCode ready (providers warmed up)");
177
- break;
178
- }
81
+ const gracePeriodMs = process.env.OPENCODE_WARMUP_GRACE_MS !== undefined
82
+ ? Number(process.env.OPENCODE_WARMUP_GRACE_MS)
83
+ : 1000;
84
+ await new Promise(resolve => setTimeout(resolve, gracePeriodMs));
85
+ warmupDone = true;
86
+ logger.info("OpenCode ready (health check passed)");
87
+ break;
179
88
  }
180
89
  }
181
90
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/gateway/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/gateway/lifecycle.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yoda.digital/iris-gateway",
3
- "version": "1.13.6",
3
+ "version": "1.13.7",
4
4
  "description": "Multi-channel AI messaging gateway powered by OpenCode CLI",
5
5
  "homepage": "https://github.com/yoda-digital/iris-gateway",
6
6
  "repository": {