mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-09-09 04:02:35 +00:00
32 lines
1.5 KiB
TypeScript
32 lines
1.5 KiB
TypeScript
/**
|
|
* GENERATED by `scripts/gen-session-format-catalog.ts` — do not edit by hand.
|
|
* The direct imports make historical readability independent of mounted plugins.
|
|
*/
|
|
|
|
import { KNOWN_SESSION_EVENT_TYPES } from '@deepseek-ai/dsh-session'
|
|
import { createSessionFormatCatalog } from '@deepseek-ai/dsh-session-format'
|
|
import { validateInstalledCurrentSessionArtifact, validateInstalledCurrentSessionHeader } from './current.ts'
|
|
import { releasedV0SessionFormatCodec, releasedV1SessionFormatCodec, sessionFormatV0ToV1 } from '@deepseek-ai/dsh-session-format-v0-to-v1'
|
|
import { assertReleasedV2Header, releasedV2SessionFormatCodec, restoreReleasedV2Artifact, sessionFormatV1ToV2 } from '@deepseek-ai/dsh-session-format-v1-to-v2'
|
|
|
|
/** Physical codec dispatch and complete adjacent chain, independent of mounted plugins. */
|
|
export const sessionFormatCatalog = createSessionFormatCatalog({
|
|
currentVersion: 2,
|
|
codecs: [releasedV0SessionFormatCodec, releasedV1SessionFormatCodec, releasedV2SessionFormatCodec],
|
|
currentEncoder: releasedV2SessionFormatCodec,
|
|
migrations: [sessionFormatV0ToV1, sessionFormatV1ToV2],
|
|
restoreCurrent(artifact) {
|
|
const restored = restoreReleasedV2Artifact(artifact, KNOWN_SESSION_EVENT_TYPES)
|
|
validateInstalledCurrentSessionArtifact(restored)
|
|
return restored
|
|
},
|
|
restoreTransformedCurrent(artifact) {
|
|
return restoreReleasedV2Artifact(artifact, KNOWN_SESSION_EVENT_TYPES)
|
|
},
|
|
restoreCurrentHeader(header) {
|
|
assertReleasedV2Header(header)
|
|
validateInstalledCurrentSessionHeader(header)
|
|
return header
|
|
},
|
|
})
|