fix(web): show truthful session details#67
Merged
Conversation
Users could not trust the local dashboard because Codex sessions appeared as Claude, shell calls hid their commands, prompts were absent, and incomplete sessions used unexplained internal terminology. Infer identity and model from captured evidence, backfill historical rows, capture prompts through global hooks, and render bounded prompt and command summaries in the data-first Web UI.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Kaizen's local web view was difficult to trust: Codex sessions appeared as Claude, shell activity hid the actual commands, prompts were absent, and stale sessions used the unexplained internal label
Orphaned.This PR makes the Observe screen data-first and truthful while preserving bounded reads and low idle CPU.
Changes
UserPromptSubmitthrough global Cursor and Claude hook configuration without modifying target repositories.OrphanedwithNo completionand explain that no final event arrived for 30 minutes.Testing
cargo fmt --all -- --checkcargo clippy --all-targets -- -D warningscargo testnode -escripts, and non-shell tools.No completionexplained; zero console warnings/errors.Risk + rollback
Risk is limited to local session metadata, global user hook configuration, and read-only Web rendering. Historical repair changes only agent, model, and transcript-path metadata when captured evidence exists. Revert this commit to roll back code; no target repository files or schema migrations are introduced.
Related
No linked issue.
Notes for reviewer
Root cause: Codex compatibility hooks entered the Claude adapter and persisted adapter source as agent identity. Web compaction also discarded every event payload, while setup omitted prompt hooks.
An unfiltered local Nextest run executed
perf_projector_phase2under parallel contention and hit its wall-clock budget once. CI already excludes that binary from the parallel job and reruns it with--test-threads=1; serialized local runs passed 4/4.AI Assistance