ax25sdl 0.1.1 → 0.3.0

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 (2) hide show
  1. package/README.md +22 -9
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -60,6 +60,14 @@ survives a third backend.
60
60
 
61
61
  ## Not yet transcribed
62
62
 
63
+ > For the **cross-runtime** view of what's implemented where (frame
64
+ > codec coverage, transports, lifecycle features, subroutine wiring,
65
+ > etc.), see
66
+ > [`docs/runtime-capability-matrix.md`](../docs/runtime-capability-matrix.md).
67
+ > The narrative below is the TypeScript-runtime-specific status of the
68
+ > SDL transcription pipeline; the matrix is the multi-runtime
69
+ > companion view.
70
+
63
71
  The AX.25 v2.2 SDL chapter is figc4.1 through figc4.7. Each YAML
64
72
  transcription's `coverage:` field declares whether it's `complete` or
65
73
  `partial`. Current status:
@@ -89,13 +97,18 @@ Real consequence: long-running connected sessions where the peer goes
89
97
  quiet for > T3 (default 30s in the runtime) will time out and re-poll
90
98
  via the unmodelled state. Short-lived sessions never reach it.
91
99
 
92
- ### Subroutine status (figc4.7)
100
+ ### Subroutine status (figc4.7) — TS runtime
93
101
 
94
102
  13 subroutines are declared in `spec-sdl/data-link/subroutines.sdl.yaml`.
95
- The C# `DefaultSubroutineRegistry` and the TS `SubroutineRegistry` ship
96
- the following coverage:
97
-
98
- | Subroutine | Status |
103
+ The TS `SubroutineRegistry` (`web/ax25/src/sdl/subroutine-registry.ts`)
104
+ ships the following coverage. The C# runtime's `DefaultSubroutineRegistry`
105
+ in [`src/Packet.Ax25/Session/`](../src/Packet.Ax25/Session/) routes every
106
+ subroutine through a `Wire(...)` walker that consumes the generated
107
+ `SubroutineSpec.Paths` directly; see the
108
+ [runtime capability matrix](../docs/runtime-capability-matrix.md#figc47-subroutines)
109
+ for the side-by-side view.
110
+
111
+ | Subroutine | TS status |
99
112
  | -------------------------------- | --------------------------------------------------- |
100
113
  | `Establish_Data_Link` | ✅ inlined into the dispatcher |
101
114
  | `Establish_Extended_Data_Link` | ✅ inlined |
@@ -113,10 +126,10 @@ the following coverage:
113
126
 
114
127
  The figc4.7 YAML transcriptions are **complete** — every subroutine's
115
128
  decision tree, predicate, and action chain is encoded. What's missing
116
- is the runtime *walker* that consumes those bodies. The dispatcher
117
- treats a `kind: subroutine` action as a name lookup against a registry;
118
- nine of the thirteen names map to a no-op that logs a debug message
119
- instead of executing the SDL-declared body.
129
+ in the TS runtime is the *walker* that consumes those bodies. The TS
130
+ dispatcher treats a `kind: subroutine` action as a name lookup against
131
+ a registry; nine of the thirteen names map to a no-op that logs a debug
132
+ message instead of executing the SDL-declared body.
120
133
 
121
134
  Real consequence: REJ / SREJ recovery, T1V smoothing, frame
122
135
  retransmission on T1 timeout, and v2.2 mode negotiation all degrade to
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ax25sdl",
3
- "version": "0.1.1",
3
+ "version": "0.3.0",
4
4
  "description": "AX.25 v2.2 SDL specification as TypeScript data structures, generated from the canonical SDL figure transcriptions in M0LTE/packet.net.",
5
5
  "license": "MIT",
6
6
  "repository": {