# as4-411 Standards-aware directory and discovery service that cross-maps identifiers and endpoints across AS4, SS7, and additional messaging ecosystems. Enables deterministic routing, dynamic discovery, and policy-driven interoperability for messaging gateways. ## Goals - **Unified Directory Core:** Store and resolve "who/where/how" for messaging participants across networks. - **Cross-Discovery:** Translate identifiers between domains (e.g., AS4 PartyId ↔ PEPPOL ParticipantId ↔ E.164/GT ↔ SS7 PC/SSN). FI-to-FI: ISO 20022 over AS4 (PartyId → endpoint) documented in [docs/protocols/iso20022-over-as4.md](docs/protocols/iso20022-over-as4.md). - **Routing Outputs:** Produce normalized routing directives for gateways (endpoint URL, transport profile, security material references, QoS). - **Pluggable Ecosystems:** Add new protocol domains via adapters. - **Gateway Submodule:** Embed as a library and/or sidecar service into gateway stacks (AS4 MSH, SS7 STP/SCP, API gateways). ## Repository Structure - **[docs/](docs/)** — Architecture, ADRs, API specs, security, operations. Scope and non-goals: [ADR-000](docs/adr/000-scope-and-non-goals.md). - **packages/core** — Domain model, validation, policy engine. - **packages/resolver** — Resolution pipeline, scoring, caching. - **packages/storage** — Persistence (Postgres, SQLite, in-memory). - **packages/api** — REST and gRPC APIs. - **packages/connectors** — SMP/SML, DNS, file, SS7 ingest. - **packages/client** — TypeScript, Python, Go clients. - **packages/cli** — Admin and import/export tools. - **examples/** — Gateway sidecar and embedded-library usage. ## Submodule Integration Gateways can include `as4-411` as a git submodule (e.g. under `vendor/as4-411` or `modules/as4-411`) and consume: - **Library:** `packages/core` + `packages/resolver` for embedded resolution with a local store (SQLite/Postgres). - **Service:** `packages/api/rest` (or gRPC) as a sidecar or shared network service. ## Development ```bash pnpm install pnpm run build pnpm run lint pnpm run test ``` ## License See LICENSE file.