Skip to content

feat(devnet): add interactive config editor#392

Merged
RetricSu merged 24 commits intodevelopfrom
feat/tweak-config
Feb 27, 2026
Merged

feat(devnet): add interactive config editor#392
RetricSu merged 24 commits intodevelopfrom
feat/tweak-config

Conversation

@RetricSu
Copy link
Collaborator

No description provided.

…reak devnet-config-tui.ts into 7 modules:\n- tui-state.ts: TuiState/TuiWidgets interfaces + factory\n- dialogs.ts: 4 reusable dialog primitives (input, confirm, fixed-array, array-value)\n- actions.ts: all user actions (edit, add, delete, insert, move, search, quit, save)\n- format.ts: tree-view entry line formatter\n- blessed-helpers.ts: type-safe wrapper for untyped list.selected\n- devnet-config-tui.ts: thin orchestrator (layout, refreshUi, key bindings)\n\nAlso includes bug fixes from earlier review:\n- Add dialogLock to prevent global keys firing during modal dialogs\n- Add resolved guards to prevent double-resolve in all dialogs\n- Fix Enter event bubbling in waitForInput\n- Remove list.on('select') in fixed-array dialog to prevent toggle+apply conflict\n\nOther improvements:\n- Add editor.setArrayValues() to fix encapsulation leak (was direct splice)\n- Introduce guardedKey/guardedKeyAsync helpers to eliminate repeated dialogLock checks\n- Replace closure variables with centralized TuiState object\n- Add ActionContext pattern for testable action functions"
- Add clearer section spacing with dedicated render rows
- Render fixed arrays as separate detail lines
- Simplify fixed-array values to bracketed list format
- Tune inline docs/value colors for readability
- Fix object preview format to avoid blessed tag parsing artifacts
- Fix fixed-array modal key handling (single-step navigation, esc/cmd all/none)
- Bind Esc on main view to quit flow without modal re-entry
- Improve confirm dialog keyboard handling (tab/shift-tab/enter variants)
- Clarify unsaved-changes prompt with explicit action labels
- Fix confirm button layout and focus-state consistency
- Move devnet config editor from src/node/devnet-config-editor.ts to src/devnet/config-editor.ts
- Update all imports in cmd, tui, and tests
- Align refactoring doc references with new module path
@RetricSu RetricSu merged commit 0daf1a6 into develop Feb 27, 2026
4 checks passed
@RetricSu RetricSu deleted the feat/tweak-config branch February 27, 2026 08:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant