wip: start tape identifier — init progress tracker

opus-4-6@McFiver
This commit is contained in:
2026-02-17 16:32:22 +00:00
parent e27a16eda1
commit fc513c580b

View File

@@ -0,0 +1,38 @@
# WIP: Tape Identifier Dropzone
**Branch:** `feature/software-hashes`
**Started:** 2026-02-17
**Status:** In Progress
## Plan
Implements the tape identifier feature from [docs/plans/tape-identifier.md](tape-identifier.md).
Drop a tape file on the /zxdb page → client computes MD5 + size → server action looks up `software_hashes` → returns identified ZXDB entry.
### Tasks
- [ ] Add `lookupByMd5()` to `src/server/repo/zxdb.ts`
- [ ] Create `src/utils/md5.ts` — pure-JS MD5 for browser
- [ ] Create `src/app/zxdb/actions.ts` — server action `identifyTape`
- [ ] Create `src/app/zxdb/TapeIdentifier.tsx` — client component with dropzone
- [ ] Insert `<TapeIdentifier />` into `src/app/zxdb/page.tsx`
- [ ] Verify on http://localhost:4000/zxdb
## Progress Log
### 2026-02-17T00:00
- Started work. Continuing on `feature/software-hashes` at `e27a16e`.
## Decisions & Notes
- Uses RSC server actions (not API routes) to discourage bulk scripting.
- MD5 computed client-side; file never leaves the browser.
- No new npm dependencies — pure-JS MD5 implementation.
## Blockers
None currently.
## Commits