fix: align min ls table columns with its --json field set - #1144
Conversation
The `min ls` table rendered only SESSION ID, NAME, TITLE, and LAST ACTIVITY, omitting the project_path and status fields that `min ls --json` exposes. The two surfaces presented disjoint field sets, so a table row and its JSON counterpart could not be read interchangeably. Add STATUS and PROJECT PATH columns to the table so it surfaces the same session attributes the JSON output carries. Status renders with the same snake_case tokens serde emits for the JSON surface.
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 51 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
Comment |
This branch's agent run started before #1140 merged, so its copy of `cmd_update` still had the pre-fix body. The branch was then cut from a main that already carried #1140, silently reverting the hint — git reports no conflict, since it is a clean content replacement inside a file this branch legitimately edits. Restores `cmd_update` to its state on main, byte for byte. The `min ls` work on this branch is untouched. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QCWCa2XxqtLnQPPP7xMwU
Caught a clobber — pushed a fix to this branchThis PR as opened would have reverted #1140, dropping the Cause. This agent run started 16:28Z, before #1140 merged at ~16:47Z, so it carried the pre-fix copy of This is the second occurrence today. #1142 hit the identical failure against the identical commit. Any patch run in flight when a PR merges will revert it, so this is systemic rather than a one-off — see gominimal/inbox#460. Fix. Restored |
Conflicts and reconciliation: - crates/minimal/src/main.rs: stdout_is_data_contract doc + tests — kept both the bare-min contract (this branch) and the task-run contract (#1139); the match arm union auto-merged. - crates/minimal/src/lib.rs (semantic, auto-merged textually): cmd_bare rewritten against #1142's SmartAttach enum — the picker's create row (CreateForCwd) and the first-run NoSessions case both create-and-attach on the bare path, scaffold offer suppressed; min session attach keeps its scaffold-offering activate_new_for_attach unchanged. Dropped this branch's status_label duplicate in favor of the identical helper #1144 added for the ls table.
Routing-Key: inbox-route/I_kwDOSUhdos8AAAABKmg7zA
min lsprinted a table showing only SESSION ID, NAME, TITLE, and LAST ACTIVITY, whilemin ls --jsonexposed id, name, project_path, status, and attrs. The two surfaces presented disjoint field sets — project_path and status were absent from the table — so a table row and its JSON form were not interchangeable.This adds STATUS and PROJECT PATH columns to the table so it surfaces the same session fields the JSON output carries; title and last activity stay in both (they live nested under
attrsin JSON). The status column uses the same snake_case tokens serde emits, so the two surfaces agree (informed by #421).Verification
cargo fmt --all --check— ok, no driftcargo clippy --workspace --locked -- -D warnings— ok, no warningscargo build --workspace --locked— okcargo test --workspace --locked— ok, all suites passed; newls_table_exposes_project_path_and_statuscovers the added columnsNote
Add STATUS and PROJECT PATH columns to
min lstable outputThe
min lstabular output previously showed 4 columns, missing status and project path fields that were already present in the--jsonoutput. This aligns the two by adding STATUS and PROJECT PATH columns to the non-raw, non-JSON table view.status_labelhelper in lib.rs that mapsSessionStatusvariants to snake_case strings (pending,materializing,active).format_lsto render a 6-column table with STATUS and PROJECT PATH, using fixed column widths (last activity padded to 19 chars).min lsoutput by column position will break due to the new columns and changed column widths.Macroscope summarized 3b2e27c.