gadget/CHANGE.md

12 KiB

CHANGELOG

This document tracks all significant changes to Gadget Code, organized by date.


2026-05-17 (Sunday)

Subagent Context Management and Tooling Stability

Today's focus shifted towards improving subagent context management and stabilizing developmental tools, including a fix for the prompt editor.

Changes:

  • Subagent: Implemented improvements to subagent context management.
  • Development: Fixed prompt editor functionality.
  • Documentation: Added gadget-tasks architecture documentation and updated technical documentation (README, agent-toolbox.md).
  • Dependencies/Build: Addressed installation and global link issues.

2026-05-16 (Saturday)

Gadget-Tasks Architecture Correction and AI Toolbox Refactor

This update covers major architectural changes to gadget-tasks transition to a headless IDE client and the reorganization of the AI toolbox structure.

Changes:

  • Architecture: Converted gadget-tasks from directly accessing MongoDB to a headless IDE client architecture using REST API and Socket.IO.
  • Infrastructure: Added platform.ts (headless IDE client with session lock and workspace mode) to gadget-tasks.
  • Cleanup: Removed duplicated/no longer needed code in gadget-tasks (Mongoose models, internal prompt templates, task executor, AI services, and workspace management).
  • AI Toolbox: Completed refactor and extraction of the AI toolbox from @gadget/ai into @gadget/ai-toolbox.
  • Project Manager: Implemented upgrades across Phases 1-4.
  • Infrastructure: Added necessary backend routes (PATCH /api/v1/projects/:projectId/tasks/:taskId/lastRun) and service methods for atomic task field updates.
  • Project Configuration: Updated GadgetTasksConfig and removed unneeded dependencies (mongoose, dayjs, simple-git, etc.).

2026-05-15 (Thursday)

Context Window Configuration Added

The most recent change introduces the numCtx (Context Window) setting to the SESSION panel, allowing users to configure the context window size for their AI model sessions. This setting is part of a broader enhancement to the model configuration pipeline that also includes numPredict and maxCompletionTokens parameters.

Changes:

  • Added numCtx setting to SESSION panel
  • Updated model configuration pipeline to include numPredict, numCtx, and maxCompletionTokens
  • Modified ChatSessionView to handle new context window settings
  • Updated session initialization logic to apply context window configuration
  • Added Gab AI affiliate link
  • Changed Ollama abort procedure

2026-05-14 (Wednesday)

SubProcess Observability Implementation

This week focused on implementing comprehensive observability for SubProcess operations within the DroneManager and DroneInspector components, including detailed logging, status tracking, and event emission capabilities.

Changes:

  • Implemented Phase 2: SubProcess observability in DroneManager and DroneInspector
  • Added subprocess status tracking and event emission
  • Updated UI to display subprocess execution details
  • Fixed mode change log message formatting

2026-05-13 (Tuesday)

Documentation and Editor Improvements

Documentation updates include adding continuation prompts and remaining steps for User Mode, session summary documentation for MVP completion, and formatting cleanup in AGENTS.md. The editor improvements address a critical issue with CodeMirror editor height constraints in flex layouts.

Changes:

  • Added continuation prompt and remaining steps for User Mode documentation
  • Added session summary for User Mode MVP completion
  • Fixed CodeMirror editor height constraint in flex layout
  • Minor formatting cleanup in AGENTS.md
  • Created new files and prep work for landing page project

2026-05-12 (Monday)

FILES Panel and Editor Integration

This week marked a significant milestone with the implementation of the FILES panel foundation featuring lazy-loading file tree capabilities. The implementation replaced react-ace with @uiw/react-codemirror to resolve React 19 compatibility issues and Vite dev server problems.

Changes:

  • Implemented FILES panel foundation with lazy-loading file tree
  • Replaced react-ace with @uiw/react-codemirror
  • Fixed flexbox scrolling for FILES panel sidebar
  • Added shrink-0 to SESSION and PROJECT panels for proper flex layout
  • Fixed file tree scrolling and text selection issues
  • Fixed file tree backend recursion breaking lazy loading
  • Fixed file tree showing entire workspace instead of project directory
  • Fixed file tree duplication and corruption on expand
  • Fixed file tree expand/collapse not rendering children
  • Added navigation to project in Project Manager using slug
  • Fixed ACE editor integration crash — React 19 compat, Vite ?url pattern, Error Boundary
  • Fixed file tree duplication and corruption on expand

2026-05-11 (Sunday)

Subagent Processing and Authentication Fixes

This weekend's work focused on subagent processing improvements and authentication fixes, including fixes for subagent response handling, session data management, and adding the persona field to sign-in responses.

Changes:

  • Fixed subagent response handling and session data
  • Added persona field to sign-in response
  • Fixed JWT expiration bugs and drone heartbeat timeouts
  • Added installation guides, config examples, and systemd service files
  • Fixed subagent markdown output whitespace using .subagent-compact.gadget-markdown
  • Applied CSS and style fixes for subagent display
  • Updated build prompt
  • Fixed auth: include persona field in sign-in response

2026-05-10 (Saturday)

Workspace and Project Philosophy Shift

This weekend involved a philosophical shift in how Workspaces and Projects are conceptualized and implemented, with improved separation of concerns and clearer boundaries between the two concepts.

Changes:

  • Applied philosophy shifts for Workspaces and Projects
  • Updated workspace and project conceptual model
  • Improved separation of concerns between workspace and project
  • Chat interface fixes and cleanup
  • Credential provider fix
  • Ensure apiKey is presented to required consumers

2026-05-09 (Friday)

Agentic Workflow Loop Rebuild

This week involved a complete rebuild of the Agentic Workflow Loop to improve reliability and performance, including better error handling, improved checkpointing, and enhanced event emission capabilities.

Changes:

  • Re-built Agentic Workflow Loop with improved reliability
  • Enhanced streaming response handling
  • Implemented chat session auto-naming with IDE update
  • Improved checkpointing and event emission
  • GadgetLogTransportSocket and the drone-to-IDE log

2026-05-08 (Thursday)

Chat Session Heartbeat and User Settings

This week focused on implementing chat session heartbeat functionality and user settings management, ensuring that active sessions are properly tracked and can be recovered in case of unexpected disconnections.

Changes:

  • Implemented chat session heartbeat and session unlock
  • Added user settings management
  • Made reasoning effort configurable
  • Added editable session name with cog icon
  • Redesigned sign-in form and presentation
  • Integrated persona field in User
  • Reworked provider/model selection with save/cancel pattern
  • Added navigation to return to Project Manager
  • Quick fix for when logging.file.enabled is false
  • Refactor: unify logging into @gadget/api as GadgetLog

2026-05-07 (Wednesday)

Streaming Responses Implementation

This week saw the implementation of streaming responses for AI model interactions, including proper handling of streaming data from Ollama and other providers with support for real-time token delivery and response completion tracking.

Changes:

  • Implemented streaming responses for Ollama
  • Added streaming response handling and correctness improvements
  • Created documentation for streaming responses
  • Improved real-time token delivery and completion tracking

2026-05-06 (Tuesday)

Agent Tool and Toolbox Refactoring

This week involved significant refactoring of the agent tool and toolbox architecture, including unifying logging into @gadget/api as GadgetLog and restructuring the toolbox to support better tool registration and management.

Changes:

  • Refactored agent tool and toolbox architecture
  • Unified logging into @gadget/api as GadgetLog
  • Improved tool registration and management
  • Reduced log spam through pre-task cleanup
  • Agent, tools, toolbox, tool loop, AI environment

2026-05-05 (Monday)

Basic Chat System Implementation

This week marked a major milestone with the implementation of a working basic chat system, including provider, model, and mode selection capabilities, along with enhanced AgentService.process method functionality.

Changes:

  • Implemented basic chat system
  • Added provider, model, and mode selections
  • Enhanced AgentService.process method
  • Implemented chat turn processing
  • Added agent progress tracking

2026-05-03 (Saturday)

Status Message Display Fix

This weekend's work focused on fixing the status message display in the agent interface and implementing workspace mode management improvements with drone status message socket events.

Changes:

  • Fixed status message display in agent interface
  • Implemented workspace mode management
  • Added drone status message socket events
  • Many fixes

2026-05-02 (Friday)

Workspace Mode Switching

This week involved implementing workspace mode switching functionality with proper validation, ensuring that workspace mode changes are validated before being applied, preventing invalid state transitions.

Changes:

  • Implemented workspace mode switching with validation
  • Added session lock and workspace processing refinements
  • Improved workspace management system
  • Workspace management progress

2026-05-01 (Thursday)

Welcome to The Grid

This week marked the beginning of a new phase with the implementation of the "Welcome to The Grid" home view, including JWT processing fixes, session startup/shutdown/refactoring improvements, and the transition from Types.ObjectId to GadgetId.

Changes:

  • Implemented "Welcome to The Grid" home view
  • Fixed JWT processing
  • Refactored session startup, shutdown, and import
  • Transitioned from Types.ObjectId to GadgetId
  • Added return to Home on sign out
  • More populate fixes

2026-04-30 (Wednesday)

Socket Protocol Implementation

This week focused on implementing and refining the socket protocol for drone-to-IDE communication, including defining missing socket event types, enforcing typed events in the frontend build, and adding a setting for max Socket.IO HTTP buffer size.

Changes:

  • Implemented socket protocol completeness
  • Defined missing socket event types
  • Enforced typed events in frontend build
  • Added max Socket.IO HTTP buffer size setting
  • Created drone manager

2026-04-29 (Tuesday)

Workspace Persistence and Crash Recovery

This week involved implementing workspace persistence and crash recovery capabilities, including adding workspace mode to the gadget-drone process, event emissions to the Agentic Workflow Loop, and drone-to-IDE event routing.

Changes:

  • Implemented workspace persistence and crash recovery
  • Added workspace mode to gadget-drone process
  • Added event emissions to Agentic Workflow Loop
  • Implemented drone-to-IDE event routing
  • Fixed type conflicts and implemented prompt submission

2026-04-28 (Monday)

Dark Industrial Theme and JWT Authentication

This week marked a significant visual and architectural milestone with the implementation of the dark industrial theme, Project Manager, and JWT authentication, replacing the previous sign-up concept with a more streamlined sign-in experience.

Changes:

  • Implemented dark industrial theme
  • Added Project Manager
  • Implemented JWT authentication
  • Enforced theme correctly
  • Added project service
  • Updated DroneRegistration with workspaceDir
  • Fix: Darken border colors to match dark industrial theme
  • Theme enforced and correctly implemented; e2e tests added for theme

2026-04-27 (Sunday)

Initial Commit

The project was initialized with the initial commit, establishing the foundation for all subsequent development.

Changes:

  • Initial project commit
  • Established basic project structure