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.
- package/README.md +22 -9
- 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
|
|
96
|
-
the following coverage
|
|
97
|
-
|
|
98
|
-
|
|
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
|
-
|
|
117
|
-
treats a `kind: subroutine` action as a name lookup against
|
|
118
|
-
nine of the thirteen names map to a no-op that logs a debug
|
|
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