(line)
| 4075 | } |
| 4076 | |
| 4077 | function parseIMessageTemporaryDirectiveLine(line) { |
| 4078 | const tokens = String(line || "").trim().split(/\s+/).filter(Boolean); |
| 4079 | if (!tokens.length || tokens.some((token) => !token.startsWith("/"))) return { ok: false, codex: {} }; |
| 4080 | const codex = {}; |
| 4081 | for (const token of tokens) { |
| 4082 | const model = resolveIMessageTemporaryModelToken(token); |
| 4083 | if (model) { |
| 4084 | codex.model = model; |
| 4085 | continue; |
| 4086 | } |
| 4087 | const effort = resolveIMessageTemporaryEffortToken(token); |
| 4088 | if (effort) { |
| 4089 | codex.reasoningEffort = effort; |
| 4090 | continue; |
| 4091 | } |
| 4092 | return { ok: false, codex: {} }; |
| 4093 | } |
| 4094 | return Object.keys(codex).length ? { ok: true, codex } : { ok: false, codex: {} }; |
| 4095 | } |
| 4096 | |
| 4097 | function resolveIMessageTemporaryModelToken(token) { |
| 4098 | const raw = String(token || "").trim().replace(/^\/+/, ""); |
no test coverage detected