Repository navigation
ENG-160 MSOS studio dry-run UI - #4
Open
blindwolf90 wants to merge 1 commit into
Open
blindwolf90 wants to merge 1 commit into
blindwolf90 wants to merge 1 commit into
Conversation
This branch has not been deployed
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
Adds an isolated
?studiodry-run UI with only COO and Engineer: claim-request menu, desk report, approve/return actions, blocked hand raise, and a persistent bridge-status banner. All actions use a local mock handler; no real system is connected.Existing event types and state machine
The existing protocol accepts only
join / status / tool / message / task / leave / reset.joincreates teams/agents,statuschanges agent state,toolnormally entersworking,messagecreates message effects,taskupdates the team task,leaveentersoffline, andresetclears the world.POST /eventsnormalizes and applies events;GET /streamsends a snapshot followed by event/effect updates. This PR does not change the server orshared/protocol.js.New front-end-only dry-run events
claim_confirmed {agent, task_id, task_title, source}: assign the simulated task and walk Engineer to COO and back.claim_rejected {agent, reason}: show the rejection reason.blocked {agent, task_id, reason}: raise Engineer's hand; opening the reason does not clear it.report_ready {agent, task_id, report_url|report_local, summary}: place a report on the desk for review.review_result {task_id, result, note}: remove an approved report or mark a returned report red.bridge_status {mode, connected, last_update_ts, note}: update the persistent mode/connectivity/staleness banner.Local action intents use POST-shaped
/actionsrequests forclaim_requestandreview, butsrc/studio/transport.tsresolves them locally and never sends them over the network. Only confirmation events complete a claim or review.Validation
npm test— 17/17 PASS (7 new tests).npm run build— TypeScript and Vite production build PASS.node sim/dry-run.js— deterministic sequence including rejection and blockage; output saved.node scripts/studio-browser.mjs— Chrome CDP mobile emulation at 390×844, real coordinate clicks, 44px targets, no horizontal overflow or external resource origins.Evidence:
docs/eng-160/evidence/contains four screenshots (default, waiting, report, offline), browser-check results, and simulator terminal output. Full handoff and Engineer integration notes:docs/eng-160/HANDOFF.md.Boundaries
Dry-run UI only. No Notion, tokens, real work orders, real bridge, Electron requirement, server changes, or arthur-os changes. The local preview uses only
SIM-001and a local simulated report.