Skip to content

fix(hub): match the shared live and recent inventory - #13

Merged
jack-arturo merged 3 commits into
mainfrom
fix/hub-dashboard-inventory
Sep 22, 2026
Merged

jack-arturo merged 3 commits into
mainfrom
fix/hub-dashboard-inventory

Conversation

@jack-arturo

Copy link
Copy Markdown
Member

Summary

CottageCode could show one HubTown agent while the voice TUI showed many because the local feed was not connected to the shared Hub inventory. Once connected, historical tasks and old PR evidence could also crowd out the current village. The shared adapter now uses the TUI’s Live + recent dashboard membership across all project towns and keeps older tasks behind Settled.

  • Preserve live cottage positions when browsing history, keep new arrivals on the compact map, and maintain safe room exits when Settled is hidden.
  • Keep initial selection, directory entries, PR filters, and feed counts consistent with the visible inventory.
  • Cache historical inventory for one minute, use larger pages, tolerate slow Hub responses, and retain the last complete snapshot after failures.
  • Document the optional Hub connection and provide a commented .env.example.

Review contract

  • Configured Hub feeds follow scope=dashboard for the default village; only explicit Settled browsing exposes history, except the cottage currently occupied by the player.
  • Historical PRs cannot resurrect hidden tasks or inflate the default PR tally. A failed inventory refresh cannot replace the last complete snapshot with partial data.
  • Existing live cottage positions and visited rooms survive feed updates and history toggles; new live arrivals do not inherit hundreds of historical plot reservations.
  • Standalone discovery remains supported. Adapter reads stay read-only, and no task message is sent without the user pressing Send.

Test plan

  • npm test — 323 passing tests.
  • git diff --check.
  • Local server serves /agents and the live townmap; verified shared inventory membership against Hub responses.
  • In-app browser fixture with 500 historical tasks: show/hide Settled, PR filter cleanup, new live arrival, and entering/leaving a historical cottage after hiding Settled, mixed-scope shared-worktree hosts, and subsequent arrivals filling live capacity, history reordering, and live arrivals while Settled remains open.
  • Live browser check: populated compact map, current inventory counts, and cottage entry.
  • Full npm run test:browser — passed, including demo navigation, fixture-only messaging, reconnect recovery, ducks, responsive layout, reduced motion, and the canonical inventory regression.
  • UI screenshot attached — live-data screenshots intentionally excluded.

Notes

No breaking changes. inventoryScope is an optional feed field; .env remains ignored and no credentials are included. No Hub code changes. No related issue was filed; this addresses the observed voice TUI/CottageCode inventory mismatch.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-22T20:35:16.641225Z 7ce544a PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@jack-arturo jack-arturo added babysit:active Babysit agent is actively working this PR babysit:waiting-codex 👀 Codex reviewing current head and removed babysit:active Babysit agent is actively working this PR labels Sep 22, 2026
@jack-arturo

Copy link
Copy Markdown
Member Author

Verified green at 7ce544ab03128715dbe73548421bce88ee7800b1. Codex automatically reviewed this head and gave 👍 with no findings; the reaction channel settled review. CI smoke passed, no review threads remain, and GitHub reports MERGEABLE. Ready for the owner to merge; no merge or auto-merge was performed.

  • Branch: fix/hub-dashboard-inventory; mode: create PR. Three commits pushed together: 4772b0a, 13ca477, 7ce544a.
  • Checks: npm test (323 passing), full npm run test:browser including canonical inventory/history regressions, and git diff --check origin/main all passed.
  • Size: local preflight 458 lines; PR size log start=517, 7ce544ab03=517. This is in the 400–900 warning band; no large-PR override.
  • Local review: Codex harness using configured gpt-6-astra/xhigh; two pre-PR passes (344s and 415s). Three distinct P2 contract breaches were found and fixed: mixed-scope roommate hosting, historical visits reserving live capacity, and live arrivals while history remained visible. P0/P1 findings: zero locally and zero hosted. No further local loop; no pre-push remediation gate was needed.
  • Hosted review: one automatic review window, convergence clean, zero threads to fix/address/skip. Zero babysit-authored remediation pushes this run or in PR lifetime; zero reviewed-commit markers because this clean review settled by reaction. No manual review-request comments, later heads, quota skips, budget reset, trivial-fix exception, blockers, or residual findings/issues.
  • Dispatch: Tier A scripts handled review status, size and labels; the orchestrator handled Tier C classification/integration and one read-only explorer check; an in-harness worker handled the specified roommate fix and browser verification. No external Tier B harness. Grok was not selected, so envelope/isolation/fallback and missed-finding comparisons are not applicable. No local review gate was skipped.

Final status: babysit:ready.

@jack-arturo jack-arturo added babysit:ready 👍 Codex all clear + gates pass; human may merge and removed babysit:waiting-codex 👀 Codex reviewing current head labels Sep 22, 2026
@jack-arturo
jack-arturo merged commit 0ba805b into main Sep 22, 2026
1 check passed
@autojack-bot autojack-bot Bot removed the babysit:ready 👍 Codex all clear + gates pass; human may merge label Sep 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant