Commit graph

6 commits

Author SHA1 Message Date
49c6e995a8 fix: tolerate non-string YAML list elements when parsing tickets
YAML values like '1.0' (unquoted) parse as double, not String.
Changed parseStringList to use string interpolation ('$e') instead
of 'e as String', so numeric YAML scalars in labels/milestones
don't crash ticket parsing.

Also quote all '1.0' label values in existing ticket files so they
are unambiguously strings in YAML.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 16:05:01 -04:00
0ad1fae213 chore: 1.0 release prep
Metadata:
- Bump dew CLI version 0.0.1 → 1.0.0
- Add repository + issue_tracker URLs to all pubspec.yaml files
- Switch inter-package path deps to versioned deps (^1.0.0)
- Remove publish_to: none from all packages
- Add MIT LICENSE to root and all packages
- Confirm all four pub.dev names available (dew, dew_core, dew_kanban, dew_mcp)

Documentation:
- Add CHANGELOG.md (Keep a Changelog format, full 1.0.0 feature history)
- Overhaul README.md (pitch, pub.dev badge, quick-start, feature sections)
- Add TUI section + full keybinding tables to docs/features/kanban.md
- Add CONTRIBUTING.md (setup, test, lint, branch strategy, command guide)

Tests:
- Add packages/cli/test/cli_test.dart (6 smoke tests)
- Add packages/kanban/test/integration_test.dart (6 TicketStore e2e tests)
- Expand packages/mcp/test/mcp_test.dart (5 tool registration tests)
- Add dew_kanban as dev dependency in packages/mcp/pubspec.yaml
- 57/57 tests passing

Code quality:
- dart format applied across all 23 changed source files
- dart analyze: zero errors, zero warnings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 15:58:54 -04:00
4193282325 TUI: add F1 hint to all mode footers, wire F1 in editor, update board hints
- Board footer now shows all actions: D, L, F1, and the full keybinding list
- Detail footer shows [F1] help alongside scroll and edit hints
- Editor footer shows [F1] help hint
- F1 key now handled in editor mode (was only wired in board/detail)
- Stage deleted .project/kanban/backlog/DEW-0016.md

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 15:08:14 -04:00
5d9d9ded3f feat(tui): widen editor modal to max 100 cols
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 14:27:43 -04:00
0a2e8fbd90 fix(tui): replace brightBlack with white for terminal contrast
brightBlack (dark gray) is invisible on gray/medium terminal backgrounds.
Replace all instances with white for borders, hints, and secondary text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 14:13:39 -04:00
21d3814da4 feat(tui): full ticket editor modal overlay
- Add _EditorField enum and _EditorState class for mutable field tracking
- Add _Mode.editor and wire 'e' key in board+detail modes
- Editor supports: title (inline text edit), type (◀/▶ selector),
  column (◀/▶ selector), labels (chips + add/delete), milestones (same),
  body (preview + launches $VISUAL/$EDITOR/vi in raw terminal)
- j/k and arrow keys navigate between fields
- h/l cycle selector values and move item cursor in multi-value lists
- d removes selected label/milestone
- s saves all fields via store.update(), returns to board with focus on ticket
- Esc/q discards, returns to board
- _renderEditor: centered modal overlay (max 76 wide), dim background,
  double-line border in column accent colour, 'unsaved' indicator when dirty

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 14:03:12 -04:00