@adhd/apigen-base-logical 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +36 -0
  3. package/package.json +1 -1
package/CHANGELOG.md ADDED
@@ -0,0 +1,33 @@
1
+ ## 0.0.3 (2026-07-23)
2
+
3
+
4
+ ### 🚀 Features
5
+
6
+ - **release:** nx release independent versioning + verify-dist-load publish gate (Agent 2)
7
+
8
+
9
+ ### 🩹 Fixes
10
+
11
+ - **apigen:** update remaining stale @adhd/apigen-errors, core, logical refs
12
+
13
+
14
+ ### ❤️ Thank You
15
+
16
+ - pseudosky
17
+
18
+ ## 0.0.2 (2026-07-23)
19
+
20
+
21
+ ### 🚀 Features
22
+
23
+ - **release:** nx release independent versioning + verify-dist-load publish gate (Agent 2)
24
+
25
+
26
+ ### 🩹 Fixes
27
+
28
+ - **apigen:** update remaining stale @adhd/apigen-errors, core, logical refs
29
+
30
+
31
+ ### ❤️ Thank You
32
+
33
+ - pseudosky
package/README.md ADDED
@@ -0,0 +1,36 @@
1
+ # @adhd/apigen-base-logical
2
+
3
+ The **contract spine** for apigen's schema-driven, registry-based logical-type
4
+ transcoding — one mechanism that round-trips every non-JSON-native value
5
+ (well-known scalars like `Date`/`int64`/`decimal`/`bytes`/`UUID`, plus user
6
+ classes and discriminated unions) over the JSON wire, identically across host
7
+ languages.
8
+
9
+ > **Status:** contract spine only. This package currently exports **interfaces**
10
+ > (the codec/registry/transcoder contracts and the descriptor extension
11
+ > vocabulary). Codec bodies, the schema-walking transcoder, and per-host
12
+ > bindings are later plan states — see
13
+ > [`docs/plan/apigen-base-logical-types/DESIGN.md`](../../../docs/plan/apigen-base-logical-types/DESIGN.md)
14
+ > §4/§5/§11–§14.
15
+
16
+ - **Platform:** `shared` (pure TypeScript — safe in a Node CLI and a browser).
17
+ - **Layer:** `logic`.
18
+
19
+ ## Surface
20
+
21
+ | Export | What it is |
22
+ | ------------------------------------------------------------------ | --------------------------------------------------------------------------------- |
23
+ | `LogicalTypeId`, `LogicalKind`, `Wire`, `SchemaNode` | Core type aliases (DESIGN §4.2). |
24
+ | `TranscodeCtx`, `LogicalTypeCodec` | The host-agnostic codec contract (DESIGN §4.2). |
25
+ | `LogicalTypeRegistry`, `createRegistry`, `CodecRegistryError` | The registry contract + minimal dup-detecting stub (DESIGN §4.3). |
26
+ | `Transcoder` | The schema-walking transcoder **interface** (impl is a later state, DESIGN §4.4). |
27
+ | `ENVELOPE_KEY`, `ApigenEnvelope` | The self-describing envelope for schema-less positions (DESIGN §4.5). |
28
+ | `TemplateCell` | Per-language codegen cell shape (DESIGN §13.1). |
29
+ | `X_APIGEN_*`, `LOGICAL_TYPE_VERSION`, `logicalKindOf`, `codecIdOf` | Descriptor extension vocabulary + advisory hint readers (DESIGN §4.1). |
30
+
31
+ ## Invariant `[inv:hints-advisory]`
32
+
33
+ The `x-apigen-*` descriptor keys are **optional** dispatch accelerators —
34
+ structure (`format`/`$ref`/`oneOf`) is authoritative. `logicalKindOf` and
35
+ `codecIdOf` therefore return `undefined` (never throw) when a key is absent or
36
+ malformed; correctness must never depend on a hint being present.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adhd/apigen-base-logical",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "main": "./index.js",
5
5
  "module": "./index.mjs",
6
6
  "typings": "./index.d.ts"