Commit Graph

69 Commits

Author SHA1 Message Date
Rob Colbert
b94fe24287 enhanced the AgentService.process method
- emit specialized error from failed context builds
- emit specialized error from failed workflow loops
2026-05-05 13:19:54 -04:00
Rob Colbert
09ebacc711 agent's progress on ChatTurn 2026-05-05 13:18:15 -04:00
Rob Colbert
3a8f2e4f44 agent's progress on ChatTurn component 2026-05-05 13:18:06 -04:00
Rob Colbert
ead431eade created 2026-05-05 11:55:39 -04:00
Rob Colbert
09a0f0a258 repaired 2026-05-05 11:55:33 -04:00
Rob Colbert
6881ff5601 basic chat system now works (checkpoint) 2026-05-05 10:50:32 -04:00
Rob Colbert
8333672683 platform.apiKey becomes platform.gadgetKey
gadget-drone now presents an ApiClient _id value as the Gadget Key,
allowing gadget-code to reference the client, determine the associated
User, and invoke logic on the User's behalf as an authenticated and
authorized client.
2026-05-05 08:12:34 -04:00
Rob Colbert
7b4e122533 reduce log output 2026-05-05 05:39:22 -04:00
Rob Colbert
80562561b6 added for placement in UI 2026-05-05 05:28:29 -04:00
Rob Colbert
f35a0ce921 a lot of review and by-hand cleanup (wip) 2026-05-05 05:28:09 -04:00
Rob Colbert
dca21cf762 status message display fix (agent) 2026-05-03 04:34:36 -04:00
Rob Colbert
bab0b1810f many fixes
- JWT refresh logic to prevent dead sessions
- drone status messages now arrive in IDE for display
- WorkspaceService.deployProject method added to clone into a repo or
create the directory (new project not yet in git)
2026-05-03 04:15:48 -04:00
Rob Colbert
c5e5d16a51 workspace mode management; drone status message socket events added 2026-05-03 03:05:06 -04:00
Rob Colbert
d92d61024a final notes from agent 2026-05-02 18:21:44 -04:00
Rob Colbert
5c56f95cd6 Implement workspace mode switching with validation
- Add isProcessingWorkOrder flag to track Agent work order processing
- Update onRequestWorkspaceMode with mode transition matrix validation
  - Idle → User/Agent: Always allowed
  - User → Agent: Always allowed (file editor checks for future)
  - Agent → User: Only if !isProcessingWorkOrder
  - All other transitions: Rejected with reason
- Extend RequestWorkspaceModeCallback with optional reason parameter
- Update frontend socket client to capture rejection reason
- Update handleWorkspaceModeChange to display rejection reason in toast
- Update WorkspaceModeIndicator to allow mode transitions per matrix
- Fix FilesPanel RW/RO indicator swap bug
- Document mode transition matrix and behavior in workspace-management.md
2026-05-02 18:13:31 -04:00
Rob Colbert
8b5df3827b workspace management progress 2026-05-02 16:38:49 -04:00
Rob Colbert
4ec31764d5 workspace management checkpoint while agents are working on it 2026-05-02 15:34:26 -04:00
Rob Colbert
20f9e495a6 created 2026-05-02 13:54:24 -04:00
Rob Colbert
b84e06fac8 session lock and workspace processing refinements 2026-05-02 11:21:41 -04:00
Rob Colbert
4075a63aea drone doc updates 2026-05-02 03:13:25 -04:00
Rob Colbert
4642609d06 socket message and drone workspace cleanup 2026-05-02 02:46:45 -04:00
Rob Colbert
0bb789ea6b welcome to The Grid 2026-05-01 22:28:22 -04:00
Rob Colbert
3cf6818f66 use for all home views 2026-05-01 21:19:16 -04:00
Rob Colbert
79ff24bcdd created 2026-05-01 21:17:04 -04:00
Rob Colbert
056dcd9601 return to Home on sign out 2026-05-01 20:15:34 -04:00
Rob Colbert
af09b6dcc3 more pouplate fixes 2026-05-01 17:43:56 -04:00
Rob Colbert
f353c2153a JWT processing fixed 2026-05-01 16:43:56 -04:00
Rob Colbert
e2dcaf25a0 fixing import errors from previous agent runs 2026-05-01 15:45:43 -04:00
Rob Colbert
bc4959c0da refactor session startup, shutdown, and import 2026-05-01 15:37:35 -04:00
Rob Colbert
64c4304f42 finishing touches on move to GadgetId from ObjectId 2026-05-01 15:07:37 -04:00
Rob Colbert
3f28680a44 correctly generate nanoid IDs in default clauses 2026-05-01 14:47:18 -04:00
Rob Colbert
404532012e move from Types.ObjectId to GadgetId (a string) 2026-05-01 14:31:00 -04:00
Rob Colbert
50b9618d4e project manager and chat session progress 2026-05-01 08:13:22 -04:00
Rob Colbert
c09c738be4 stop monitoring my .gadget directory, dammit! 2026-04-30 16:54:44 -04:00
Rob Colbert
15da8fc444 socket protocol completeness, fixes, and tests 2026-04-30 16:51:33 -04:00
Rob Colbert
c6d0c66563 drone manager created (wip) 2026-04-30 09:40:27 -04:00
Rob Colbert
3904c19bbf created 2026-04-30 08:04:10 -04:00
Rob Colbert
b04d48fa63 doc updates 2026-04-30 08:00:00 -04:00
Rob Colbert
8806867705 doc update 2026-04-30 06:03:45 -04:00
Rob Colbert
5fe82a46d5 renamed 2026-04-30 05:00:21 -04:00
Rob Colbert
21ff9091bb doc updates 2026-04-30 04:58:27 -04:00
Rob Colbert
ce0c7d2b27 wrap-up on Project Manager correctness 2026-04-30 04:43:42 -04:00
Rob Colbert
089a5b5fab checkpoint 2026-04-29 18:59:42 -04:00
Rob Colbert
f3fb626e82 committing for agent after session context overflow
We'll be resuming this workload in the next session/turn.
2026-04-29 17:03:11 -04:00
Rob Colbert
e1a446a3f3 Phase 5: Implement workspace persistence and crash recovery
- Create WorkspaceService for managing .gadget/ directory
- Implement workspace.json for persistent identity (workspaceId UUID)
- Add work order cache for crash recovery
- Update drone registration to include workspaceId
- Add crash recovery socket events (requestCrashRecovery, crashRecoveryResponse)
- Implement crash recovery handler in DroneSession
- Write work order cache before processing, remove after completion
2026-04-29 16:44:02 -04:00
Rob Colbert
a4d25f90a9 Phase 4: Add event emissions to AWL
- Update AgentService.process() to accept socket parameter
- Emit thinking, response, and toolCall events during AWL execution
- Emit workOrderComplete when AWL loop finishes
- Update drone to pass socket to AgentService.process()
2026-04-29 16:28:53 -04:00
Rob Colbert
92d19a648c Phase 3: Implement Drone→IDE event routing
- Add event handlers to DroneSession (thinking, response, toolCall, workOrderComplete)
- Implement routing logic to forward events to CodeSession
- Add chat session index to SocketService for reverse lookup
- Add workOrderComplete to ServerToClientEvents interface
- Update CodeSession to register chat session and set current turn on drone
- Add unit tests for DroneSession (12 tests, all passing)
2026-04-29 16:26:10 -04:00
Rob Colbert
8fe75b8c1c Phase 1-2: Fix type conflicts and implement prompt submission
- Resolve duplicate DroneStatus enum (import from @gadget/api)
- Fix IAiProvider interface conflict with DB→runtime mapper
- Add callId to ToolCallMessage and ChatToolCallSchema
- Fix ChatTurnStats schema field name (thinkingTokenCount)
- Add provider/selectedModel to ChatSession interface and model
- Implement CodeSession.onSubmitPrompt() to create ChatTurn and send work orders
- Add drone/chat session tracking to CodeSession
- Add unit tests for CodeSession (9 tests, all passing)
2026-04-29 16:21:23 -04:00
Rob Colbert
6591da3496 socket-protocol kickoff docs 2026-04-29 16:09:06 -04:00
Rob Colbert
2314a61efe more documentation and progress working towards a usable socket protocol 2026-04-29 15:23:03 -04:00