# Slice 2: Visual Configuration ## Status Not started ## Objective Allow an MVP project to be configured through the GUI without routine hand-editing of canonical JSON. ## Dependencies - Slice 1 component contracts - Existing action, event, binding, variable, and Preview models - Canonical top-level `project.bindings` decision ## In Scope - Visual REST Action CRUD - Component events, request input mappings, response bindings, variables, and page-load configuration - Immediate synchronization with canonical project JSON ## Out of Scope - AI-generated configuration - Chained actions, general orchestration, and advanced JSONPath authoring ## Tasks - [ ] Design a consistent workflow for editing actions, events, bindings, and variables. - [ ] Implement REST Action list, create, edit, duplicate, and delete operations. - [ ] Add method, URL, headers, query, path, body, timeout, and authentication-type controls. - [ ] Implement component event configuration, beginning with Button `onClick`. - [ ] Implement request input mapping from components and variables. - [ ] Implement response source and component/variable target selection. - [ ] Default new action-response bindings to `onSuccess`. - [ ] Implement page-load action configuration for initial data population. - [ ] Add variable declaration and default-value editing. - [ ] Warn before deleting referenced actions, variables, or components. - [ ] Ensure every visual edit immediately updates canonical JSON. - [ ] Add tests, examples, and documentation updates. ## Acceptance Criteria - [ ] A user can build the workflow launcher without editing JSON. - [ ] Actions, inputs, triggers, and response mappings can be configured visually. - [ ] Initial dropdown/table population can be configured visually. - [ ] Dangling references are reported before Preview execution. - [ ] Visual and JSON editors remain synchronized and save/load preserves configuration. ## Validation - [ ] Frontend TypeScript check and production build pass. - [ ] Editor interaction tests pass. - [ ] Generated canonical JSON validates against the schema. - [ ] Manual workflow-launcher and dependent-data scenarios pass. ## Risks and Open Questions - Configuration UI needs progressive disclosure to remain manageable. - Page-load support must not become a general workflow engine. - Authentication controls must reference secrets without storing credential values. ## Progress Log No work recorded yet. ## Handoff - Last completed: Slice plan created. - Next action: Design the action editor data flow and acceptance-test project. - Known blockers: Coordinate secret-reference fields with Slice 3.