Skip to content

chore(api): 🩹 post-stats housekeeping and nil metadata coalescing#104

Merged
justapithecus merged 3 commits intomainfrom
andrew/docs/post-stats-housekeeping
Feb 7, 2026
Merged

chore(api): 🩹 post-stats housekeeping and nil metadata coalescing#104
justapithecus merged 3 commits intomainfrom
andrew/docs/post-stats-housekeeping

Conversation

@justapithecus
Copy link
Owner

@justapithecus justapithecus commented Feb 7, 2026

Summary

Post-manifest-stats housekeeping combined with nil metadata coalescing across all write paths. Addresses Quarry feedback on v0.4.1 friction where callers must pass empty maps when metadata is not relevant.

Highlights

  • Nil metadata coalescing: Relax nil metadata from error to coalesce-to-empty in Write, StreamWrite, StreamWriteRecords, and Volume.Commit
  • Mark 2 manifest stats checkboxes complete in IMPLEMENTATION_PLAN.md (Phase 5 + Track B)
  • Add 14 stats test entries to CONTRACT_TEST_MATRIX.md (optional fields + per-file statistics)
  • Add Stats as optional FileRef field in CONTRACT_ERRORS.md
  • Update README version reference from v0.5.0 to v0.6.0
  • Update 4 contracts (CONTRACT_CORE, CONTRACT_WRITE_API, CONTRACT_VOLUME, CONTRACT_TEST_MATRIX) for coalescing semantics

Test plan

  • go test ./lode/... -count=1 — all pass
  • golangci-lint run ./lode/... — 0 issues
  • go build ./examples/... — all examples compile
  • Verify coalescing tests assert non-nil empty metadata in manifest
  • Verify contract language matches implementation behavior

🤖 Generated with Claude Code

justapithecus and others added 2 commits February 6, 2026 22:01
- Mark manifest stats checkboxes complete in IMPLEMENTATION_PLAN.md
- Add per-file stats test coverage to CONTRACT_TEST_MATRIX.md
- Add Stats as optional FileRef field in CONTRACT_ERRORS.md
- Update README version from v0.5.0 to v0.6.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Relaxes nil metadata handling across all write paths (Dataset.Write,
StreamWrite, StreamWriteRecords, Volume.Commit) to coalesce nil to
Metadata{} rather than returning an error. Addresses Quarry feedback
on v0.4.1 friction where callers must pass empty maps when metadata
is not relevant.

- Replace nil metadata error guards with coalescing in 4 write paths
- Update 4 tests from _ReturnsError to _CoalescesToEmpty
- Update contracts: CONTRACT_CORE, CONTRACT_WRITE_API, CONTRACT_VOLUME
- Update CONTRACT_TEST_MATRIX with new test names

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@justapithecus justapithecus changed the title docs: 📝 post-stats housekeeping and documentation alignment chore(api): 🩹 post-stats housekeeping and nil metadata coalescing Feb 7, 2026
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@justapithecus justapithecus merged commit 32a8d04 into main Feb 7, 2026
5 checks passed
@justapithecus justapithecus deleted the andrew/docs/post-stats-housekeeping branch February 7, 2026 03:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant