space-data-module-sdk 0.8.19 → 0.8.20

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 (64) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +2 -2
  3. package/docs/assembly.js +190 -0
  4. package/docs/browser-wasmedge-isomorphic.html +6 -1
  5. package/docs/byo-wasm-quickstart.html +6 -1
  6. package/docs/conformance.html +6 -1
  7. package/docs/events-abi.html +6 -1
  8. package/docs/families/analytics.html +7 -2
  9. package/docs/families/attitude.html +7 -2
  10. package/docs/families/behavior.html +7 -2
  11. package/docs/families/breakup.html +7 -2
  12. package/docs/families/conjunction.html +7 -2
  13. package/docs/families/data-source.html +7 -2
  14. package/docs/families/effects.html +7 -2
  15. package/docs/families/environment.html +7 -2
  16. package/docs/families/estimation.html +7 -2
  17. package/docs/families/gnc.html +7 -2
  18. package/docs/families/maneuver.html +7 -2
  19. package/docs/families/obstruction.html +7 -2
  20. package/docs/families/propagator.html +7 -2
  21. package/docs/families/propulsion.html +7 -2
  22. package/docs/families/reentry.html +7 -2
  23. package/docs/families/rf.html +7 -2
  24. package/docs/families/scheduler.html +7 -2
  25. package/docs/families/sensor.html +7 -2
  26. package/docs/families/signature.html +7 -2
  27. package/docs/flatsql-host-contract.html +7 -2
  28. package/docs/flatsql-host-contract.md +2 -2
  29. package/docs/flatsql-streaming-standard.html +6 -1
  30. package/docs/gpu-module-abi.html +6 -1
  31. package/docs/index.html +21 -14
  32. package/docs/isomorphic-pthreads.html +19 -2
  33. package/docs/isomorphic-pthreads.md +59 -1
  34. package/docs/isomorphic-sdn-runtime-plan.html +6 -1
  35. package/docs/language-runtime-matrix.html +6 -1
  36. package/docs/llms.txt +1 -1
  37. package/docs/module-bundle-runtime-plan.html +6 -1
  38. package/docs/module-publication-standard.html +6 -1
  39. package/docs/node-red-default-node-parity.html +6 -1
  40. package/docs/protect-and-sign.html +6 -1
  41. package/docs/protocol-installation.html +6 -1
  42. package/docs/publication-submission.html +6 -1
  43. package/docs/secrets-capability.html +6 -1
  44. package/docs/styles.css +32 -0
  45. package/docs/testing-harness.html +6 -1
  46. package/docs/tri-runtime-parity-gate.html +6 -1
  47. package/docs/tri-runtime-parity.html +6 -1
  48. package/package.json +1 -1
  49. package/src/host/browserModuleHarness.js +39 -35
  50. package/src/host/isomorphicLoader.js +13 -6
  51. package/src/host/wasiShim.js +57 -13
  52. package/src/host/wasiThreadBrowserWorker.mjs +1 -0
  53. package/src/host/wasiThreadHost.js +16 -1
  54. package/src/host/wasiThreadWorker.mjs +2 -1
  55. package/src/host/wasiThreadWorkerRuntime.js +2 -1
  56. package/src/testing/browserModuleHarness.js +2 -0
  57. package/src/testing/buildWasmEdgeRunner.js +147 -4
  58. package/src/testing/docker/wasmedge-parity.Dockerfile +23 -1
  59. package/src/testing/isomorphicHarness.js +5 -0
  60. package/src/testing/native/wasmedge-0.16.4-atomic-wait.patch +111 -0
  61. package/src/testing/native/wasmedge_wasi_threads_runner.c +345 -0
  62. package/src/testing/parityBrowserRunner.js +12 -4
  63. package/src/testing/parityHarness.js +11 -3
  64. package/src/testing/parityLanes.js +29 -5
package/LICENSE CHANGED
@@ -175,7 +175,7 @@
175
175
 
176
176
  END OF TERMS AND CONDITIONS
177
177
 
178
- Copyright 2024 Digital Arsenal, Inc.
178
+ Copyright 2024 Edgesource Corporation
179
179
 
180
180
  Licensed under the Apache License, Version 2.0 (the "License");
181
181
  you may not use this file except in compliance with the License.
package/README.md CHANGED
@@ -828,8 +828,8 @@ no longer permissive: as of `flatsql` **2.0.0** the FlatSQL engine is licensed
828
828
  under the [PolyForm Noncommercial License
829
829
  1.0.0](https://polyformproject.org/licenses/noncommercial/1.0.0/) — source-available
830
830
  and free for any noncommercial purpose, with commercial use requiring a separate
831
- license from DigitalArsenal.io, Inc.
832
- ([tj@digitalarsenal.io](mailto:tj@digitalarsenal.io)). Installing this package
831
+ license from Edgesource Corporation
832
+ ([tj@edgesource.com](mailto:tj@edgesource.com)). Installing this package
833
833
  installs `flatsql`, so a commercial deployment of anything built on the SDK's
834
834
  FlatSQL-backed runtime-host storage needs that license. Every `flatsql` release
835
835
  before 2.0.0 has been withdrawn from npm, so `^2.0.0` is the only resolvable
@@ -0,0 +1,190 @@
1
+ // "Assembly": the site background.
2
+ // Module tiles drift loose at the top of the landing page and settle into a
3
+ // lattice as the reader scrolls; circuit traces then connect them into flows and
4
+ // pulses of data run along the traces. Other pages open already assembled.
5
+ // A 2D canvas, no library. Reduced motion gets one still, assembled frame.
6
+ (function () {
7
+ var canvas = document.getElementById('assembly');
8
+ if (!canvas || !canvas.getContext) return;
9
+ var ctx = canvas.getContext('2d');
10
+ var scrollDriven = document.body.getAttribute('data-assembly') === 'scroll';
11
+ var still = matchMedia('(prefers-reduced-motion: reduce)').matches;
12
+
13
+ var CELL = 46, TILE = 14;
14
+ var tiles = [], chains = [], W = 0, H = 0, dpr = 1;
15
+ var ink = '#1d1d1f', accent = '#0071e3', dark = false;
16
+
17
+ // A fixed seed keeps the pattern the same on every visit and every page.
18
+ var seed;
19
+ function rnd() { seed = (seed * 16807) % 2147483647; return (seed - 1) / 2147483646; }
20
+
21
+ function readTheme() {
22
+ var cs = getComputedStyle(document.documentElement);
23
+ ink = cs.getPropertyValue('--ink').trim() || ink;
24
+ accent = cs.getPropertyValue('--accent').trim() || accent;
25
+ var surface = cs.getPropertyValue('--surface').trim();
26
+ dark = /^#0|^#1/.test(surface);
27
+ }
28
+
29
+ function layout() {
30
+ dpr = Math.min(window.devicePixelRatio || 1, 2);
31
+ W = window.innerWidth; H = window.innerHeight;
32
+ canvas.width = Math.round(W * dpr); canvas.height = Math.round(H * dpr);
33
+ seed = 20260925;
34
+ var cols = Math.ceil(W / CELL) + 1, rows = Math.ceil(H / CELL) + 1;
35
+ var ox = (W - (cols - 1) * CELL) / 2, oy = (H - (rows - 1) * CELL) / 2;
36
+ var slots = {};
37
+ tiles = []; chains = [];
38
+ function slotXY(c, r) { return [ox + c * CELL, oy + r * CELL]; }
39
+ function addTile(c, r, kind) {
40
+ var key = c + ',' + r;
41
+ if (slots[key]) { if (kind === 2) slots[key].kind = 2; return slots[key]; }
42
+ var p = slotXY(c, r);
43
+ var t = {
44
+ gx: p[0], gy: p[1],
45
+ sx: rnd() * W, sy: rnd() * H, sr: (rnd() - 0.5) * 2.4,
46
+ delay: rnd(), phase: rnd() * 6.283, kind: kind
47
+ };
48
+ slots[key] = t; tiles.push(t); return t;
49
+ }
50
+ // Flows: orthogonal traces that run left to right across the lattice.
51
+ var nChains = Math.max(4, Math.round(rows / 2.2));
52
+ for (var k = 0; k < nChains; k++) {
53
+ var c = Math.floor(rnd() * cols * 0.25), r = Math.floor(rnd() * rows);
54
+ var pts = [slotXY(c, r)];
55
+ addTile(c, r, 2);
56
+ while (c < cols - 1) {
57
+ c = Math.min(cols - 1, c + 2 + Math.floor(rnd() * 3));
58
+ pts.push(slotXY(c, r));
59
+ addTile(c, r, rnd() < 0.5 ? 2 : 1);
60
+ if (rnd() < 0.6) {
61
+ r = Math.max(0, Math.min(rows - 1, r + (rnd() < 0.5 ? -1 : 1) * (1 + Math.floor(rnd() * 2))));
62
+ pts.push(slotXY(c, r));
63
+ addTile(c, r, 1);
64
+ }
65
+ }
66
+ var len = 0;
67
+ for (var i = 1; i < pts.length; i++) len += Math.abs(pts[i][0] - pts[i - 1][0]) + Math.abs(pts[i][1] - pts[i - 1][1]);
68
+ chains.push({ pts: pts, len: len, delay: rnd(), speed: 70 + rnd() * 60, offset: rnd() * len });
69
+ }
70
+ // Loose modules fill the rest of the lattice sparsely.
71
+ for (var cc = 0; cc < cols; cc++) for (var rr = 0; rr < rows; rr++) if (rnd() < 0.2) addTile(cc, rr, rnd() < 0.08 ? 2 : 1);
72
+ }
73
+
74
+ function ease(t) { return t <= 0 ? 0 : t >= 1 ? 1 : t * t * (3 - 2 * t); }
75
+ function progress() {
76
+ if (!scrollDriven || still) return 1;
77
+ return Math.min(1, window.scrollY / (window.innerHeight * 1.1));
78
+ }
79
+ function pointAt(ch, d) {
80
+ for (var i = 1; i < ch.pts.length; i++) {
81
+ var a = ch.pts[i - 1], b = ch.pts[i];
82
+ var seg = Math.abs(b[0] - a[0]) + Math.abs(b[1] - a[1]);
83
+ if (d <= seg) { var f = seg ? d / seg : 0; return [a[0] + (b[0] - a[0]) * f, a[1] + (b[1] - a[1]) * f]; }
84
+ d -= seg;
85
+ }
86
+ return ch.pts[ch.pts.length - 1];
87
+ }
88
+
89
+ var shown = 0, last = performance.now(), clock = 0, visible = true;
90
+ function draw(now) {
91
+ var dt = Math.min(0.05, (now - last) / 1000); last = now; clock += dt;
92
+ // Ease toward the scroll target so the lattice glides rather than jumps.
93
+ var goal = progress();
94
+ shown += (goal - shown) * (still ? 1 : 1 - Math.exp(-dt * 5));
95
+ ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
96
+ ctx.clearRect(0, 0, W, H);
97
+
98
+ // Traces draw in once the tiles have mostly settled.
99
+ ctx.lineWidth = 1.5;
100
+ ctx.lineCap = 'round'; ctx.lineJoin = 'round';
101
+ ctx.strokeStyle = accent;
102
+ for (var k = 0; k < chains.length; k++) {
103
+ var ch = chains[k];
104
+ var reveal = ease((shown - 0.55 - ch.delay * 0.25) / 0.2);
105
+ if (reveal <= 0) continue;
106
+ ctx.globalAlpha = dark ? 0.24 : 0.22;
107
+ ctx.beginPath();
108
+ var todo = ch.len * reveal;
109
+ ctx.moveTo(ch.pts[0][0], ch.pts[0][1]);
110
+ for (var i = 1; i < ch.pts.length && todo > 0; i++) {
111
+ var a = ch.pts[i - 1], b = ch.pts[i];
112
+ var seg = Math.abs(b[0] - a[0]) + Math.abs(b[1] - a[1]);
113
+ var f = Math.min(1, todo / seg);
114
+ ctx.lineTo(a[0] + (b[0] - a[0]) * f, a[1] + (b[1] - a[1]) * f);
115
+ todo -= seg;
116
+ }
117
+ ctx.stroke();
118
+ // A pulse of data runs the length of each finished trace.
119
+ if (reveal >= 1 && !still) {
120
+ var d = (ch.offset + clock * ch.speed) % (ch.len + 160);
121
+ for (var s = 0; s < 6; s++) {
122
+ var dd = d - s * 7;
123
+ if (dd < 0 || dd > ch.len) continue;
124
+ var p = pointAt(ch, dd);
125
+ ctx.globalAlpha = (dark ? 0.9 : 0.75) * (1 - s / 6);
126
+ ctx.fillStyle = accent;
127
+ ctx.beginPath(); ctx.arc(p[0], p[1], 2.6 - s * 0.3, 0, 6.283); ctx.fill();
128
+ }
129
+ }
130
+ }
131
+
132
+ for (var t = 0; t < tiles.length; t++) {
133
+ var tl = tiles[t];
134
+ var e = ease((shown - tl.delay * 0.35) / 0.55);
135
+ var wob = still ? 0 : (1 - e);
136
+ var x = tl.sx + (tl.gx - tl.sx) * e + Math.sin(clock * 0.4 + tl.phase) * 10 * wob;
137
+ var y = tl.sy + (tl.gy - tl.sy) * e + Math.cos(clock * 0.33 + tl.phase) * 10 * wob;
138
+ var rot = tl.sr * (1 - e) + (still ? 0 : Math.sin(clock * 0.2 + tl.phase) * 0.2 * wob);
139
+ ctx.save();
140
+ ctx.translate(x, y); ctx.rotate(rot);
141
+ if (tl.kind === 2) {
142
+ ctx.globalAlpha = dark ? 0.55 : 0.4;
143
+ ctx.fillStyle = accent;
144
+ } else {
145
+ ctx.globalAlpha = dark ? 0.12 : 0.08;
146
+ ctx.fillStyle = ink;
147
+ }
148
+ var h = TILE / 2;
149
+ ctx.beginPath();
150
+ if (ctx.roundRect) ctx.roundRect(-h, -h, TILE, TILE, 3.5); else ctx.rect(-h, -h, TILE, TILE);
151
+ ctx.fill();
152
+ ctx.restore();
153
+ }
154
+ ctx.globalAlpha = 1;
155
+ if (!still && visible) requestAnimationFrame(draw);
156
+ }
157
+
158
+ readTheme();
159
+ layout();
160
+ shown = progress();
161
+ var timer;
162
+ window.addEventListener('resize', function () {
163
+ clearTimeout(timer);
164
+ timer = setTimeout(function () { layout(); if (still) draw(performance.now()); }, 150);
165
+ });
166
+ matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function () { readTheme(); if (still) draw(performance.now()); });
167
+ window.addEventListener('sdn-theme', function () { readTheme(); if (still) draw(performance.now()); });
168
+ document.addEventListener('visibilitychange', function () {
169
+ visible = !document.hidden;
170
+ if (visible && !still) { last = performance.now(); requestAnimationFrame(draw); }
171
+ });
172
+ requestAnimationFrame(draw);
173
+ })();
174
+
175
+ // Light / dark switcher. Follows the system until the reader picks.
176
+ (function () {
177
+ function current() {
178
+ var t = document.documentElement.getAttribute('data-theme');
179
+ if (t === 'light' || t === 'dark') return t;
180
+ return matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
181
+ }
182
+ document.querySelectorAll('.theme-toggle').forEach(function (btn) {
183
+ btn.addEventListener('click', function () {
184
+ var next = current() === 'dark' ? 'light' : 'dark';
185
+ document.documentElement.setAttribute('data-theme', next);
186
+ try { localStorage.setItem('sdn-theme', next); } catch (e) {}
187
+ window.dispatchEvent(new Event('sdn-theme'));
188
+ });
189
+ });
190
+ })();
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Use this profile when you want one compiled .wasm artifact that can be loaded" />
7
8
  <title>Browser / WasmEdge isomorphism — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="./styles.css" />
10
+ <script src="./assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="./conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="./index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="./index.html"><span>Module types</span></a></li>
31
35
  <li><a href="./byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="./conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="./protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -256,6 +260,7 @@
256
260
  <footer class="site-footer">
257
261
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
258
262
  source in <code>docs/</code>; edit the Markdown, never the HTML.
263
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
259
264
  </footer>
260
265
  </body>
261
266
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Bring your own WebAssembly. This is the vendor path: you compile your existing" />
7
8
  <title>BYO-wasm quickstart — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="./styles.css" />
10
+ <script src="./assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="./conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="./index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="./index.html"><span>Module types</span></a></li>
31
35
  <li><a href="./byo-wasm-quickstart.html" aria-current="page"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="./conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="./protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -221,6 +225,7 @@ space-data-module parity \
221
225
  <footer class="site-footer">
222
226
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
223
227
  source in <code>docs/</code>; edit the Markdown, never the HTML.
228
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
224
229
  </footer>
225
230
  </body>
226
231
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: v1 — W1.4 of graph/tasks/official-harness-shapes-program.md," />
7
8
  <title>Conformance kit — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="./styles.css" />
10
+ <script src="./assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="./conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="./index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="./index.html"><span>Module types</span></a></li>
31
35
  <li><a href="./byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="./conformance.html" aria-current="page"><span>Conformance kit</span></a></li>
33
37
  <li><a href="./protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -157,6 +161,7 @@ space-data-module conformance estimation --self-test # planted failures</code
157
161
  <footer class="site-footer">
158
162
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
159
163
  source in <code>docs/</code>; edit the Markdown, never the HTML.
164
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
160
165
  </footer>
161
166
  </body>
162
167
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: EXPERIMENTAL. The schema, the generated header, the drift gate and" />
7
8
  <title>Event locator ABI — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="./styles.css" />
10
+ <script src="./assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="./conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="./index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="./index.html"><span>Module types</span></a></li>
31
35
  <li><a href="./byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="./conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="./protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -308,6 +312,7 @@ node scripts/check-events-abi.mjs # the drift gate, wired into npm test</co
308
312
  <footer class="site-footer">
309
313
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
310
314
  source in <code>docs/</code>; edit the Markdown, never the HTML.
315
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
311
316
  </footer>
312
317
  </body>
313
318
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: EXPERIMENTAL. One sub-harness of this family — event location —" />
7
8
  <title>Analytics — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="../styles.css" />
10
+ <script src="../assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="../conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="../index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="../index.html"><span>Module types</span></a></li>
31
35
  <li><a href="../byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="../conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="../protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -82,7 +86,7 @@
82
86
  </ul>
83
87
  </nav>
84
88
  <main class="doc" id="main">
85
- <p class="breadcrumb"><a href="../index.html">Harness families</a> / Estimation, data and logic</p>
89
+ <p class="breadcrumb"><a href="../index.html">Module types</a> / Estimation, data and logic</p>
86
90
  <h1>Analytics</h1>
87
91
  <p class="doc-meta"><span class="pill pill-experimental">experimental</span><span>Experimental. The shape exists in wave-2 form and is expected to change. Do not ship a commercial module against it yet.</span></p>
88
92
  <p><strong>Status: EXPERIMENTAL.</strong> One sub-harness of this family — <strong>event location</strong> — has a ratified <code>.fbs</code> source, a generated header with a drift gate, named error codes, a shared runner and a measured tri-runtime parity envelope. It has no conformance kit and no reference module, so it is not <code>Shipped</code> and a commercial module should not be sold against it. The rest of the family (coverage quality, revisit statistics, availability, link-margin distributions) remains <strong>Planned</strong> and this page states its scope and nothing more.</p>
@@ -173,6 +177,7 @@
173
177
  <footer class="site-footer">
174
178
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
175
179
  source in <code>docs/</code>; edit the Markdown, never the HTML.
180
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
176
181
  </footer>
177
182
  </body>
178
183
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: PLANNED. This family is a ratified entry in the harness-family" />
7
8
  <title>Attitude — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="../styles.css" />
10
+ <script src="../assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="../conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="../index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="../index.html"><span>Module types</span></a></li>
31
35
  <li><a href="../byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="../conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="../protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -82,7 +86,7 @@
82
86
  </ul>
83
87
  </nav>
84
88
  <main class="doc" id="main">
85
- <p class="breadcrumb"><a href="../index.html">Harness families</a> / Dynamics</p>
89
+ <p class="breadcrumb"><a href="../index.html">Module types</a> / Dynamics</p>
86
90
  <h1>Attitude</h1>
87
91
  <p class="doc-meta"><span class="pill pill-planned">planned</span><span>Planned. This family is a ratified entry in the harness-family taxonomy; its individual shape has not been ratified and nothing is implemented.</span></p>
88
92
  <p><strong>Status: PLANNED.</strong> This family is a ratified entry in the harness-family taxonomy. Its individual shape has not been ratified, and nothing is implemented. This page states scope and status; it is not a contract, and it does not imply parity with the Designed tier.</p>
@@ -152,6 +156,7 @@
152
156
  <footer class="site-footer">
153
157
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
154
158
  source in <code>docs/</code>; edit the Markdown, never the HTML.
159
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
155
160
  </footer>
156
161
  </body>
157
162
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: PLANNED. This family is a ratified entry in the harness-family" />
7
8
  <title>Behavior — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="../styles.css" />
10
+ <script src="../assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="../conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="../index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="../index.html"><span>Module types</span></a></li>
31
35
  <li><a href="../byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="../conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="../protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -82,7 +86,7 @@
82
86
  </ul>
83
87
  </nav>
84
88
  <main class="doc" id="main">
85
- <p class="breadcrumb"><a href="../index.html">Harness families</a> / Estimation, data and logic</p>
89
+ <p class="breadcrumb"><a href="../index.html">Module types</a> / Estimation, data and logic</p>
86
90
  <h1>Behavior</h1>
87
91
  <p class="doc-meta"><span class="pill pill-planned">planned</span><span>Planned. This family is a ratified entry in the harness-family taxonomy; its individual shape has not been ratified and nothing is implemented.</span></p>
88
92
  <p><strong>Status: PLANNED.</strong> This family is a ratified entry in the harness-family taxonomy. Its individual shape has not been ratified, and nothing is implemented. This page states scope and status; it is not a contract, and it does not imply parity with the Designed tier.</p>
@@ -152,6 +156,7 @@
152
156
  <footer class="site-footer">
153
157
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
154
158
  source in <code>docs/</code>; edit the Markdown, never the HTML.
159
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
155
160
  </footer>
156
161
  </body>
157
162
  </html>
@@ -2,10 +2,12 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
+ <script>try{var t=localStorage.getItem("sdn-theme");if(t==="light"||t==="dark")document.documentElement.setAttribute("data-theme",t)}catch(e){}</script>
5
6
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
7
  <meta name="description" content="Status: PLANNED. This family is a ratified entry in the harness-family" />
7
8
  <title>Breakup — Space Data Module SDK</title>
8
9
  <link rel="stylesheet" href="../styles.css" />
10
+ <script src="../assembly.js" defer></script>
9
11
  <!-- SDN_CONSUMER_ASSETS_START -->
10
12
  <link rel="stylesheet" href="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.c3f68d1cfd88478f10d836a5e829d1dfc6a10157972cf0f7d4d319d0636f2cc4.css" integrity="sha384-fICuhN4I9xqOK1F5vGGzl26opuO+xQIvTZXMSV76lWTBiQ6AfzztMGLLDw8yRT8i" crossorigin="anonymous">
11
13
  <script defer src="https://static.spacedatanetwork.org/assets/hd-wallet-ui/2.0.28/sdn-wallet-public-client.f611e7e151a3b5c38384272f8894a4c6634f0a29bf925b0e02e0e27f8db0bfff.js" integrity="sha384-R+QqsKoWJIS7iWrtPmgJ49DVnb1hSGjZokupbLInJd1PLp8RwQhtF/hnaerc33ci" crossorigin="anonymous" data-sdn-wallet-public-client="v1"></script>
@@ -13,6 +15,7 @@
13
15
  <!-- SDN_CONSUMER_ASSETS_END -->
14
16
  </head>
15
17
  <body>
18
+ <canvas id="assembly" aria-hidden="true"></canvas>
16
19
  <a class="skip-link" href="#main">Skip to content</a>
17
20
  <sdn-stack-nav active="module-sdk"></sdn-stack-nav>
18
21
  <header class="site-header">
@@ -22,12 +25,13 @@
22
25
  <a href="../conformance.html">Conformance</a>
23
26
  <a href="https://github.com/DigitalArsenal/space-data-module-sdk">GitHub</a>
24
27
  <a class="stack-button" href="#stack">Stack</a>
28
+ <button class="theme-toggle" type="button" aria-label="Switch between light and dark theme" title="Light or dark theme"><svg class="sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg><svg class="moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 14.5A8 8 0 0 1 9.5 4a8 8 0 1 0 10.5 10.5z"/></svg></button>
25
29
  </nav>
26
30
  </header>
27
31
  <div class="shell">
28
32
  <nav class="sidebar" id="sidebar" aria-label="Documentation">
29
33
  <h2>Start here</h2><ul>
30
- <li><a href="../index.html"><span>Harness family matrix</span></a></li>
34
+ <li><a href="../index.html"><span>Module types</span></a></li>
31
35
  <li><a href="../byo-wasm-quickstart.html"><span>BYO-wasm quickstart</span></a></li>
32
36
  <li><a href="../conformance.html"><span>Conformance kit</span></a></li>
33
37
  <li><a href="../protect-and-sign.html"><span>Protect and sign</span></a></li>
@@ -82,7 +86,7 @@
82
86
  </ul>
83
87
  </nav>
84
88
  <main class="doc" id="main">
85
- <p class="breadcrumb"><a href="../index.html">Harness families</a> / Event physics</p>
89
+ <p class="breadcrumb"><a href="../index.html">Module types</a> / Event physics</p>
86
90
  <h1>Breakup</h1>
87
91
  <p class="doc-meta"><span class="pill pill-planned">planned</span><span>Planned. This family is a ratified entry in the harness-family taxonomy; its individual shape has not been ratified and nothing is implemented.</span></p>
88
92
  <p><strong>Status: PLANNED.</strong> This family is a ratified entry in the harness-family taxonomy. Its individual shape has not been ratified, and nothing is implemented. This page states scope and status; it is not a contract, and it does not imply parity with the Designed tier.</p>
@@ -152,6 +156,7 @@
152
156
  <footer class="site-footer">
153
157
  Space Data Module SDK — Apache-2.0. Every ABI page renders a Markdown
154
158
  source in <code>docs/</code>; edit the Markdown, never the HTML.
159
+ Contact <a href="mailto:tj@edgesource.com">tj@edgesource.com</a>.
155
160
  </footer>
156
161
  </body>
157
162
  </html>