# CHANGELOG

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

---

## 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
