Skip to content

Commit 09bfe9c

Browse files
committed
docs: record Phase 1 NO-GO + Phase 2 pivot to ZRAWDATA via libdivecomputer
Phase 1 spike concluded (see docs/import-formats/macdive-zsamples.md on feature/macdive-zsamples-phase-1). ZSAMPLES decoding ruled out — probably block-cipher encrypted; not crackable in the timebox. Pivot: decode ZRAWDATA via the already-integrated libdivecomputer_plugin. Shearwater dives have 100% co-coverage of ZRAWDATA/ZSAMPLES (267/267); pivot gives 49% of all dives (76% of dives with any sample data) via a certain, maintained code path. This commit: - Appends Phase 1 outcome + pivot rationale to the profile-decoding design spec. - Adds continuation pointers at the tail of the parent MacDive SQLite plan. - Adds the Phase 2 implementation plan for the ZRAWDATA pivot, gated on a pre-work investigation of the libdivecomputer_plugin API.
1 parent c87338e commit 09bfe9c

3 files changed

Lines changed: 572 additions & 0 deletions

File tree

docs/superpowers/plans/2026-04-21-macdive-sqlite-import.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1953,3 +1953,12 @@ git commit -am "chore: changelog for MacDive SQLite import"
19531953
- Core Data's NSDate epoch is 2001-01-01 00:00:00 **UTC**. Don't localize.
19541954
- If you see warnings about `ZRAWDATA` or `ZSAMPLES` being non-null but empty: MacDive writes a placeholder bplist for dives without profile data. Treat as empty and carry on.
19551955
- ZRAWDATA/ZSAMPLES BLOB decoding → sample profile population is intentionally punted to a follow-up. Opening it in this milestone risks making the PR too large; the mapper has a clear integration point to receive decoded profile arrays later.
1956+
1957+
## Continuation
1958+
1959+
Follow-up work closing the "profile samples" gap:
1960+
1961+
- **Design spec:** `docs/superpowers/specs/2026-04-23-macdive-sqlite-profile-decoding-design.md`
1962+
- **Phase 1 spike plan (completed):** `docs/superpowers/plans/2026-04-23-macdive-zsamples-phase-1-spike.md`
1963+
- **Phase 1 outcome:** NO-GO on `ZSAMPLES` (proprietary format, probably block-cipher encrypted). Full findings at `docs/import-formats/macdive-zsamples.md`.
1964+
- **Phase 2 plan (pivot):** `docs/superpowers/plans/2026-04-23-macdive-profile-phase-2-zrawdata.md` — decodes `ZRAWDATA` via the existing `libdivecomputer_plugin` for 100% coverage of Shearwater dives (267/267).

0 commit comments

Comments
 (0)