Clean up rebranding drift in docs, agent configs, and source comments
Fix stale references left over from the alknet-typedef → alktype migration: - .opencode/agents/: replace @alkdev/alknet constraints (tokio, crypto, feature flags, anyhow/thiserror) with alktype-accurate ones (sync, AlkTypeError, WASM-clean); fix @alkimiadev → @alkdev org name; remove nonexistent AGENTS.md ref; replace alknet-http/alknet-agent spec examples - docs/sdd_process.md: fix wrong package name (@alkdev/storage → @alkdev/alktype) - docs/architecture/: rewrite dangling /workspace/ and docs/research/ paths as @alkdev/alknet: cross-repo references with explanatory notes; fix @alkimiadev → @alkdev; fix 'not yet used by any alknet crate' stale context - src/ + tests/: correct '17 AlkType kinds' → '19' in doc comments (enum has 19 variants; pre-existing count error); fix dangling /workspace/ path in poc_roundtrip.rs
This commit is contained in:
1 parent
5e268e8f47
commit
6d6142978a
24 files changed
+128
-108
No files matched your search
@@ -9,7 +9,7 @@ Three threads in the codebase converge on the same pattern: a JSON Schema
|
||||
describes the shape of binary data, and the binary data is the struct's
|
||||
bytes at computed offsets.
|
||||
|
||||
1. **typedef.ts** (`/workspace/@alkdev/typebox/example/typedef/typedef.ts`,
|
||||
1. **typedef.ts** (`@alkdev/alknet: typebox/example/typedef/typedef.ts`,
|
||||
619 lines) defines custom TypeBox schema kinds (`TFloat32`, `TStruct`,
|
||||
`TUnion`, etc.) that carry binary layout semantics. These are registered
|
||||
via `TypeRegistry.Set` with custom validators.
|
||||
@@ -34,17 +34,17 @@ generic.
|
||||
|
||||
Two prior attempts built their own jsonschema engines — the fatal flaw:
|
||||
|
||||
- **typebox-rs** (`/workspace/@alkimiadev/typebox-rs/`, ~8,400 lines):
|
||||
- **typebox-rs** (`@alkdev/alknet: typebox-rs/`, ~8,400 lines):
|
||||
a full 26-variant `SchemaKind` enum, a custom `Value` type with typed
|
||||
arrays, and a 912-line hand-written validator.
|
||||
- **the @alkimiadev/alktype prototype** (`/workspace/@alkimiadev/alktype/`,
|
||||
- **the @alkdev/alktype prototype** (`@alkdev/alknet: alktype-prototype/`,
|
||||
~5,600 lines): a handler-registry pattern that also implements its own
|
||||
validation for each type. (Not to be confused with this crate, which
|
||||
reuses the name but is a fresh implementation backed by the `jsonschema`
|
||||
crate rather than a hand-rolled engine.)
|
||||
|
||||
The `jsonschema` crate (v0.46.5, Draft 2020-12) is already in the
|
||||
workspace at `/workspace/jsonschema/`. It handles validation with custom
|
||||
workspace at `@alkdev/alknet: jsonschema/`. It handles validation with custom
|
||||
keyword support — the novel code is the offset computation, not the
|
||||
validation.
|
||||
|
||||
@@ -103,7 +103,7 @@ be added as a feature gate later — the engine's core (offset computation,
|
||||
### Positive
|
||||
|
||||
- **Eliminates ~14,000 lines of hand-rolled schema engines.** typebox-rs
|
||||
and the @alkimiadev/alktype prototype are replaced by `jsonschema` + an
|
||||
and the @alkdev/alktype prototype are replaced by `jsonschema` + an
|
||||
offset map + ~50 lines of custom keyword implementations. The codebase
|
||||
drops from "a port of TypeBox" to "jsonschema + an offset map."
|
||||
- **One schema, three uses.** The same JSON Schema validates, computes
|
||||
@@ -129,7 +129,7 @@ be added as a feature gate later — the engine's core (offset computation,
|
||||
### Negative
|
||||
|
||||
- **New dependency on `jsonschema`.** The crate is already in the
|
||||
workspace but not yet used by any alknet crate. This is the first
|
||||
workspace but not yet used by any other crate. This is the first
|
||||
consumer.
|
||||
- **`serde_json` with `preserve_order` is required.** Field order is
|
||||
load-bearing for binary layouts. The `preserve_order` feature adds a
|
||||
@@ -159,15 +159,20 @@ be added as a feature gate later — the engine's core (offset computation,
|
||||
|
||||
## References
|
||||
|
||||
- `docs/research/alknet-typedef/findings.md` — POC results (26 tests
|
||||
passing, two layout modes, TUnion dispatch, endianness)
|
||||
- `docs/research/call-channels-unification/findings.md` §"alknet-typedef:
|
||||
JSON Schema as the binary struct engine" — the origin of this research
|
||||
thread
|
||||
- `/workspace/@alkdev/typebox/example/typedef/typedef.ts` — the TypeBox
|
||||
- `@alkdev/alknet: docs/research/alknet-typedef/findings.md` — POC results
|
||||
(26 tests passing, two layout modes, TUnion dispatch, endianness)
|
||||
- `@alkdev/alknet: docs/research/call-channels-unification/findings.md`
|
||||
§"alknet-typedef: JSON Schema as the binary struct engine" — the origin
|
||||
of this research thread
|
||||
- `@alkdev/alknet: typebox/example/typedef/typedef.ts` — the TypeBox
|
||||
schema kinds (619 lines)
|
||||
- `/workspace/jsonschema/` — the jsonschema crate (v0.46.5, Draft 2020-12)
|
||||
- `/workspace/alknet-typedef-poc/` — the POC code (disposable)
|
||||
- `@alkdev/alknet: jsonschema/` — the jsonschema crate (v0.46.5, Draft
|
||||
2020-12)
|
||||
- `@alkdev/alknet: alknet-typedef-poc/` — the POC code (disposable)
|
||||
|
||||
> Cross-repo references (`@alkdev/alknet: ...`) point to the parent
|
||||
> monorepo where this crate originated. The artifacts are preserved there
|
||||
> as historical context; they are not part of this standalone repo.
|
||||
- [ADR-002](002-two-layout-modes-packed-vs-aligned.md) — the two layout
|
||||
modes decision
|
||||
- [ADR-003](003-schema-annotations.md) — schema annotation shapes
|
||||
|
||||
@@ -129,8 +129,9 @@ opt-in via the `encoding` annotation (see ADR-003).
|
||||
|
||||
## References
|
||||
|
||||
- `docs/research/alknet-typedef/findings.md` §"POC Results" — POC 1
|
||||
(aligned OffsetMap) and POC 2 (packed LayoutBuilder/SequentialReader)
|
||||
- `@alkdev/alknet: docs/research/alknet-typedef/findings.md` §"POC Results"
|
||||
— POC 1 (aligned OffsetMap) and POC 2 (packed
|
||||
LayoutBuilder/SequentialReader)
|
||||
- [ADR-001](001-alktype-purpose-scope-jsonschema-engine.md) —
|
||||
purpose and scope
|
||||
- [ADR-003](003-schema-annotations.md) — schema annotations including
|
||||
|
||||
@@ -251,8 +251,8 @@ event types). Both work.
|
||||
|
||||
## References
|
||||
|
||||
- `docs/research/alknet-typedef/findings.md` §"Open Questions" — the
|
||||
annotation shape questions this ADR resolves
|
||||
- `@alkdev/alknet: docs/research/alknet-typedef/findings.md` §"Open
|
||||
Questions" — the annotation shape questions this ADR resolves
|
||||
- [ADR-001](001-alktype-purpose-scope-jsonschema-engine.md) —
|
||||
purpose and scope
|
||||
- [ADR-002](002-two-layout-modes-packed-vs-aligned.md) — the two layout
|
||||
|
||||
@@ -148,8 +148,8 @@ you exactly which field failed and why.
|
||||
|
||||
## References
|
||||
|
||||
- `docs/research/alknet-typedef/findings.md` §"Open Questions" — error
|
||||
handling strategy question (OQ 8)
|
||||
- `@alkdev/alknet: docs/research/alknet-typedef/findings.md` §"Open
|
||||
Questions" — error handling strategy question (OQ 8)
|
||||
- [ADR-001](001-alktype-purpose-scope-jsonschema-engine.md) —
|
||||
purpose and scope
|
||||
- [ADR-002](002-two-layout-modes-packed-vs-aligned.md) — the two layout
|
||||
|
||||
@@ -104,10 +104,11 @@ The engine now has **19** first-class kinds (17 + Int64 + Uint64).
|
||||
|
||||
## References
|
||||
|
||||
- `docs/research/call-channels-unification/findings.md` §"russh-sftp" —
|
||||
the SFTP schema with `"offset": { "AlkType:Uint64": true }`
|
||||
- `docs/research/alknet-typedef/findings.md` §"POC 1" — the POC included
|
||||
u64 read/write
|
||||
- `@alkdev/alknet: docs/research/call-channels-unification/findings.md`
|
||||
§"russh-sftp" — the SFTP schema with
|
||||
`"offset": { "AlkType:Uint64": true }`
|
||||
- `@alkdev/alknet: docs/research/alknet-typedef/findings.md` §"POC 1" —
|
||||
the POC included u64 read/write
|
||||
- [ADR-001](001-alktype-purpose-scope-jsonschema-engine.md) —
|
||||
purpose and scope (the kind set)
|
||||
- [ADR-003](003-schema-annotations.md) — schema annotations
|
||||
|
||||
Reference in new issue
Block a user