Merge mature Profile editor with contextual Help

This commit is contained in:
proxyctl coordinator
2026-07-18 00:12:54 +08:00
12 changed files with 838 additions and 193 deletions
@@ -4,16 +4,16 @@
**Blocked by:** 07 — Build the dedicated Profile management page.
**Status:** ready-for-agent
**Status:** done
- [ ] Name and URL fields support insertion, cursor movement, Home, End, Delete, Backspace, paste, and horizontal scrolling.
- [ ] Focus is explicit and remains understandable without color.
- [ ] Single and Advanced mode transitions preserve values according to existing Proxy Profile semantics.
- [ ] Field-specific validation appears beside the relevant field and updates when input changes.
- [ ] Save uses the same canonical Profile validation semantics as the live feedback, preventing contradictory results.
- [ ] Bypass accepts efficient delimited input and displays a live normalized, deduplicated preview.
- [ ] Invalid Bypass entries are identified individually without hiding valid entries.
- [ ] Proxy credentials remain obscured during entry, scrolling, validation, review, errors, and resize.
- [ ] Save returns to management with the saved Profile selected; cancel leaves persistence unchanged.
- [ ] Long URLs and Bypass content remain usable at 80×24.
- [ ] Complete-Model tests cover editing operations, paste, horizontal scrolling, mode transitions, validation lifecycle, Bypass preview, save, cancel, resize, and adversarial secret-bearing input.
- [x] Name and URL fields support insertion, cursor movement, Home, End, Delete, Backspace, paste, and horizontal scrolling.
- [x] Focus is explicit and remains understandable without color.
- [x] Single and Advanced mode transitions preserve values according to existing Proxy Profile semantics.
- [x] Field-specific validation appears beside the relevant field and updates when input changes.
- [x] Save uses the same canonical Profile validation semantics as the live feedback, preventing contradictory results.
- [x] Bypass accepts efficient delimited input and displays a live normalized, deduplicated preview.
- [x] Invalid Bypass entries are identified individually without hiding valid entries.
- [x] Proxy credentials remain obscured during entry, scrolling, validation, review, errors, and resize.
- [x] Save returns to management with the saved Profile selected; cancel leaves persistence unchanged.
- [x] Long URLs and Bypass content remain usable at 80×24.
- [x] Complete-Model tests cover editing operations, paste, horizontal scrolling, mode transitions, validation lifecycle, Bypass preview, save, cancel, resize, and adversarial secret-bearing input.