diff --git a/TODO.md b/TODO.md index f7ebc9e..a509f8c 100644 --- a/TODO.md +++ b/TODO.md @@ -389,19 +389,6 @@ Exit criteria: - Validation and visible error states exist for missing or invalid key material. - `go test ./...` passes. -### Segment 5: KDBX Security Settings Preservation - -Scope: -- Preserve supported cipher and KDF settings when reopening and saving. -- Surface relevant settings in product-facing docs or UI where appropriate. -- Document unsupported settings explicitly. - -Exit criteria: -- Reopen-and-save cycles preserve supported KDBX security settings. -- Compatibility notes are current in `docs/kdbx-compatibility.md`. -- Tests cover settings preservation across save cycles. -- `go test ./...` passes. - ### Segment 6: Entry CRUD UI Scope: @@ -607,33 +594,6 @@ Exit criteria: - UI tests or controller-integrated tests cover these states. - `go test ./...` passes. -### Segment 18: Desktop Automation Resolution - -Scope: -- Either implement a desktop login automation mechanism comparable in purpose to KeePass auto-type, -- or explicitly finalize the design that secure gRPC supersedes auto-type. -- Keep the decision documented in-repo. - -Exit criteria: -- The desktop automation requirement is explicitly resolved in code or docs. -- The chosen approach is documented in `docs/desktop-automation.md`. -- Any implemented behavior is tested. -- `go test ./...` passes. - -### Segment 19: Packaging And Runbook - -Scope: -- Keep the app runnable from source. -- Document desktop build and run steps. -- Document Android packaging with `gogio`. -- Add icon and metadata placeholders if missing. - -Exit criteria: -- `README.md` is accurate for local build, run, and Android packaging guidance. -- Placeholder metadata exists where needed for packaging. -- The app still builds from the repo. -- `go test ./...` passes. - ### Segment 20: Regression And Integration Coverage Scope: @@ -651,11 +611,10 @@ Exit criteria: Do not treat the product as complete until all of the following are true: -- Segment 1 through Segment 20 are all complete. +- All remaining numbered segments, API segments, and UI review follow-ups are complete. - KeePassGO can create, open, edit, save, save-as, lock, and unlock local KDBX databases through the UI. - KeePassGO can open and save remote WebDAV-backed KDBX databases through the UI, including visible conflict and error handling. - KeePassGO supports master password, key file, and composite key workflows in the product. -- KeePassGO preserves supported KDBX security and KDF settings and documents unsupported settings. - KeePassGO supports nested groups, path-aware navigation, explicit template navigation, and explicit recycle-bin navigation. - KeePassGO supports entry create, edit, duplicate, delete, restore, history browse, and history restore through the UI. - KeePassGO supports title, username, password, URL, notes, tags, and custom string fields through the UI. @@ -665,17 +624,7 @@ Do not treat the product as complete until all of the following are true: - KeePassGO supports copy username, copy password, copy URL, and reveal or hide password behavior end to end. - KeePassGO exposes password generation profiles through both UI and gRPC. - The secure gRPC API is broad enough for trusted automation and browser-extension-style integration. -- The desktop automation requirement is explicitly resolved. - Keyboard-first navigation and common shortcuts exist for major product workflows. - The UI no longer depends on prototype-only mock behavior for any core workflow. -- Build and run instructions exist for desktop, and packaging guidance exists for Android. - `go test ./...` passes. - `go tool golangci-lint run ./...` passes. - -## Remaining Gaps Against AGENTS.md - -None currently identified. - -The last explicitly tracked gaps are now closed: -- KDBX security settings are product-configurable at the major cipher/KDF family level for both new vault creation and existing sessions. -- The current accessibility support boundary is documented in `docs/accessibility.md`, while in-repo focus and labeling behavior remains tested.