feat: remove built-in tool types distinction

- Drop is_builtin column from tool_types table
- Remove built-in tool seeding from startup
- Remove is_builtin from API schemas and frontend types
- Update tool-types spec to reflect removal of built-in concept
- Add Alembic migration for column removal
- Update tests to work without built-in distinction
This commit is contained in:
Fusion
2026-05-23 20:02:19 +02:00
parent 01adc9a00f
commit 312a646b89
12 changed files with 200 additions and 244 deletions
+3 -9
View File
@@ -2,7 +2,7 @@
### Requirement: Tool Type Model
The system SHALL store tool type definitions in the database.
The system SHALL store tool type definitions in the database without built-in vs custom distinction.
#### Scenario: Create tool type
- GIVEN an admin user
@@ -24,14 +24,8 @@ The system SHALL store tool type definitions in the database.
### Requirement: Built-in Tools
The system SHALL include default tool types.
#### Scenario: Built-in tools
- GIVEN a fresh installation
- THEN these tool types are pre-configured:
- code-server: VS Code in browser (port 8443, interfaces: ["web"])
- jupyter-notebook: Jupyter notebooks (port 8888, interfaces: ["web"])
- opencode: OpenCode agent environment (port 3000, interfaces: ["terminal", "web"])
**Reason**: Built-in tools are now regular preconfigured tool types in the database, not special privileged types.
**Migration**: Built-in tool types (code-server, jupyter-notebook, opencode) are seeded as regular database records during migration. They can be edited or deleted like any other tool type.
### Requirement: Template Validation