- TicketStore rewritten: tickets live in .project/kanban/<column>/<id>.md - _findTicketFile() searches all column subdirs (one level deep) - update() moves the file when column changes - delete() cleans up attachments/<id>/ if present - _nextNumber() scans all subdirs including archive - Ticket.fromFileContent() now takes column as explicit parameter - Ticket.toFileContent() drops column field (derived from path) - _yamlQuote() added to safely quote titles containing ': ' - dew.yaml: columns changed to backlog/doing/done (alphabetical order) - Existing tickets migrated to .project/kanban/backlog/ Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
8 lines
460 B
Markdown
8 lines
460 B
Markdown
---
|
|
id: DEW-0007
|
|
title: "Config refactor: DewConfig.raw + per-package extensions"
|
|
type: story
|
|
created: 2026-04-23T23:37:36.822736Z
|
|
---
|
|
|
|
DewConfig in core becomes a thin wrapper: `class DewConfig { final YamlMap raw; }`. Each package adds a Dart extension with a typed getter (e.g. KanbanDewConfig, McpDewConfig). KanbanConfig/ColumnConfig/TicketTypeConfig move to dew_kanban; McpConfig moves to dew_mcp. Call sites unchanged: context.config.kanban.prefix etc.
|