claw-code/rust/crates/runtime/src
YeonGyu-Kim ff45e971aa fix: #80 — session-lookup error messages now show actual workspace-fingerprint directory
## Problem

Two session error messages advertised `.claw/sessions/` as the managed-session
location, but the actual on-disk layout is `.claw/sessions/<workspace_fingerprint>/`
where the fingerprint is a 16-char FNV-1a hash of the CWD path.

Users see error messages like:
```
no managed sessions found in .claw/sessions/
```

But the real directory is:
```
.claw/sessions/8497f4bcf995fc19/
```

The error copy was a direct lie — it made workspace-fingerprint partitioning
invisible and left users confused about whether sessions were lost or just in
a different partition.

## Fix

Updated two error formatters to accept the resolved `sessions_root` path
and extract the actual workspace-fingerprint directory:

1. **format_missing_session_reference**: now shows the actual fingerprint dir
   and explains that it's a workspace-specific partition

2. **format_no_managed_sessions**: now shows the actual fingerprint dir and
   includes a note that sessions from other CWDs are intentionally invisible

Updated all three call sites to pass `&self.sessions_root` to the formatters.

## Examples

**Before:**
```
no managed sessions found in .claw/sessions/
```

**After:**
```
no managed sessions found in .claw/sessions/8497f4bcf995fc19/
Start `claw` to create a session, then rerun with `--resume latest`.
Note: claw partitions sessions per workspace fingerprint; sessions from other CWDs are invisible.
```

```
session not found: nonexistent-id
Hint: managed sessions live in .claw/sessions/8497f4bcf995fc19/ (workspace-specific partition).
Try `latest` for the most recent session or `/session list` in the REPL.
```

## Impact

- Users can now tell from the error message that they're looking in the right
  directory (the one their current CWD maps to)
- The workspace-fingerprint partitioning stops being invisible
- Operators understand why sessions from adjacent CWDs don't appear
- Error copy matches the actual on-disk structure

## Tests

All 466 runtime tests pass. Verified on two real workspaces with actual
workspace-fingerprint directories.

Closes ROADMAP #80.
2026-04-21 22:18:12 +09:00
..
bash.rs feat: wire ship.prepared provenance emission at bash execution boundary 2026-04-20 17:03:28 +09:00
bash_validation.rs feat: bash validation module + output truncation parity 2026-04-03 19:31:49 +09:00
bootstrap.rs feat(runtime): add tests and improve error handling across runtime crate 2026-04-02 18:10:12 +09:00
branch_lock.rs Close the clawability backlog with deterministic CLI output and lane lineage 2026-04-05 18:41:02 +00:00
compact.rs Remove the deprecated Claude subscription login path and restore a green Rust workspace 2026-04-11 17:24:44 +00:00
config.rs fix: #149 — eliminate parallel-test flake in runtime::config tests 2026-04-21 20:54:12 +09:00
config_validate.rs feat(config): add trustedRoots to RuntimeConfig 2026-04-08 02:35:19 +09:00
conversation.rs Retire the stale dead-session opacity backlog item with regression proof 2026-04-11 18:47:37 +00:00
file_ops.rs fix(tools): support brace expansion in glob_search patterns 2026-04-10 11:22:38 +09:00
git_context.rs feat: b5-git-aware — batch 5 wave 2 2026-04-07 15:19:45 +09:00
green_contract.rs feat(runtime): green-ness contract 2026-04-04 00:42:41 +09:00
hooks.rs Improve malformed hook failures so operators can diagnose broken JSON 2026-04-13 12:44:52 +00:00
json.rs fix: auto compaction threshold default 200k tokens 2026-04-01 03:55:00 +00:00
lane_events.rs ROADMAP #4.44.5: Ship/provenance events — implement §4.44.5 2026-04-20 15:06:50 +09:00
lib.rs ROADMAP #4.44.5: Ship/provenance events — implement §4.44.5 2026-04-20 15:06:50 +09:00
lsp_client.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
mcp.rs feat(mcp): add toolCallTimeoutMs, timeout/reconnect/error handling 2026-04-02 18:24:30 +09:00
mcp_client.rs feat(mcp): add toolCallTimeoutMs, timeout/reconnect/error handling 2026-04-02 18:24:30 +09:00
mcp_lifecycle_hardened.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
mcp_server.rs style: cargo fmt — fix CI formatting failures 2026-04-08 11:21:13 +09:00
mcp_stdio.rs Close the clawability backlog with deterministic CLI output and lane lineage 2026-04-05 18:41:02 +00:00
mcp_tool_bridge.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
oauth.rs fix(startup): fall back to USERPROFILE when HOME is not set (Windows) 2026-04-10 08:33:35 +09:00
permission_enforcer.rs feat: ultraclaw droid batch — ROADMAP #41 test isolation + #50 PowerShell permissions 2026-04-12 03:06:24 +09:00
permissions.rs docs: describe the runtime public API surface 2026-04-04 15:23:29 +00:00
plugin_lifecycle.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
policy_engine.rs feat(policy): add lane reconciliation events and policy support 2026-04-04 16:12:06 +09:00
prompt.rs style: cargo fmt — fix CI formatting failures 2026-04-08 11:21:13 +09:00
recovery_recipes.rs Implement startup-no-evidence evidence bundle + classifier (US-001) 2026-04-16 09:05:33 +00:00
remote.rs fix: auto compaction threshold default 200k tokens 2026-04-01 03:55:00 +00:00
sandbox.rs fix(sandbox): probe unshare capability instead of binary existence 2026-04-03 16:24:02 +09:00
session.rs Keep latest-session timestamps increasing under tight loops 2026-04-12 10:51:19 +00:00
session_control.rs fix: #80 — session-lookup error messages now show actual workspace-fingerprint directory 2026-04-21 22:18:12 +09:00
sse.rs feat(runtime): add tests and improve error handling across runtime crate 2026-04-02 18:10:12 +09:00
stale_base.rs feat: bridge directory metadata + stale-base preflight check 2026-04-07 15:55:38 +09:00
stale_branch.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
summary_compression.rs feat(runtime): actionable summary compression for lane event streams 2026-04-04 00:43:30 +09:00
task_packet.rs Fix formatting in task_packet.rs for CI 2026-04-16 09:35:18 +00:00
task_registry.rs US-005: Typed task packet format with TaskScope enum 2026-04-16 09:28:42 +00:00
team_cron_registry.rs Restore a fully green workspace verification baseline 2026-04-05 18:46:06 +00:00
trust_resolver.rs feat(runtime): trust prompt resolver 2026-04-04 00:44:08 +09:00
usage.rs docs: describe the runtime public API surface 2026-04-04 15:23:29 +00:00
worker_boot.rs Implement startup-no-evidence evidence bundle + classifier (US-001) 2026-04-16 09:05:33 +00:00