ci / protondrive (push) Successful in 23m29s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3.2 KiB
3.2 KiB
Task 19 review (b667a1ab0..cf7577dc1)
Spec Compliance
- ✅ Spec compliant (with the handoff "Task 19" notes applied: base
06700aaf2for old binary, TODO entry followed). - Verified:
git diffof go.mod/go.sum is 11 + 20 deletions, no additions. Removed: Proton-API-Bridge, go-proton-api, relvacode/iso8601, ProtonMail/gluon, goquery, cascadia, juniper, go-message, go-vcard, resty/v2, logrus (plus their go.sum lines). Nothing else changed.go mod tidy -diffis clean,go build ./...passes,go mod verifyok, no .go file imports any removed module. - Not re-run (taken from report): size check, race suite, cross-compile, full
go test ./.... - ⚠️ cmd/bisync TestRcBackupDir failure is claimed pre-existing (also at
06700aaf2); not independently verified. Handoff said only cmd/serve/s3 was the baseline, so controller may want to eyeball it.
Strengths
- crypto_diff_internal_test.go deleted; fixture helpers moved verbatim (crypto_internal_test.go:870-1010),
-updatebranch and flag dropped cleanly, imports tidy, vet clean. - Frozen tests are not vacuous:
checkOldLibFixture(crypto_internal_test.go ~930-1010) decrypts node keys, name, hash key, content key, block, block signature, manifest and xattrs, with require.NoError on each decrypt and assert.Equal against stored plaintexts;n==2guards against a deleted fixture. RanTestFrozenFixtures(file, folder) andTestFrozenFileFixture(legacy, v6): PASS. Fixtures (folder.json, file.json, file/{legacy,v6}/*) still present. - Docs: TODO entries closed/rewritten accurately, lost coverage and downgrade risk logged, DECISIONS entry honest, ARCHITECTURE rough-edge removed.
Issues
Critical
None.
Important
None.
Minor
- docs/plans/001-protondrive-tier1-HANDOFF.md:56 still says "19-21 Not started" and the table at :55 says 1-18 implemented; the bullet at :64 was updated to say Task 19 is done, so the file contradicts itself. Update the table to 1-19 / 20-21.
- docs/plans/001-protondrive-tier1-HANDOFF.md:378 (ruling 13) says Proton-API-Bridge stays in go.mod until Task 19; now historical. Acceptable as a decision record, but could note "removed in Task 19".
- Lost coverage (multi-block, empty old-library files, downgrade compat with released rclone) is admitted and logged. Cheap partial mitigation not taken: the fixtures could not be regenerated, so multi-block old-library fixtures are impossible without the library; however the downgrade direction (new writer -> old reader) could have been kept as a committed fixture only by writing it with the old library before removal (e.g. one new-writer file blob plus a note). This is now only possible by checking out 06700aaf2/b667a1ab0. Suggest, if downgrade matters, a one-off generation from
b667a1ab0of a multi-block old-library file (e.g. 2 blocks) and a new-writer output, committed under testdata/oldlib/. Not blocking. - crypto_internal_test.go oldLibFixture comment still says "one block of content"; accurate for current fixtures.
Assessment
Task quality: Approved
Reasoning: go.mod/go.sum changes are pure, tidy-clean removals of only the two libraries and their exclusive dependencies, build passes, and the retained frozen-fixture tests perform real assertions that pass. Only a stale handoff status table remains.