lluistfc avatar

k-import-export

Import/export system for sharing books between characters. Covers BDB1 envelope format, async import

作者 lluistfc|オープンソース

Import/Export System

Knowledge for BookArchivist's data sharing system (BDB1 format, async import pipeline).

Quick Reference

ComponentPurpose
BDB1 FormatEnvelope format (header + payload + checksum)
ImportWorkerAsync 6-phase pipeline (decode→deserialize→validate→merge→index→complete)
ExportSerialize library → BDB1 envelope (with optional compression)

Key Feature: Import merges books by ID (preserves existing data, avoids duplicates).

Full Documentation

See: ../../.github/copilot-skills/5-import-export.md

Contains:

  • BDB1 envelope structure (header, CRC, schema version)
  • Export flow (serialize → compress → encode → envelope)
  • Import flow (6 phases: decode, deserialize, validate, merge, index, complete)
  • Merge semantics (ID-based, preserves existing)
  • Conflict detection (legacy.importConflict flag)
  • Compression support (LibDeflate, v2 format)
  • Error handling (CRC mismatch, schema validation)
  • Async iteration (16ms budget per phase)