Files
pubsub/docs/architecture.md
glm-5.1 8c025c3433 Set up project structure, source files, and architecture docs
- Copy core source from alkhub_ts/packages/core/pubsub/ with import path fixups
  (typed_event_target.ts → types.ts, .ts → .js extensions)
- Make PubSubPublishArgsByKey exported (was private type, needed by barrel)
- Add package.json with sub-path exports and optional peer deps (ioredis)
- Add tsup.config.ts with multi-entry + splitting for tree-shaking
- Add tsconfig.json, vitest.config.ts, .gitignore
- Add AGENTS.md with project conventions and adapter checklist
- Add architecture docs following taskgraph/alkhub pattern:
  docs/architecture/README.md, api-surface.md, event-targets.md,
  iroh-transport.md, build-distribution.md
- Add ADRs: 001-graphql-yoga-fork, 002-tree-shake-pattern
- Copy migration research doc to docs/research/migration.md
- Dual-license MIT OR Apache-2.0 (matching taskgraph)
2026-04-30 10:20:41 +00:00

1.1 KiB

Architecture

This document has been decomposed into modular documents. See docs/architecture/ for the current architecture specification.

Document Content
architecture/README.md Overview, why this exists, interface contract, consumer context
architecture/api-surface.md createPubSub, PubSub types, operators
architecture/event-targets.md In-process, Redis, WebSocket adapters
architecture/iroh-transport.md Iroh P2P QUIC transport, framing, identity, hub/spoke
architecture/build-distribution.md Dependencies, project structure, tree-shaking, sub-path exports

Design Decisions

ADR Decision
001 Fork graphql-yoga pubsub rather than depend on it
002 Sub-path exports + peer deps for adapter isolation