verstak/docs/06_Roadmap.md

220 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Верстак — roadmap
> **Wails v3 → v2:** The GUI was initially built with Wails v3 but repeatedly hit SIGSEGV on Linux during window close. Downgraded to Wails v2 which is stable. Milestone 4 below reflects the current (desktop) state.
## Milestone 0 — Skeleton
- Go module;
- cmd/verstak;
- cmd/verstak-gui stub;
- cmd/verstak-server stub;
- internal/core;
- SQLite connection;
- migrations;
- config;
- `verstak --version`;
- `verstak init --vault ./test-vault`.
Acceptance:
- `go test ./...` проходит;
- vault создаётся;
- повторный init безопасен.
## Milestone 1 — Nodes
- table nodes;
- node_meta;
- UUID;
- Create/Get/ListChildren/Update/Move/SoftDelete;
- CLI node commands;
- tests.
Acceptance:
- можно создать дерево дел;
- можно переместить узел;
- delete soft.
## Milestone 2 — Vault files
- `.verstak/`;
- config.yml;
- files table;
- copy/link file;
- open file;
- trash.
Acceptance:
- файл добавляется в дело;
- открывается системным приложением;
- delete moves to trash.
## Milestone 3 — Markdown notes
- notes table;
- create/read/save note;
- `.md` files;
- version backup;
- CLI note commands.
Acceptance:
- заметка редактируется;
- файл физически лежит в vault;
- старая версия сохраняется.
## Milestone 4 — GUI MVP
> **Current state:** the GUI is a Wails v2 desktop app. Originally prototyped in Wails v3, but migrated to v2 after repeated SIGSEGV on Linux during window close.
- Wails app;
- sidebar tree;
- create node/note;
- edit note;
- add/open file;
- basic settings.
Acceptance:
- можно пользоваться как маленьким заметочником+файловым кабинетом.
## Milestone 5 — Actions
- actions table;
- open_url;
- open_file;
- open_folder;
- run_command;
- confirmation;
- action log;
- GUI Actions tab.
Acceptance:
- можно запускать Godot/sshkeeper/сайт/папку.
## Milestone 6 — Worklog
- worklog table;
- manual entries;
- minutes;
- approximate;
- billable;
- report copy.
Acceptance:
- можно записать “3ч обновлял витрину”;
- можно скопировать отчёт клиенту.
## Milestone 7 — Search
- FTS5;
- index nodes/notes/files/worklog/actions;
- search UI;
- reindex command.
Acceptance:
- поиск находит старую инструкцию, файл или запись работ.
## Milestone 8 — DokuWiki import
- read `data/pages`;
- read `data/media`;
- namespaces to folders;
- pages to notes;
- originals saved;
- optional conversion to markdown.
Acceptance:
- старые заметки переезжают в Верстак.
## Milestone 9 — Work folder intake
- scan folder;
- show unassigned folders/files;
- create case from folder;
- copy/move/link into vault.
Acceptance:
- можно постепенно разобрать папку `work`.
## Milestone 10 — Sync server MVP (PAUSED)
- HTTP server;
- API key;
- server db;
- push/pull ops;
- blob upload/download;
- restore manifest.
Acceptance:
- две машины обмениваются изменениями через сервер.
## Milestone 11 — Conflicts and restore
- conflict copy;
- conflict UI;
- restore from server;
- retention deleted files;
- integrity check.
Acceptance:
- конфликт не теряет данные;
- можно восстановить vault на новой машине.
## Milestone 12 — Activity MVP (PAUSED)
- activity events;
- opened nodes;
- launched actions;
- changed files through app;
- suggestions;
- evidence.
Acceptance:
- Верстак предлагает worklog на основе следов.
## Milestone 13 — File scanner/watcher (PAUSED)
- snapshot scanner;
- fsnotify watcher;
- manual scan;
- changed/missing files;
- activity events.
Acceptance:
- изменения файлов снаружи приложения обнаруживаются.
## Milestone 14 — TUI MVP (PAUSED)
- Bubble Tea;
- tree/search;
- add worklog;
- run action;
- sync.
Acceptance:
- можно из терминала быстро работать с Верстаком.
## Milestone 15 — 1.0 polish (PAUSED)
- installers;
- backup export;
- docs;
- keyboard shortcuts;
- UI polish;
- migration safety;
- crash recovery;
- tests.