Surface Ledger
Neutral photo records of finished surfaces. A fixed five-photo phone capture set (VARS-001) feeds a photometric normal solver and a Poisson depth integrator, with no dedicated scanning rig.
Twenty-three years in industrial and commercial coatings, thirteen of them in the oilfield and chemical refineries. Then an injury, then eleven months at a keyboard. One developer. Edmonton. The rule came with me from the trade: never stamp a claim above what it earned. I build compression, inspection, and inference infrastructure in Rust, and I publish the benchmarks with the commands to re-run them.
Three live sites from one workspace. No external runtime, no cloud lock-in, no float drift on the simulation path.
Neutral photo records of finished surfaces. A fixed five-photo phone capture set (VARS-001) feeds a photometric normal solver and a Poisson depth integrator, with no dedicated scanning rig.
One binary. 606,521 lines of Rust across 2,700 files and 306 WebGPU shaders. Runs a 120Hz integer clock, local GBNF-masked model inference, and a 119,625-star HYG catalog viewer at 44.45M stars/sec.
The unsent. Write a letter you will never send. It burns on a timer you choose and is stored nowhere: no account, no server copy, nothing to subpoena.
Raw output from tokei on F:\v3. 4,031 files. 747,834 lines of code. 1,036,245 total lines.
| Language | Files | Code | Comments | Blanks | Lines |
|---|---|---|---|---|---|
| Rust | 2,700 | 606,521 | 31,253 | 70,542 | 708,316 |
| WebGPU Shader Language (WGSL) | 306 | 21,025 | 3,328 | 3,934 | 28,287 |
| HTML (incl. inline CSS/JS) | 69 | 27,788 | 1,424 | 1,414 | 30,626 |
| GDScript & GDShader | 172 | 16,339 | 2,058 | 4,282 | 22,679 |
| JavaScript / TypeScript / TSX | 106 | 30,220 | 4,071 | 3,151 | 37,442 |
| Python / PowerShell / Kotlin / C / C++ | 76 | 10,504 | 908 | 1,641 | 13,053 |
| JSON / TOML / RON / SVG / Markdown / Text | 602 | 35,437 | 145,120 | 15,285 | 195,842 |
| Total (PS F:\v3> tokei) | 4,031 | 747,834 | 188,162 | 100,249 | 1,036,245 |
Authored solo under 2748684 Alberta Ltd. Every claim is tied to a test suite or benchmark binary in the tree.
| Record | Publication & Scope | Test Receipt | Zenodo Link |
|---|---|---|---|
| Record 23335557 2026-10-13 |
One Lattice, Three Addresses: State Unranking in Sanskrit Prosody and Zero-Allocation Integer Systems
The three table-free metre-indexing schemes of Sanskrit prosody (binary, binomial, Fibonacci) stated as ranking/unranking algorithms, proved, and machine-checked exhaustively. Extended to balanced ternary; binomials built division-free by add-only prefix scans. No new mathematics claimed. |
16 Exhaustive Tests no_std · Alloc-Free |
10.5281/zenodo.23335557 ↗ |
| Record 23042536 2026-09-29 |
Safety by Inseparability: Toward Architectures Where Alignment Cannot Be Removed (v2)
An out-of-band validator measures how far residual-stream activations drift from an SVD-derived prompt manifold and drops the KV cache when steering is detected. Tested on Qwen2.5-7B-Instruct. |
Qwen2.5-7B <141 µs Verify |
10.5281/zenodo.23042536 ↗ |
| Record 22020676 2026-08-30 |
Little Nistam and The Lattice of Harmony
Benchmarks on the GiellaLT Plains Cree corpus proving FST grammar-constrained decoding (ZPSR) cuts token bloat by 69.6% (3.29x compression) over unconstrained BPE tokenizers. |
66/66 Envelope 101/101 S13 Tests |
10.5281/zenodo.22020676 ↗ |
| Record 22124141 2026-08-27 |
The Architecture of Equilibrium (v4)
Bounded relaxation operator and balanced-ternary lattice isomorphisms under a zero-heap mandate. Compute materializes on consumption and passivates to zero when idle. |
4/4 Decay Proofs 848/848 Suite Green |
10.5281/zenodo.22124141 ↗ |
| Record 22124140 2026-08-25 |
PaTeX: Pentaract 5D Monospace Geometric Typesetting (v2)
Lossless mapping between a 5D discrete coordinate lattice and 71×48 monospace ASCII surfaces. Includes 0.82ns 256-bit occupancy gating and 2:1 dimetric rasterization. |
11.8 µs Raster 0.82 ns Early-Out |
10.5281/zenodo.22124140 ↗ |
Everything here ran on real glass. Direct GPU recordings, surface normal reconstructions, and live Base-243 cell inspection.
Recorded straight off the local Rust and WebGPU presentation loop.
Turning a job-site phone capture set into a depth map and a hashed inspection receipt.
Live 64-byte cache-line state grid running locally in your browser.
Notes on deterministic Rust, protective coatings QA, and static web deployment. No marketing funnel. Just what I built and how it works.
Surfaces lie. Ninety percent of a coating job is prep work. If the boundary leaks, the steel underneath rusts. Unbounded heap allocations and float drift do the exact same thing to code.
IEEE-754 floats round differently across chips and compiler flags. I use integer Permyriads (0..=10,000) and MilliUnits so every machine hashes the exact same state on every tick.
I know what "it looks rough" means in mils, and what it means in API 581. Surface Ledger pulls surface normals and Poisson depth from a fixed phone capture set and hashes the receipt.
No npm install, no bundler to misconfigure, no node_modules to get a CVE next Tuesday. One plain HTML file loads before a framework finishes parsing its bundle.