Files
suaveplan/openspec/archive/2026-05-10-network-plugin-content-delivery-packer/proposal.md
2026-05-27 23:29:53 +01:00

28 lines
1.3 KiB
Markdown

# OpenSpec Change: network-plugin-content-delivery-packer
- **Change ID**: network-plugin-content-delivery-packer
- **Package**: `@suaveplan/network-plugin-content-delivery` (extension)
- **Status**: PROPOSED
- **Type**: extension
- **Date**: 2026-05-05
## Why
The core `network-plugin-content-delivery` change shipped `ChunkManifest` as a wire-stable type but did not include the `PackerIntegration` subsystem that produces / consumes it. That work was deferred per the parent proposal's `## Deferred to follow-up changes` block because it requires direct coupling to `@suaveplan/packer` (chunk packing pipeline) and adds `cd:manifest` broadcast semantics on the bus.
This change adds `PackerIntegration` to the existing package without breaking the core surface.
## What changes
- **ADDED**: `PackerIntegration` class — consumes `@suaveplan/packer` output, builds a `ChunkManifest`, and broadcasts `cd:manifest` on the bus.
- **ADDED**: `cd:manifest` event topic (payload: `ChunkManifest`).
- **ADDED**: `ContentDeliveryPlugin.packer` getter wires the new subsystem onto the plugin facade.
## Verification approach
- `src/packer/packer-integration.spec-conformance.test.ts` — pins manifest construction from a packer output, bus broadcast, hash-algorithm propagation.
## Migration impact
None — additive only.