ac6bd3304d
- Update OpenCode compose template with web server on port 3000 - Add default_port=3000 and interfaces=[terminal, web] to OpenCode seed data - Remove hardcoded 8080 fallback in tunnel creation - Fail gracefully when tool type has no default_port configured - Update frontend ToolType API to include default_port, category, interfaces - Add port, category, and interfaces fields to tool type creation form - Display port and interfaces in tool type cards - Create migration 0012 to make default_port non-nullable - Set default_port values for existing built-in tool types - Quality gates: typecheck ✓, build ✓, Python syntax ✓
1.4 KiB
1.4 KiB
ADDED Requirements
Requirement: OpenCode runs a web server
The system SHALL configure OpenCode containers to run a web server accessible on port 3000.
Scenario: OpenCode container starts
- GIVEN an OpenCode tool instance
- WHEN the container starts
- THEN a web server is running on port 3000 inside the container
- AND the server serves a web terminal interface
Requirement: OpenCode exposes web interface
The system SHALL mark OpenCode as having both terminal and web interfaces.
Scenario: OpenCode instance created
- GIVEN a new OpenCode instance
- WHEN the instance list is displayed
- THEN both "Open" and "Terminal" buttons are shown
Requirement: OpenCode web terminal uses correct port
The system SHALL use port 3000 when creating tunnels for OpenCode instances.
Scenario: Tunnel created for OpenCode
- GIVEN an OpenCode instance with
default_port: 3000 - WHEN the instance starts and creates a tunnel
- THEN the tunnel targets
http://container-name:3000
Requirement: OpenCode web terminal displays properly
The system SHALL serve a functional web terminal interface for OpenCode.
Scenario: User opens OpenCode web UI
- GIVEN a running OpenCode instance
- WHEN the user clicks the "Open" button
- THEN a new tab opens with the OpenCode web interface
- AND the interface shows a terminal connected to the OpenCode process