wowaweewa
This commit is contained in:
@@ -29,11 +29,11 @@ description: "Task list template for feature implementation"
|
||||
|
||||
**Purpose**: Project initialization and basic structure
|
||||
|
||||
- [ ] T001 Create backend and frontend directory structure in `backend/src/` and `frontend/src/`
|
||||
- [ ] T002 Initialize Rust backend crate in `backend/Cargo.toml`
|
||||
- [ ] T003 Initialize SvelteKit frontend in `frontend/package.json`
|
||||
- [ ] T004 [P] Add repository-wide formatting and lint configs in `backend/rustfmt.toml` and `frontend/.prettierrc`
|
||||
- [ ] T005 Add base README for local run notes in `README.md`
|
||||
- [X] T001 Create backend and frontend directory structure in `backend/src/` and `frontend/src/`
|
||||
- [X] T002 Initialize Rust backend crate in `backend/Cargo.toml`
|
||||
- [X] T003 Initialize SvelteKit frontend in `frontend/package.json`
|
||||
- [X] T004 [P] Add repository-wide formatting and lint configs in `backend/rustfmt.toml` and `frontend/.prettierrc`
|
||||
- [X] T005 Add base README for local run notes in `README.md`
|
||||
|
||||
---
|
||||
|
||||
@@ -43,17 +43,17 @@ description: "Task list template for feature implementation"
|
||||
|
||||
**⚠️ CRITICAL**: No user story work can begin until this phase is complete
|
||||
|
||||
- [ ] T006 Implement configuration model and validation in `backend/src/config.rs`
|
||||
- [ ] T006a Implement root non-overlap validation (fail-fast) in `backend/src/config.rs`
|
||||
- [ ] T007 Implement root boundary validation helpers in `backend/src/services/path_guard.rs`
|
||||
- [ ] T008 Implement read-only mode enforcement guard in `backend/src/services/read_only.rs`
|
||||
- [ ] T009 Implement state storage access layer in `backend/src/services/state_store.rs`
|
||||
- [ ] T010 Implement audit log append-only writer in `backend/src/services/audit_log.rs`
|
||||
- [ ] T011 Implement list-file parser and matcher in `backend/src/services/list_file.rs`
|
||||
- [ ] T012 Implement preview/confirm action model in `backend/src/services/preview_action.rs`
|
||||
- [ ] T013 Implement filesystem operations facade in `backend/src/services/ops.rs`
|
||||
- [ ] T014 Add HTTP server bootstrap and routing in `backend/src/main.rs`
|
||||
- [ ] T014a Enforce bind address defaults/local-network restriction in `backend/src/main.rs`
|
||||
- [X] T006 Implement configuration model and validation in `backend/src/config.rs`
|
||||
- [X] T006a Implement root non-overlap validation (fail-fast) in `backend/src/config.rs`
|
||||
- [X] T007 Implement root boundary validation helpers in `backend/src/services/path_guard.rs`
|
||||
- [X] T008 Implement read-only mode enforcement guard in `backend/src/services/read_only.rs`
|
||||
- [X] T009 Implement state storage access layer in `backend/src/services/state_store.rs`
|
||||
- [X] T010 Implement audit log append-only writer in `backend/src/services/audit_log.rs`
|
||||
- [X] T011 Implement list-file parser and matcher in `backend/src/services/list_file.rs`
|
||||
- [X] T012 Implement preview/confirm action model in `backend/src/services/preview_action.rs`
|
||||
- [X] T013 Implement filesystem operations facade in `backend/src/services/ops.rs`
|
||||
- [X] T014 Add HTTP server bootstrap and routing in `backend/src/main.rs`
|
||||
- [X] T014a Enforce bind address defaults/local-network restriction in `backend/src/main.rs`
|
||||
|
||||
**Checkpoint**: Foundation ready - user story implementation can now begin in parallel
|
||||
|
||||
@@ -63,16 +63,16 @@ description: "Task list template for feature implementation"
|
||||
|
||||
**Purpose**: Enforce constitution safety guarantees before any deletion work
|
||||
|
||||
- [ ] T015 Implement global read-only mode block in `backend/src/services/read_only.rs`
|
||||
- [ ] T016 Enforce root-path boundaries for all filesystem operations in `backend/src/services/path_guard.rs`
|
||||
- [ ] T017 Implement single-writer guard for destructive operations in `backend/src/services/ops_lock.rs`
|
||||
- [ ] T018 Implement dry-run preview + explicit confirmation flow in `backend/src/services/preview_action.rs`
|
||||
- [ ] T019 Implement two-stage deletion (trash/staging) in `backend/src/services/ops.rs`
|
||||
- [ ] T019a Enforce hard-delete disabled by default and require explicit config + confirmation in `backend/src/services/ops.rs`
|
||||
- [ ] T020 Enforce symlink-safe deletion in `backend/src/services/ops.rs`
|
||||
- [ ] T021 Append-only audit log for every mutation in `backend/src/services/audit_log.rs`
|
||||
- [ ] T022 Enforce whitelist protection for directory-level actions in `backend/src/services/ops.rs`
|
||||
- [ ] T023 Implement list-file edit preview + atomic write in `backend/src/services/list_file.rs`
|
||||
- [X] T015 Implement global read-only mode block in `backend/src/services/read_only.rs`
|
||||
- [X] T016 Enforce root-path boundaries for all filesystem operations in `backend/src/services/path_guard.rs`
|
||||
- [X] T017 Implement single-writer guard for destructive operations in `backend/src/services/ops_lock.rs`
|
||||
- [X] T018 Implement dry-run preview + explicit confirmation flow in `backend/src/services/preview_action.rs`
|
||||
- [X] T019 Implement two-stage deletion (trash/staging) in `backend/src/services/ops.rs`
|
||||
- [X] T019a Enforce hard-delete disabled by default and require explicit config + confirmation in `backend/src/services/ops.rs`
|
||||
- [X] T020 Enforce symlink-safe deletion in `backend/src/services/ops.rs`
|
||||
- [X] T021 Append-only audit log for every mutation in `backend/src/services/audit_log.rs`
|
||||
- [X] T022 Enforce whitelist protection for directory-level actions in `backend/src/services/ops.rs`
|
||||
- [X] T023 Implement list-file edit preview + atomic write in `backend/src/services/list_file.rs`
|
||||
|
||||
**Checkpoint**: Safety guarantees verified - destructive workflows can now begin
|
||||
|
||||
@@ -87,18 +87,18 @@ preview delete with list-file matches, and confirm delete with audit entry
|
||||
|
||||
### Implementation for User Story 1
|
||||
|
||||
- [ ] T024 [P] [US1] Implement untagged directory selection service in `backend/src/services/untagged_queue.rs`
|
||||
- [ ] T025 [P] [US1] Implement collage sampler in `backend/src/services/collage_sampler.rs`
|
||||
- [ ] T026 [US1] Implement keep decision (move to kept root) in `backend/src/services/ops.rs`
|
||||
- [ ] T027 [US1] Implement delete preview for untagged directories in `backend/src/services/preview_action.rs`
|
||||
- [ ] T028 [US1] Implement delete confirmation for untagged directories in `backend/src/services/ops.rs`
|
||||
- [ ] T029 [P] [US1] Add API endpoints for untagged review in `backend/src/api/untagged.rs`
|
||||
- [ ] T030 [P] [US1] Add API endpoints for untagged delete preview/confirm in `backend/src/api/untagged_delete.rs`
|
||||
- [ ] T030a [P] [US1] Add list-file match selection payload handling in `backend/src/api/untagged_delete.rs`
|
||||
- [ ] T031 [P] [US1] Create collage UI page in `frontend/src/pages/untagged-collage.svelte`
|
||||
- [ ] T032 [P] [US1] Create resample and decision controls in `frontend/src/components/untagged-controls.svelte`
|
||||
- [ ] T032a [P] [US1] Add list-file match selection UI in `frontend/src/components/list-file-matches.svelte`
|
||||
- [ ] T033 [US1] Wire untagged review API client in `frontend/src/services/untagged_api.ts`
|
||||
- [X] T024 [P] [US1] Implement untagged directory selection service in `backend/src/services/untagged_queue.rs`
|
||||
- [X] T025 [P] [US1] Implement collage sampler in `backend/src/services/collage_sampler.rs`
|
||||
- [X] T026 [US1] Implement keep decision (move to kept root) in `backend/src/services/ops.rs`
|
||||
- [X] T027 [US1] Implement delete preview for untagged directories in `backend/src/services/preview_action.rs`
|
||||
- [X] T028 [US1] Implement delete confirmation for untagged directories in `backend/src/services/ops.rs`
|
||||
- [X] T029 [P] [US1] Add API endpoints for untagged review in `backend/src/api/untagged.rs`
|
||||
- [X] T030 [P] [US1] Add API endpoints for untagged delete preview/confirm in `backend/src/api/untagged_delete.rs`
|
||||
- [X] T030a [P] [US1] Add list-file match selection payload handling in `backend/src/api/untagged_delete.rs`
|
||||
- [X] T031 [P] [US1] Create collage UI page in `frontend/src/pages/untagged-collage.svelte`
|
||||
- [X] T032 [P] [US1] Create resample and decision controls in `frontend/src/components/untagged-controls.svelte`
|
||||
- [X] T032a [P] [US1] Add list-file match selection UI in `frontend/src/components/list-file-matches.svelte`
|
||||
- [X] T033 [US1] Wire untagged review API client in `frontend/src/services/untagged_api.ts`
|
||||
|
||||
**Checkpoint**: User Story 1 fully functional and independently testable
|
||||
|
||||
|
||||
Reference in New Issue
Block a user