Commit Graph

309 Commits

Author SHA1 Message Date
Yeachan-Heo
93f20dfd25 docs(roadmap): add unknown skill invocation hang 2026-05-20 04:32:31 +00:00
Yeachan-Heo
4d52703ca9 docs(roadmap): add export option hang 2026-05-20 03:31:35 +00:00
Yeachan-Heo
90a0d38d52 docs(roadmap): add system-prompt modifier hang 2026-05-20 03:01:45 +00:00
Yeachan-Heo
8afdb9448a docs(roadmap): add inventory json parity gap 2026-05-20 02:31:20 +00:00
Yeachan-Heo
bb2cf3f448 docs(roadmap): add local diagnostics json gap 2026-05-20 02:01:25 +00:00
Yeachan-Heo
9495dbee30 docs(roadmap): add local verb help arity hangs 2026-05-20 01:31:56 +00:00
Yeachan-Heo
1208b9a034 docs(roadmap): add compact slash-only help hang 2026-05-20 01:01:25 +00:00
Yeachan-Heo
e9db12d98b docs(roadmap): add silent malformed config gap 2026-05-20 00:30:56 +00:00
Yeachan-Heo
a666fa6f10 docs(roadmap): add version json alias gap 2026-05-20 00:01:10 +00:00
Yeachan-Heo
ac3665fe2f docs(roadmap): add help alias arity hang 2026-05-19 23:31:17 +00:00
Yeachan-Heo
7cbb6e7fa5 docs(roadmap): add unexpected positional hang 2026-05-19 22:32:00 +00:00
Yeachan-Heo
674cec191f docs(roadmap): add lifecycle explicit action hangs 2026-05-19 22:01:43 +00:00
Yeachan-Heo
59df684a17 docs(roadmap): add explicit plugin list hang 2026-05-19 21:31:23 +00:00
Yeachan-Heo
31d5db7453 docs(roadmap): add mixed PATH mcp reachability proof 2026-05-19 21:00:48 +00:00
Yeachan-Heo
164589b8e6 docs(roadmap): add mcp executable reachability gap 2026-05-19 20:30:59 +00:00
Yeachan-Heo
b4a732f33d docs(roadmap): add compact skills output gap 2026-05-19 20:01:01 +00:00
Yeachan-Heo
2980f6de6e docs(roadmap): add output-format flag placement gap 2026-05-19 19:31:20 +00:00
Yeachan-Heo
2cca298f7a docs(roadmap): add direct slash invocation contract 2026-05-19 18:31:28 +00:00
Yeachan-Heo
6b90f83b9d docs(roadmap): add text command help hang 2026-05-19 18:02:27 +00:00
Yeachan-Heo
8303af0898 docs(roadmap): add command-specific json help hang 2026-05-19 17:32:04 +00:00
Yeachan-Heo
3e2d902271 docs(roadmap): add structured root help schema 2026-05-19 17:01:00 +00:00
Yeachan-Heo
78d334c4e2 docs(roadmap): add dogfood timeout retry evidence 2026-05-19 16:31:00 +00:00
Yeachan-Heo
0063c0d698 docs(roadmap): add global flag order and clean version hang 2026-05-19 16:01:15 +00:00
Yeachan-Heo
429671ec12 docs(roadmap): add root help json hang 2026-05-19 15:31:27 +00:00
Yeachan-Heo
ed9d387e9a docs(roadmap): add shared lifecycle help hang 2026-05-19 15:01:46 +00:00
Yeachan-Heo
8d02077cfd docs(roadmap): add plugin help hang contract 2026-05-19 14:32:04 +00:00
Yeachan-Heo
44bd2b54f5 docs(roadmap): add plugin lifecycle help contract 2026-05-19 14:01:01 +00:00
Yeachan-Heo
e2c310dc04 docs(roadmap): add stale bundled plugin source provenance 2026-05-19 13:32:37 +00:00
Yeachan-Heo
25d663d140 docs(roadmap): add missing dogfood binary preflight 2026-05-19 13:00:59 +00:00
Yeachan-Heo
6183d958ba docs(roadmap): add dogfood workdir provenance guard 2026-05-19 12:31:56 +00:00
YeonGyu-Kim
f8e1bb7262 docs(roadmap): add #450 — prompt JSON error routed to stderr not stdout; doctor missing prompt_ready field 2026-05-16 23:06:07 +09:00
YeonGyu-Kim
a35ee9a002 docs(roadmap): add #449 — session list routes through ResumeSession and hits auth gate despite being a local-only filesystem read 2026-05-16 23:02:25 +09:00
YeonGyu-Kim
8f55870dad docs(roadmap): add #448 — sandbox JSON has contradictory enabled/supported/active flags
Pinpoint: 'enabled:true, supported:false' is semantic nonsense.
'filesystem_active:true allowed_mounts:[]' contradicts 'workspace-only'.
'active:false filesystem_active:true' has no documented aggregation rule.
Renaming 'enabled' to 'requested' and exposing 'active_components:[]'
would surface real isolation state to automation.
2026-05-11 23:32:30 +09:00
YeonGyu-Kim
7244a82b36 docs(roadmap): add #447 — JSON error envelopes go to stderr; stdout empty on error
Pinpoint: claw --no-such-flag --output-format json writes the JSON
envelope to stderr (115 bytes) while stdout is 0 bytes. Same for
missing_credentials, session_load_failed, invalid_model_syntax —
all 4 error kinds tested put JSON on stderr. Breaks the standard
'output=$(cmd --output-format json)' pattern. Every major CLI
(kubectl/gh/aws/jq/terraform -json) puts JSON on stdout regardless
of success/failure. Sibling: deprecation warnings precede the JSON
envelope on stderr, breaking 'tail -1 | jq' parsing.
2026-05-11 23:01:46 +09:00
YeonGyu-Kim
5ab969e7ae docs(roadmap): add #446 — config loaded 2-3x per invocation; identical deprecation warnings spam
Pinpoint: status emits 3x deprecation warnings, doctor 2x, mcp 2x,
version 0x. Each duplicate is byte-identical (same file/line/field).
Config-load pipeline is fanned out across commands without a cache.
15 redundant disk reads in worst case. Real warnings drowned out by
copies. Count fluctuates between HEADs (3 at 6c0c305a, 4 at d7dbe951,
3 at 5a4cc506) — no architectural fix landed.
2026-05-11 22:33:34 +09:00
YeonGyu-Kim
5a4cc506d5 docs(roadmap): add #445 — skill name-vs-dirname mismatch silently accepted; sibling silent drops
Pinpoint: .claw/skills/wrong-name/SKILL.md with frontmatter name:
actually-different-name silently loads as the frontmatter name. Users
referencing by dir name get skill_not_found while skills list shows
the frontmatter name. Siblings: subdir without SKILL.md silently
skipped; loose .md at skills root dropped; no --scope filter for
workspace vs user merge.
2026-05-11 22:01:12 +09:00
YeonGyu-Kim
9e1eafd02d docs(roadmap): add #444 — no broad-cwd guard for --resume; ROOT/HOME silently writable
Pinpoint: claw --resume latest from / hits 'Read-only file system'
(OS error 30) — only saved by root being read-only. From /tmp or
$HOME, silently creates .claw/sessions/<fingerprint>/ droppings.
Exit code 0 on the read-only-FS error. Stale /tmp/.claw from 13:31
dogfood still present at 21:30 (10 hours, 6+ HEADs later) — #435's
deferred-creation fix hasn't landed. The broad-cwd guard only covers
shorthand prompt path, not resume/status/doctor.
2026-05-11 21:31:33 +09:00
YeonGyu-Kim
b2048856f3 docs(roadmap): add #443 — acp serve exits 0 with status:discoverability_only; #413 still unfixed
Pinpoint: claw acp serve --output-format json exits 0 with explicit
'not implemented' message + supported:false. Automation gating on $?
sees success from a no-op. ROADMAP #413's internal-tracking leak
(discoverability_tracking, tracking) confirmed UNFIXED 11 days later.
Sibling: claw acp status returns kind:unknown (14th catch-all occurrence).
2026-05-11 21:01:24 +09:00
YeonGyu-Kim
19aaf9d05e docs(roadmap): add #442 — agents require TOML format, .md files silently dropped
Pinpoint: claw-code only loads .toml files from .claw/agents/. Claude
Code uses .md with YAML frontmatter — schema divergence. Source code
at commands/src/lib.rs:3378 silently skips non-.toml extensions with
no warning. Help text omits the format requirement. Same silent-drop
pattern as #440 (MCP) and #441 (hooks). Also: .claude/agents/ never
discovered; required fields undocumented; no scaffolding command.
2026-05-11 20:31:50 +09:00
YeonGyu-Kim
8499599b70 docs(roadmap): add #441 — hooks schema diverges from Claude Code documented format
Pinpoint: claw-code expects {hooks:{PreToolUse:['cmd-string']}} while
Claude Code docs specify {hooks:{PreToolUse:[{matcher,hooks:[{type,command}]}]}}.
Users copy-pasting from Claude Code docs get the cryptic 'must be an
array of strings, got an array' error. PR #3000 already addresses
this but is conflicting and unmerged. Siblings: unknown hook event
rejects entire hooks config (#440 pattern); first-error-only halting;
kind:unknown catch-all (13th occurrence).
2026-05-11 20:01:33 +09:00
YeonGyu-Kim
86ff83c233 docs(roadmap): add #440 — one invalid mcpServers entry blocks ALL valid servers
Pinpoint: .claw.json with one valid mcpServers entry + one missing-command
entry → mcp list returns configured_servers:0, servers:[]. The valid
server is silently dropped because parser halts on first error.
Five invalid entries in the same file produce only ONE error message
(first one); user must iterate N times to discover all problems.
Violates ROADMAP product principle #5 (partial success first-class).
2026-05-11 19:31:23 +09:00
YeonGyu-Kim
bd126905db docs(roadmap): add #439 — ancestor CLAUDE.md walk causes silent context bleed
Pinpoint: from /tmp/proj/sub/deep, claw walks ALL ancestors loading
every CLAUDE.md up to $HOME boundary. Stale /tmp/CLAUDE.md silently
bleeds into every workspace under /tmp/*. No --no-parent-memory flag,
no .claw-root boundary marker, no per-file attribution in status JSON.
Git-root is NOT a discovery boundary either.
2026-05-11 19:01:50 +09:00
YeonGyu-Kim
f4a9674086 docs(roadmap): add #438 — memory file discovery only finds CLAUDE.md, ignores AGENTS.md + CLAW.md
Pinpoint: claw-code reads CLAUDE.md (inherited from upstream Claude Code)
but silently ignores AGENTS.md (industry convention used by OpenCode/
Codex/Aider/Cursor/Continue.dev) and CLAW.md (project's own brand name).
Users with mixed-tool workflows maintaining a shared AGENTS.md see
memory_file_count stay low with no warning.
2026-05-11 18:31:17 +09:00
YeonGyu-Kim
d3a982dda9 docs(roadmap): add #437 — version JSON missing is_dirty/branch/commit_date/rustc; git_sha truncated
Pinpoint: claw version --output-format json omits is_dirty, branch,
commit_date, commit_timestamp, rustc_version. git_sha is 7-char short
form (collision risk + no git rev-parse round-trip). executable_path
leaks compile-host path /tmp/claw-dog-0530/... Sibling: prose 'message'
field still duplicates structured data (#391 supposedly fixed).
2026-05-11 18:00:57 +09:00
YeonGyu-Kim
8cf628a53c docs(roadmap): add #436 — init template sets permissions.defaultMode:dontAsk + empty .claw/
Pinpoint: claw init creates .claw.json with permissions.defaultMode:
dontAsk (disabled permission prompts by default) — compounds with #428.
Sibling: .claw/ artifact created as an empty directory (no
settings.json template inside). When .claw/ pre-exists, init skips
the entire artifact without materializing expected sub-content.
2026-05-11 17:31:17 +09:00
YeonGyu-Kim
b8f989b605 docs(roadmap): add #435 — --resume failure: exit 0 text/1 json + creates partition dir
Pinpoint: claw --resume latest on fresh workspace exits 0 in text mode
but 1 in JSON mode (same input, different outcome). Side effect:
.claw/sessions/<fingerprint>/ created on disk despite failure. Siblings:
claw --compact alone drops into REPL; claw --compact 'hello' rejects
shorthand prompt; kind:unknown catch-all yet again.
2026-05-11 17:01:30 +09:00
YeonGyu-Kim
e29010ed48 docs(roadmap): add #434 — POSIX -- separator not recognized; shorthand prompts can't start with dash
Pinpoint: claw -- 'anything' returns 'unknown option: --' with the
misleading 'Did you mean -V?' hint. Every other major CLI (cargo,
git, gh, kubectl, grep) honors POSIX -- as end-of-flags. Shorthand
prompt mode cannot accept any TEXT starting with - or --, forcing
users to remember the explicit 'prompt' verb.
2026-05-11 16:31:21 +09:00
YeonGyu-Kim
0e5f695844 docs(roadmap): add #433 — repeated --output-format silent override + case-sensitive enum
Pinpoint: --output-format json --output-format text silently picks
text, no warning, scripts that compose flags get wrong format.
Siblings: JSON (uppercase) rejected as kind:unknown; CLAW_OUTPUT_FORMAT
env silently ignored; RUST_LOG/CLAW_LOG undocumented.
2026-05-11 16:01:05 +09:00
YeonGyu-Kim
ce39d5c598 docs(roadmap): add #432 — --allowedTools naming inconsistency + missing-value parser bug
Pinpoint: tool-name registry mixes snake_case/PascalCase/UPPERCASE
in single error message; undocumented CamelCase->snake_case alias map
(Read->read_file etc.); missing flag value consumes next positional
(subcommand swallowed). kind:unknown catch-all yet again.
2026-05-11 15:31:25 +09:00
YeonGyu-Kim
fad53e2df9 docs(roadmap): add #431 — skills uninstall requires creds; install error leaks OS string
Pinpoint: claw skills uninstall <bogus> requires API creds despite
being a pure local filesystem op. Siblings: skills install <bogus>
returns raw 'No such file or directory (os error 2)' with kind:unknown;
skills install (no args) treats valid subcommand as unknown action;
agents create doesn't exist (no scaffolding command for agents).
2026-05-11 15:03:45 +09:00