CrossVendorAudit runs codex at reasoning effort "none" under the isolated CODEX_HOME

クローズ 初心者向け
#2,276 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 7 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
88/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
typescript
領域
ai

調査の方向性

LifeOS/install/LIFEOS/TOOLS/CrossVendorAudit.ts:413 から始め、invokeCodex() と buildIsolatedCodexHome() をたどります。提供された、分離された CODEX_HOME を使う再現手順を実行し、次に監査の呼び出しで高い推論努力が報告されることを確認します。任意のヘッダー記録は、必須の修正とは別に扱う必要があります。

索引モデルが issue の本文から書いたものです。

説明

Thanks for the isolated CODEX_HOME in CrossVendorAudit.ts. Keeping a LifeOS-for-Codex persona out of the audit fixed a real problem here. It has one side effect I ran into, reported in case it helps.

What happens

buildIsolatedCodexHome() creates a fresh home containing only auth.json. Without a config.toml, nothing sets a reasoning effort, and the exec args at LifeOS/install/LIFEOS/TOOLS/CrossVendorAudit.ts:413 don't pass one. On codex-cli 0.159.3, codex then runs the audit at no reasoning effort. Its own session header says so:

model: gpt-5.6-sol
provider: openai
reasoning effort: none

So the cross-vendor pass that is supposed to catch what the Claude reviewers missed runs as a no-reasoning call.

Repro

H=$(mktemp -d); ln -s ~/.codex/auth.json "$H/auth.json"
echo "Reply with the single word ok." | CODEX_HOME="$H" codex exec \
  --sandbox read-only --skip-git-repo-check --ephemeral --model gpt-5.6-sol - 2>&1 | grep -i "reasoning effort"
# -> reasoning effort: none

With -c 'model_reasoning_effort="high"' added, the same command prints reasoning effort: high.

Suggested fix

Pass the effort explicitly in invokeCodex(), since the isolated home will never carry a config:

["exec", "--sandbox", "read-only", "--skip-git-repo-check", "--ephemeral",
 "-c", 'model_reasoning_effort="high"',
 "--output-schema", schemaPath, "--model", CROSS_VENDOR.forge, "-"]

I'm running that locally, and an end-to-end audit through the tool now reports high.

Optional: also record what codex's header says in the verdict. The model's self-reported model_used came back as "gpt-5" while the header said gpt-5.6-sol, so the header is the reliable source. Locally I parse ^model: and ^reasoning effort: from codex's stdout/stderr into codex_model / codex_effort and log both to cato-findings.jsonl. Then an audit that ran without reasoning shows up in the record instead of passing silently.

Happy to adjust if you'd rather set this in models.ts alongside the model ID.

主要言語
TypeScript
スター
19.7k
フォーク
2.5k
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

danielmiessler/LifeOS のほかの issue

danielmiessler/LifeOS の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。