From d69f069a68c3c7be2a0d3283d6ace55da446ab19 Mon Sep 17 00:00:00 2001 From: luvs01 <27862058+luvs01@users.noreply.github.com> Date: Sat, 19 Sep 2026 07:37:58 +0900 Subject: [PATCH 1/3] fix(gui): distinguish unmapped prompt layers from the unprintable base prompt UNMAPPED_LAYER_IDS reused the base prompt's not-exposed reason, so the dialog showed a base-prompt-specific explanation (model_instructions_file) for unrelated layers. Give them a distinct unmapped reason, render dedicated copy in the read-only dialog, and localize it across all ten locales. --- .../codex-set/PromptLayerDialog.tsx | 8 +++-- gui/src/i18n/de.ts | 1 + gui/src/i18n/en.ts | 1 + gui/src/i18n/fr.ts | 1 + gui/src/i18n/ja.ts | 1 + gui/src/i18n/ko.ts | 1 + gui/src/i18n/ru.ts | 1 + gui/src/i18n/tr.ts | 1 + gui/src/i18n/vi.ts | 1 + gui/src/i18n/zh-TW.ts | 1 + gui/src/i18n/zh.ts | 1 + gui/tests/codex-set-prompt-layers.test.tsx | 20 ++++++++++++ src/codex/prompt-text-probe.ts | 9 ++++-- .../codex-prompt-route.test.ts | 11 +++++++ .../codex-prompt-text-probe.test.ts | 32 +++++++++++++++++++ 15 files changed, 84 insertions(+), 6 deletions(-) diff --git a/gui/src/components/codex-set/PromptLayerDialog.tsx b/gui/src/components/codex-set/PromptLayerDialog.tsx index 3b8ae51920a..98d2bc1d779 100644 --- a/gui/src/components/codex-set/PromptLayerDialog.tsx +++ b/gui/src/components/codex-set/PromptLayerDialog.tsx @@ -154,9 +154,11 @@ export default function PromptLayerDialog({ ? t("codexSet.dialog.emptySource", { path: text.sourcePath ?? "" }) : text?.reason === "not-rendered" ? t("codexSet.dialog.notRendered") - : text?.reason === "not-exposed" - ? t("codexSet.dialog.notExposed") - : t("codexSet.dialog.textUnavailable")} + : text?.reason === "unmapped" + ? t("codexSet.dialog.unmapped") + : text?.reason === "not-exposed" + ? t("codexSet.dialog.notExposed") + : t("codexSet.dialog.textUnavailable")}

)} diff --git a/gui/src/i18n/de.ts b/gui/src/i18n/de.ts index 8a48248ba7e..3c12b24a2d8 100644 --- a/gui/src/i18n/de.ts +++ b/gui/src/i18n/de.ts @@ -1084,6 +1084,7 @@ export const de: Record = { "codexSet.dialog.notRendered": "In der gelesenen Runde hat diese Ebene nichts gesendet. Abschnitte werden nur bei Änderungen erneut gesendet, daher kann eine einzelne Stichprobe sie nicht enthalten.", "codexSet.dialog.emptySource": "Die Datei unter {path} existiert, ist aber leer, daher sendet diese Ebene nichts.", "codexSet.dialog.notExposed": "Der Basis-Prompt läuft außerhalb der Nachrichtenliste, die Codex ausgeben kann, und lässt sich hier nicht anzeigen. Ersetzen ist über model_instructions_file möglich.", + "codexSet.dialog.unmapped": "Für diese Ebene gibt es noch keine bestätigte Zuordnung in der Prompt-Ausgabe, daher kann ihr Text hier noch nicht angezeigt werden.", "codexSet.dialog.textUnavailable": "Der Codex-Prompt konnte auf diesem Rechner nicht gelesen werden, daher ist der Text nicht verfügbar.", "codexSet.class.base": "Basisanweisungen", "codexSet.class.config-toggle": "Hier umschaltbar", diff --git a/gui/src/i18n/en.ts b/gui/src/i18n/en.ts index 9be7b42263b..c66a5e993be 100644 --- a/gui/src/i18n/en.ts +++ b/gui/src/i18n/en.ts @@ -1631,6 +1631,7 @@ export const en = { "codexSet.dialog.notRendered": "This layer sent nothing on the turn we read. Sections are only re-sent when they change, so an unchanged layer is absent from a single sample.", "codexSet.dialog.emptySource": "The file at {path} exists but is empty, so this layer sends nothing.", "codexSet.dialog.notExposed": "The base prompt travels outside the message list Codex can print, so it cannot be shown here. Replacing it is possible through model_instructions_file.", + "codexSet.dialog.unmapped": "This layer has no confirmed mapping in the prompt output, so its text cannot be shown here yet.", "codexSet.dialog.textUnavailable": "The Codex prompt could not be read on this machine, so the text is unavailable.", "codexSet.class.base": "Base instructions", "codexSet.class.config-toggle": "Switchable here", diff --git a/gui/src/i18n/fr.ts b/gui/src/i18n/fr.ts index 9c119d17d3b..6af22a0e9dc 100644 --- a/gui/src/i18n/fr.ts +++ b/gui/src/i18n/fr.ts @@ -1604,6 +1604,7 @@ export const fr: Record = { "codexSet.dialog.notRendered": "Lors du tour que nous avons lu, cette couche n'a rien envoyé. Les sections ne sont renvoyées qu'en cas de changement : un seul échantillon peut donc ne pas la contenir.", "codexSet.dialog.emptySource": "Le fichier {path} existe mais il est vide : cette couche n'envoie donc rien.", "codexSet.dialog.notExposed": "L'invite de base circule en dehors de la liste de messages que Codex peut afficher ; elle ne peut donc pas être montrée ici. On peut la remplacer via model_instructions_file.", + "codexSet.dialog.unmapped": "Cette couche n'a pas encore de correspondance confirmée dans la sortie de l'invite ; son texte ne peut donc pas encore être affiché ici.", "codexSet.dialog.textUnavailable": "L'invite Codex n'a pas pu être lue sur cette machine, le texte est donc indisponible.", "codexSet.class.base": "Instructions de base", "codexSet.class.config-toggle": "Modifiable ici", diff --git a/gui/src/i18n/ja.ts b/gui/src/i18n/ja.ts index dd283a9299c..19ee0ddc00d 100644 --- a/gui/src/i18n/ja.ts +++ b/gui/src/i18n/ja.ts @@ -1529,6 +1529,7 @@ export const ja: Record = { "codexSet.dialog.notRendered": "確認したターンでは、このレイヤーは何も送信していません。各セクションは内容が変わったときだけ再送されるため、一度の確認では欠けて見えることがあります。", "codexSet.dialog.emptySource": "{path} のファイルは存在しますが空のため、このレイヤーは何も送信しません。", "codexSet.dialog.notExposed": "基本プロンプトは Codex が出力するメッセージ一覧の外を通るため、ここには表示できません。model_instructions_file で置き換えることは可能です。", + "codexSet.dialog.unmapped": "このレイヤーにはプロンプト出力内で確認済みの対応付けがまだないため、ここにはテキストを表示できません。", "codexSet.dialog.textUnavailable": "このマシンでは Codex のプロンプトを読み取れず、原文を表示できません。", "codexSet.class.base": "基本指示", "codexSet.class.config-toggle": "ここで切り替え可能", diff --git a/gui/src/i18n/ko.ts b/gui/src/i18n/ko.ts index 1a1909a74f1..f71338a352a 100644 --- a/gui/src/i18n/ko.ts +++ b/gui/src/i18n/ko.ts @@ -1122,6 +1122,7 @@ export const ko: Record = { "codexSet.dialog.notRendered": "확인한 턴에서는 이 레이어가 아무것도 보내지 않았습니다. 각 섹션은 내용이 바뀔 때만 다시 전송되므로, 한 번 확인한 것만으로는 빠져 보일 수 있습니다.", "codexSet.dialog.emptySource": "{path} 파일은 있지만 비어 있어서 이 레이어는 아무것도 보내지 않습니다.", "codexSet.dialog.notExposed": "기본 프롬프트는 Codex가 출력하는 메시지 목록 밖으로 전달되어 여기서 보여줄 수 없습니다. 대신 model_instructions_file로 교체할 수 있습니다.", + "codexSet.dialog.unmapped": "이 레이어는 프롬프트 출력에서 확인된 매핑이 아직 없어 여기에서 텍스트를 표시할 수 없습니다.", "codexSet.dialog.textUnavailable": "이 컴퓨터에서 Codex 프롬프트를 읽지 못해 원문을 표시할 수 없습니다.", "codexSet.class.base": "기본 지침", "codexSet.class.config-toggle": "여기서 전환 가능", diff --git a/gui/src/i18n/ru.ts b/gui/src/i18n/ru.ts index 485c0b302a7..a7e402cdf0d 100644 --- a/gui/src/i18n/ru.ts +++ b/gui/src/i18n/ru.ts @@ -1599,6 +1599,7 @@ export const ru: Record = { "codexSet.dialog.notRendered": "На прочитанном нами шаге этот слой ничего не отправил. Разделы пересылаются только при изменении, поэтому в одной выборке слой может отсутствовать.", "codexSet.dialog.emptySource": "Файл {path} существует, но пуст, поэтому этот слой ничего не отправляет.", "codexSet.dialog.notExposed": "Базовый промпт передаётся вне списка сообщений, который Codex может напечатать, поэтому показать его здесь нельзя. Заменить его можно через model_instructions_file.", + "codexSet.dialog.unmapped": "Для этого слоя пока нет подтверждённого сопоставления в выводе промпта, поэтому его текст ещё нельзя показать здесь.", "codexSet.dialog.textUnavailable": "На этой машине не удалось прочитать промпт Codex, поэтому текст недоступен.", "codexSet.class.base": "Базовые инструкции", "codexSet.class.config-toggle": "Переключается здесь", diff --git a/gui/src/i18n/tr.ts b/gui/src/i18n/tr.ts index a1d59281c99..f491c7f5277 100644 --- a/gui/src/i18n/tr.ts +++ b/gui/src/i18n/tr.ts @@ -1618,6 +1618,7 @@ export const tr: Record = { "codexSet.dialog.notRendered": "Okuduğumuz turda bu katman hiçbir şey göndermedi. Bölümler yalnızca değiştiklerinde yeniden gönderilir, bu yüzden tek bir örnekte görünmeyebilir.", "codexSet.dialog.emptySource": "{path} konumundaki dosya var ancak boş, bu yüzden bu katman hiçbir şey göndermiyor.", "codexSet.dialog.notExposed": "Temel istem, Codex'in yazdırabildiği mesaj listesinin dışından geçtiği için burada gösterilemez. model_instructions_file ile değiştirilebilir.", + "codexSet.dialog.unmapped": "Bu katmanın istem çıktısında henüz doğrulanmış bir eşlemesi yok, bu nedenle metni burada henüz gösterilemiyor.", "codexSet.dialog.textUnavailable": "Bu makinede Codex istemi okunamadı, bu yüzden metin kullanılamıyor.", "codexSet.class.base": "Temel talimatlar", "codexSet.class.config-toggle": "Buradan değiştirilebilir", diff --git a/gui/src/i18n/vi.ts b/gui/src/i18n/vi.ts index a6ef50b7f8e..b26ec1ea95a 100644 --- a/gui/src/i18n/vi.ts +++ b/gui/src/i18n/vi.ts @@ -1580,6 +1580,7 @@ export const vi: Record = { "codexSet.dialog.sourceBytes": "{bytes} byte", "codexSet.dialog.emptySource": "Tệp tại {path} tồn tại nhưng không có dữ liệu, vì vậy layer này không gửi đi nội dung nào cả.", "codexSet.dialog.notExposed": "Base prompt di chuyển bên ngoài danh sách tin nhắn mà Codex có thể in ra, vì vậy không thể hiển thị ở đây. Tuy nhiên có thể thay thế nó thông qua model_instructions_file.", + "codexSet.dialog.unmapped": "Lớp này chưa có ánh xạ được xác nhận trong đầu ra prompt, vì vậy chưa thể hiển thị văn bản của nó ở đây.", "codexSet.dialog.textUnavailable": "Không thể đọc prompt Codex trên máy này, do đó văn bản không khả dụng.", "codexSet.class.base": "Base instructions", "codexSet.class.config-toggle": "Có thể chuyển đổi tại đây", diff --git a/gui/src/i18n/zh-TW.ts b/gui/src/i18n/zh-TW.ts index 0ca62560f43..f23791fee87 100644 --- a/gui/src/i18n/zh-TW.ts +++ b/gui/src/i18n/zh-TW.ts @@ -1375,6 +1375,7 @@ export const zhTW: Record = { "codexSet.dialog.notRendered": "在我們讀取的那一輪中,此層沒有傳送任何內容。各區段只在內容變更時才會重新傳送,因此單次取樣可能看不到它。", "codexSet.dialog.emptySource": "{path} 檔案存在但為空,因此此層不會傳送任何內容。", "codexSet.dialog.notExposed": "基礎提示詞不在 Codex 可列印的訊息清單中傳遞,因此無法在此顯示。可以透過 model_instructions_file 取代它。", + "codexSet.dialog.unmapped": "此層在提示詞輸出中尚無已確認的對應,因此暫時無法在此顯示其文字。", "codexSet.dialog.textUnavailable": "本機無法讀取 Codex 提示詞,因此無法顯示原文。", "codexSet.class.base": "基礎指令", "codexSet.class.config-toggle": "可在此切換", diff --git a/gui/src/i18n/zh.ts b/gui/src/i18n/zh.ts index 277cda2e64b..4a8dcbf7274 100644 --- a/gui/src/i18n/zh.ts +++ b/gui/src/i18n/zh.ts @@ -1103,6 +1103,7 @@ export const zh: Record = { "codexSet.dialog.notRendered": "在我们读取的那一轮中,此层没有发送任何内容。各部分仅在内容变化时才会重新发送,因此单次采样可能看不到它。", "codexSet.dialog.emptySource": "{path} 文件存在但为空,因此此层不会发送任何内容。", "codexSet.dialog.notExposed": "基础提示词不在 Codex 可打印的消息列表中传递,因此无法在此显示。可以通过 model_instructions_file 替换它。", + "codexSet.dialog.unmapped": "此层在提示词输出中尚无已确认的映射,因此暂时无法在此显示其文本。", "codexSet.dialog.textUnavailable": "本机无法读取 Codex 提示词,因此无法显示原文。", "codexSet.class.base": "基础指令", "codexSet.class.config-toggle": "可在此切换", diff --git a/gui/tests/codex-set-prompt-layers.test.tsx b/gui/tests/codex-set-prompt-layers.test.tsx index 3d654b16aa0..42963d353c0 100644 --- a/gui/tests/codex-set-prompt-layers.test.tsx +++ b/gui/tests/codex-set-prompt-layers.test.tsx @@ -258,6 +258,26 @@ test("9. the dialog names WHY text is missing rather than omitting it silently", await act(async () => { root.unmount(); }); }); +test("9b. an unmapped layer does not receive the base-prompt explanation", async () => { + // A probe that succeeded but has no confirmed tag for a layer is neither + // "unavailable" nor the base prompt's "not-exposed": the not-exposed copy + // names the base prompt and model_instructions_file, which would mislead an + // operator reading it for an unrelated layer. + stubRoutes(call => call.url.endsWith("/api/codex-prompt/text") + ? json({ ok: true, layers: { personality: { text: null, reason: "unmapped", bytes: 0 } } }) + : json(snapshot())); + const { container, root } = await mount(); + await act(async () => { + (row(container, "personality")!.querySelector("button") as HTMLButtonElement).click(); + }); + const dialog = document.querySelector("dialog.modal-overlay")!; + const notice = dialog.querySelector(".codex-set-layer-dialog__no-text")!; + expect(notice.textContent).toContain("no confirmed mapping"); + expect(notice.textContent).not.toContain("base prompt"); + expect(notice.textContent).not.toContain("model_instructions_file"); + await act(async () => { root.unmount(); }); +}); + test("the prompt-text request is aborted when the panel unmounts", async () => { let textSignal: AbortSignal | null = null; globalThis.fetch = (async (input: RequestInfo | URL, init?: RequestInit) => { diff --git a/src/codex/prompt-text-probe.ts b/src/codex/prompt-text-probe.ts index 8af11f00f5e..ded869ce3d8 100644 --- a/src/codex/prompt-text-probe.ts +++ b/src/codex/prompt-text-probe.ts @@ -85,7 +85,7 @@ export interface LayerText { /** Rendered text, when this layer produced a section on the probed turn. */ text: string | null; /** Why the text is absent, when it is. */ - reason: "ok" | "empty-source" | "not-rendered" | "not-exposed" | "unavailable"; + reason: "ok" | "empty-source" | "not-rendered" | "not-exposed" | "unmapped" | "unavailable"; bytes: number; /** * `expanded` is text Codex sends as written. `template` is a catalog @@ -944,9 +944,12 @@ export async function probePromptText( // Layers whose rendered tag we have not confirmed against live output. Leaving // them absent made the GUI fall through to "unavailable", which claims the probe - // failed when it succeeded. Saying we have no mapping is the smaller claim. + // failed when it succeeded. Keep this distinct from the base prompt's + // "not-exposed", which is confirmed to travel outside the printable message + // list - reusing it showed a base-prompt-specific explanation for unrelated + // layers. for (const id of UNMAPPED_LAYER_IDS) { - layers[id] ??= { text: null, reason: "not-exposed", bytes: 0 }; + layers[id] ??= { text: null, reason: "unmapped", bytes: 0 }; } return { ok: true, codexHome, layers, base, ...(reportedRuntime ? { runtime: reportedRuntime } : {}) }; } diff --git a/tests/codex-integration/codex-prompt-route.test.ts b/tests/codex-integration/codex-prompt-route.test.ts index feb38632db2..0e95ece4a69 100644 --- a/tests/codex-integration/codex-prompt-route.test.ts +++ b/tests/codex-integration/codex-prompt-route.test.ts @@ -1520,5 +1520,16 @@ describe("020 coverage completions", () => { expect(res.body.code).toBe("invalid_body"); }); + test("41. unmapped layers stay distinct from the unprintable base prompt", async () => { + // "not-exposed" is the base prompt's contract: it is confirmed to travel + // outside the printable message list, and the GUI renders a + // base-prompt-specific explanation for it. Reusing that reason for layers + // whose tag the extractor has not verified showed that explanation on + // unrelated layers. + const probe = await Bun.file(new URL("../../src/codex/prompt-text-probe.ts", import.meta.url)).text(); + expect(probe).toContain('"unmapped" | "unavailable"'); + expect(probe).toContain('layers[id] ??= { text: null, reason: "unmapped"'); + }); + }); diff --git a/tests/codex-integration/codex-prompt-text-probe.test.ts b/tests/codex-integration/codex-prompt-text-probe.test.ts index 58df48c1c11..3d7b756dfa5 100644 --- a/tests/codex-integration/codex-prompt-text-probe.test.ts +++ b/tests/codex-integration/codex-prompt-text-probe.test.ts @@ -613,6 +613,38 @@ describe("prompt probe process lifecycle", () => { }); }); +describe("unmapped layers", () => { + test("a layer with no confirmed tag reports unmapped, not the base prompt's not-exposed", async () => { + // UNMAPPED_LAYER_IDS used to reuse "not-exposed", which is the base prompt's + // contract: the GUI renders a base-prompt-specific explanation for it. A + // layer the extractor simply has no verified tag for is a smaller claim. + const home = promptHome({ + "config.toml": "model = \"gpt-test\"\n", + "opencodex-catalog.json": catalogJson([{ slug: "gpt-test", base_instructions: "Base prompt body." }]), + }); + const previousHome = process.env.CODEX_HOME; + process.env.CODEX_HOME = home; + setPromptTextProbeCommandForTests({ + binary: process.execPath, + args: ["-e", `process.stdout.write(${JSON.stringify(VALID_PROBE_OUTPUT)})`], + }); + try { + const result = await probePromptText(2_000); + expect(result.ok).toBe(true); + if (result.ok) { + expect(result.layers["personality"]).toMatchObject({ text: null, reason: "unmapped", bytes: 0 }); + expect(result.layers["tools"]).toMatchObject({ text: null, reason: "unmapped", bytes: 0 }); + // The base prompt keeps its own contract: readable text stays "ok" and an + // unexpanded template stays "not-exposed" - never "unmapped". + expect(result.layers["base-instructions"]).toMatchObject({ text: "Base prompt body.", reason: "ok" }); + } + } finally { + if (previousHome === undefined) delete process.env.CODEX_HOME; + else process.env.CODEX_HOME = previousHome; + } + }); +}); + describe("runtime resolution and failure classification", () => { test("a runtime the shared resolver finds is spawned, not reported missing", async () => { // Issue 4458: the old four-path POSIX check reported "codex binary not From a0cb9c86f6215c05fca7c00576522c2d7cbacc0d Mon Sep 17 00:00:00 2001 From: luvs01 <27862058+luvs01@users.noreply.github.com> Date: Sat, 19 Sep 2026 15:10:27 +0900 Subject: [PATCH 2/3] docs(pr): add the unmapped-layer dialog screenshot --- .../pr-assets/364-prompt-layer-unmapped.png | Bin 0 -> 108505 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 .github/pr-assets/364-prompt-layer-unmapped.png diff --git a/.github/pr-assets/364-prompt-layer-unmapped.png b/.github/pr-assets/364-prompt-layer-unmapped.png new file mode 100644 index 0000000000000000000000000000000000000000..ff1b5ee15b533d23539d1e407fa1bcb5f8434282 GIT binary patch literal 108505 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

%$ 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 BM-Bi0 literal 0 HcmV?d00001 From 2298006d8755ec1ffc50d12b57ee4996ef9b8900 Mon Sep 17 00:00:00 2001 From: luvs01 <27862058+luvs01@users.noreply.github.com> Date: Sat, 19 Sep 2026 20:25:41 +0900 Subject: [PATCH 3/3] fix(gui): correct stale prompt-layer comments and route-test the unmapped split --- src/codex/prompt-text-probe.ts | 6 ++-- .../codex-prompt-route.test.ts | 36 +++++++++++++++++-- 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/src/codex/prompt-text-probe.ts b/src/codex/prompt-text-probe.ts index ded869ce3d8..444b7bb763f 100644 --- a/src/codex/prompt-text-probe.ts +++ b/src/codex/prompt-text-probe.ts @@ -75,7 +75,7 @@ const UNMAPPED_LAYER_IDS = [ // The Rust source names a marker pair, but a world-state section is // DIFF-rendered: it emits nothing on a turn where its state has not changed. Live // `codex debug prompt-input` (codex-cli 0.145.0, 32978 bytes) showed no such block and - // no attribution text. Listing the id here reports "not exposed" honestly instead of + // no attribution text. Listing the id here reports "unmapped" honestly instead of // claiming a tag this extractor has never actually matched - the same mistake the // header above records for permissions. "git-attribution", @@ -103,7 +103,7 @@ export interface LayerText { /** * Why the base prompt is or is not readable, at the granularity a reader can act - * on. `LayerText.reason` has five coarse values and cannot express any of this, + * on. `LayerText.reason` has six coarse values and cannot express any of this, * which is why the detailed answer travels on its own record. */ export type BasePromptReason = @@ -374,7 +374,7 @@ function readBasePrompt(codexHome: string): BasePromptText { /** * Project the base prompt onto the legacy `base-instructions` layer slot. * - * The slot is lossy by construction - five coarse reasons, no renderer that reads + * The slot is lossy by construction - six coarse reasons, no renderer that reads * `representation` - so it carries only what it can carry honestly: published text * when the source is text Codex sends, and otherwise no text at all. A template is * deliberately NOT `ok` here, because the dialog labels every `ok` layer "Text diff --git a/tests/codex-integration/codex-prompt-route.test.ts b/tests/codex-integration/codex-prompt-route.test.ts index 0e95ece4a69..ec90891f2a5 100644 --- a/tests/codex-integration/codex-prompt-route.test.ts +++ b/tests/codex-integration/codex-prompt-route.test.ts @@ -1526,9 +1526,39 @@ describe("020 coverage completions", () => { // base-prompt-specific explanation for it. Reusing that reason for layers // whose tag the extractor has not verified showed that explanation on // unrelated layers. - const probe = await Bun.file(new URL("../../src/codex/prompt-text-probe.ts", import.meta.url)).text(); - expect(probe).toContain('"unmapped" | "unavailable"'); - expect(probe).toContain('layers[id] ??= { text: null, reason: "unmapped"'); + const fx = fixture(""); + // The probe reads the base prompt from CODEX_HOME - the decoy here, whose + // sentinel config selects model "sentinel". A catalog row that publishes + // only an instructions_template makes the base confirmed unprintable, so + // base-instructions must report "not-exposed" while the tag-less layers + // report "unmapped". + writeFileSync(join(fx.decoyHome, "opencodex-catalog.json"), JSON.stringify({ + models: [{ slug: "sentinel", model_messages: { instructions_template: "template {{unprintable}}" } }], + }), "utf8"); + const probeOutput = JSON.stringify([{ + type: "message", + role: "developer", + content: [{ type: "input_text", text: "Skill text." }], + }]); + setPromptTextProbeCommandForTests({ + binary: process.execPath, + args: ["-e", `process.stdout.write(${JSON.stringify(probeOutput)});`], + }); + + const res = await call("GET", "/api/codex-prompt/text", fx); + expect(res.status).toBe(200); + expect(res.body.ok).toBe(true); + expect(res.body.base.representation).toBe("template"); + expect(res.body.layers["base-instructions"].reason).toBe("not-exposed"); + // Mirrors UNMAPPED_LAYER_IDS in prompt-text-probe.ts. + for (const id of [ + "model-switch", "context-window-guidance", "environments-instructions", + "tools", "multi-agent-mode", "personality", "realtime", "collaboration", + "git-attribution", + ]) { + expect(res.body.layers[id]?.reason).toBe("unmapped"); + } + expectDecoyUntouched(fx); });