chore: break down god-specs

This commit is contained in:
2026-04-05 10:02:12 +02:00
parent 327b893641
commit dafe7a5357
15 changed files with 1891 additions and 1784 deletions

View File

@@ -0,0 +1,50 @@
-- allium: 1
-- bDS Script Editor View
-- Scope: UI content area — script editing surface
-- Distilled from: ScriptEditor.tsx
-- Describes the layout and behaviour of the script editor.
-- See script.allium for entity model.
-- ─── External surfaces ──────────────────────────────────────
surface User {
provides: ScriptSaveRequested(script_id)
provides: ScriptRunRequested(script_id)
provides: ScriptDeleteRequested(script_id)
}
-- ─── Script editor view ──────────────────────────────────────
-- Code editor for Lua scripts (macros, utilities, transforms).
-- Layout: header bar, code editor, no preview.
-- Header: script title (editable), kind badge, enabled toggle.
-- Editor: code editor with Lua syntax highlighting.
-- Toolbar: Run button, Save button, Delete button, entrypoint selector.
-- ─── Script editor actions ──────────────────────────────────
rule ScriptSave {
when: ScriptSaveRequested(script_id)
-- Lua syntax check first (parse validation)
-- If syntax error: blocks save, shows error inline in editor gutter
-- If valid: bumps version, saves to DB + rewrites .lua file
-- See engine_side_effects.allium UpdateTemplateSideEffects (same pattern)
}
rule ScriptRun {
when: ScriptRunRequested(script_id)
-- Executes script in Lua runtime
-- Calls configured entrypoint function (default: render)
-- stdout/stderr directed to Output panel tab
-- Output panel auto-opens if not already visible
-- Errors shown in Output panel with line numbers
}
rule ScriptDelete {
when: ScriptDeleteRequested(script_id)
-- No confirmation dialog
-- Deletes DB record + .lua file on disk
-- Closes script tab, sidebar removes item
}