|
|
@@ -9,7 +9,7 @@ English | [中文](README.zh.md)
|
|
|
|
|
|
## Summary
|
|
|
|
|
|
-`dsh-session-format-v0-to-v1` decodes the complete released-v0 JSONL record language and converts it into the shared-layout v1 format. The edge preserves validated header and event facts except for `version: 0` becoming `version: 1`; it also applies the finite legacy normalizers that v0 persistence accepted. The package freezes the v0 reader, the strict v1 migration target validator, and a vocabulary-neutral v1 physical codec that a later edge can reuse without importing the latest Session representation.
|
|
|
+`dsh-session-format-v0-to-v1` decodes the complete released-v0 JSONL record language and converts it into the shared-layout v1 format. The edge preserves validated header and event facts except for `version: 0` becoming `version: 1`; it also applies the finite legacy normalizers that v0 persistence accepted. The package freezes the v0 reader, the strict v1 migration target validator, and a vocabulary-neutral v1 physical codec that a later edge can reuse without importing the latest Session representation. Most of its source is the frozen released v0/v1 event vocabulary rather than the identity conversion: `payload-validation.ts` and `relationships.ts` pin the payload members and lifecycle pairings of every first-party event type, so a malformed historical log is refused as an unsupported migration with its source retained before the installed current restorer runs, and a later edge that restructures released events can trust their shapes without importing the current Session package.
|
|
|
|
|
|
## Table of Contents
|
|
|
|
|
|
@@ -56,6 +56,8 @@ The physical codec expands each packed row atomically and never mutates parsed i
|
|
|
|---|---|
|
|
|
| [`src/codec.ts`](src/codec.ts) | Frozen v0/v1 physical headers, packed rows, and provenance ranges |
|
|
|
| [`src/dispositions.ts`](src/dispositions.ts) | Released-v0 event and payload-member inventory |
|
|
|
+| [`src/payload-validation.ts`](src/payload-validation.ts) | Frozen nested payload semantics for every released-v0/v1 event type |
|
|
|
+| [`src/relationships.ts`](src/relationships.ts) | Frozen cross-event pairings: turns, steps, tool starts and results, retries, compaction, titles |
|
|
|
| [`src/migration.ts`](src/migration.ts) | Identity edge and legacy normalization |
|
|
|
| [`src/validation.ts`](src/validation.ts) | Exact source and target validation |
|
|
|
|