Follow-up to #9
Two issues from #9 remain after pulling the latest Shipwright update (post-v2.0.0, commit e6c5bd4):
1. Gemini CLI headless failure — NOT FIXED
Retested with the updated harness. Tried a new invocation pattern:
gemini --output-format text --approval-mode plan -p "$(cat case-packet.md)"
Result: Identical failure. Process spawns (201MB memory, actively running), produces 0 bytes on stdout, no stderr output, hangs indefinitely until killed. This was with --output-format text (which should force text-only output) AND --approval-mode plan (read-only, no tool use).
All patterns now tested and failed:
| Attempt |
Flags |
Result |
| 1 (prior session) |
cat | gemini -p "..." |
0 bytes |
| 2 (prior session) |
gemini -p "$(cat ...)" |
0 bytes |
| 3 (prior session) |
gemini -p "..." -y |
141 bytes preamble, then hung |
| 4 (this session) |
gemini --output-format text --approval-mode plan -p "$(cat ...)" |
0 bytes |
Claude and Codex continue to work perfectly with the same ~4KB prompt. This blocks Gemini from participating as a conflict harness side or as a triple-panel tiebreaker judge.
2. Sync script still missing schemas/ and benchmarks/ mappings
The updated shipwright-sync.sh (from the latest pull) added output-styles and ROOT_FILES mappings but still does not include:
"schemas:schemas"
"benchmarks/scenarios:benchmarks/scenarios"
The conflict harness scripts (build-case-packet.mjs) import from schemas/conflict-case.schema.json at runtime. Without the schemas directory synced, any destination repo that runs the harness will fail with missing file errors.
Current MAPPINGS array (from latest sync):
MAPPINGS=(
"skills:.claude/skills"
"skills:.codex/skills"
"agents:.claude/agents"
"commands:.claude/commands"
"output-styles:.claude/output-styles"
"docs:.claude/docs"
"evals:.claude/evals"
"scripts:.claude/scripts"
"scripts:.codex/scripts"
)
Workaround: Manual cp -r of schemas/ and benchmarks/scenarios/ after each sync.
Impact
The Gemini failure prevented a triple-panel tiebreaker on a real strategic decision (gaming use case prioritization for SaventData). The analysis completed with 2/3 panels (Claude + Codex) but the orchestrator's judge escalation policy calls for Gemini as the third panel when two judges disagree — which they did (UC04 vs UC10 for the third slot). Had to resolve with orchestrator judgment instead.
Follow-up to #9
Two issues from #9 remain after pulling the latest Shipwright update (post-v2.0.0, commit e6c5bd4):
1. Gemini CLI headless failure — NOT FIXED
Retested with the updated harness. Tried a new invocation pattern:
gemini --output-format text --approval-mode plan -p "$(cat case-packet.md)"Result: Identical failure. Process spawns (201MB memory, actively running), produces 0 bytes on stdout, no stderr output, hangs indefinitely until killed. This was with
--output-format text(which should force text-only output) AND--approval-mode plan(read-only, no tool use).All patterns now tested and failed:
cat | gemini -p "..."gemini -p "$(cat ...)"gemini -p "..." -ygemini --output-format text --approval-mode plan -p "$(cat ...)"Claude and Codex continue to work perfectly with the same ~4KB prompt. This blocks Gemini from participating as a conflict harness side or as a triple-panel tiebreaker judge.
2. Sync script still missing schemas/ and benchmarks/ mappings
The updated
shipwright-sync.sh(from the latest pull) addedoutput-stylesandROOT_FILESmappings but still does not include:The conflict harness scripts (
build-case-packet.mjs) import fromschemas/conflict-case.schema.jsonat runtime. Without the schemas directory synced, any destination repo that runs the harness will fail with missing file errors.Current MAPPINGS array (from latest sync):
Workaround: Manual
cp -rof schemas/ and benchmarks/scenarios/ after each sync.Impact
The Gemini failure prevented a triple-panel tiebreaker on a real strategic decision (gaming use case prioritization for SaventData). The analysis completed with 2/3 panels (Claude + Codex) but the orchestrator's judge escalation policy calls for Gemini as the third panel when two judges disagree — which they did (UC04 vs UC10 for the third slot). Had to resolve with orchestrator judgment instead.