Skip to content

Commit 58f68fc

Browse files
committed
feat: update TODO.md to reflect completed code quality and refactoring tasks, including architecture fixes and dead code removal
1 parent e1e2103 commit 58f68fc

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

docs/TODO.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
- [x] Pull-then-push flow (when remote is newer, pull first then push local changes)
2222
- [x] Consolidate logger files - unified logging system with ports & adapters pattern
2323

24-
## In Progress: Code Quality & Refactoring
24+
## Completed: Code Quality & Refactoring
2525

2626
### High Priority
2727
- [x] **Consolidate encoding utilities** - `packer.ts` & `item-packer.ts` have identical `calculateChecksum()`, `uint8ArrayToBase64()`, `base64ToUint8Array()`
@@ -47,6 +47,14 @@
4747
- [x] **Consider API client base class** - `http-client.ts` and `graphql-client.ts` have similar initialization patterns
4848
- Reviewed: Not worth abstracting. Only ~15 lines similar (config fields). Different APIs (REST vs GraphQL), different methods, different URL patterns. Base class would add complexity without benefit.
4949

50+
### Codebase Audit Fixes
51+
- [x] **Architecture violation: shared module imported plugin state** - `sync-result-handler.ts` imported `getPluginState()` from plugin
52+
- Refactored `persistLocalState()` to accept engine as parameter, callers now handle state updates locally
53+
- [x] **Dead code: duplicate `getCryptoOptions`** - Unused function in `engine/types.ts` duplicated `buildCryptoOptions` in `engine/helpers.ts`
54+
- Removed unused `getCryptoOptions` from `engine/types.ts`
55+
- [x] **Dead code: unused `removeItemsWithTombstones`** - Function in `tombstone.ts` was never imported
56+
- Removed unused function
57+
5058
## In Progress: Safety & Observability
5159

5260
- [ ] Log when local files are overwritten by remote

0 commit comments

Comments
 (0)