Commit Graph
98 Commits
Author SHA1 Message Date
zeekayandHanzo Dev f1be1cf82f docs(lux-node): serialization is ZAP zero-copy wire, not protobuf
The flagship node reference listed Serialization as 'Protocol Buffers' only and
luxfi/codec as 'Binary codec and serialization' — both stale post codec-kill.
Every tx/block/VM-transport message is now native ZAP (struct = wire, no
reflection); luxfi/codec remains only as the leaf byte-packer + Warp codec.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-14 17:40:16 -07:00
zeekay e68e526063 ci(docker): correct pull-access comment (ghcr-lux-docs secret, not public) 2026-06-27 17:31:48 -07:00
zeekay eeeeb3f171 ci(docker): move to lux-docs org pool + ghcr.io/lux-docs/network
Repo moved lux-apps/lux-docs -> lux-docs/network. Build on the org-level
lux-docs-build ARC pool (github.com/lux-docs); image now ghcr.io/lux-docs/network
to match the repo path. Same-org GITHUB_TOKEN push, no cross-org PAT.
2026-06-27 17:23:57 -07:00
zeekay b5ebcbaa36 docs(ci): correct pull-model comment — private pkg via ghcr-secret [skip ci]
No REST API exists to flip GHCR container-package visibility, and the
package defaults to private on first publish. The cluster pulls it via the
existing lux-ns ghcr-secret imagePullSecret (verified). Comment-only fix;
[skip ci] since the functional workflow change already built in fd127a9.
2026-06-27 17:08:40 -07:00
zeekay fd127a9b7c ci: push ghcr.io/lux-apps/lux-docs via native GITHUB_TOKEN
Image path now matches the repo (lux-apps/lux-docs), so the build pushes
same-org with the workflow's GITHUB_TOKEN (packages: write) instead of the
cross-org GHCR_LUXFI_TOKEN PAT. Package will be made public to mirror the
old luxfi/lux-docs pull model. runs-on: lux-apps-build unchanged.
2026-06-27 17:02:56 -07:00
zeekay f30f9431df docs: align cc/attestation refs to luxfi/cc v0.2.0 (6 production vendors)
- architecture.mdx, wallet/security.mdx: v0.1.0 -> v0.2.0; note the six
  production CPU/GPU vendors (SEV-SNP, TDX, SGX, nvtrust, Nitro, ARM CCA)
- confidential-compute.mdx: fix Nitro Vendor string aws.nitro -> aws.nitro.enclaves
  (matches attest/nitro.go nitroVendor)

Verified against luxfi/[email protected] attest/{doc.go,verifier.go,*.go}: six Kinds,
one self-registering registry, fail-closed Dispatch.
2026-06-27 15:43:40 -07:00
zeekay 8b26613ade ci: push ghcr.io/luxfi/lux-docs via luxfi GHCR_LUXFI_TOKEN (cross-org)
lux-apps GITHUB_TOKEN cannot write the luxfi-owned package (cross-org
'installation does not exist'). Authenticate the GHCR login with a luxfi
write:packages token (user hanzo-dev), KMS-sourced from
kms-build/ghcr-luxfi-push and set as the GHCR_LUXFI_TOKEN repo secret.
2026-06-27 15:03:17 -07:00
zeekay a6000d3784 ci: build on lux-apps-build ARC pool (repo moved luxfi -> lux-apps)
The docs repo now lives under the lux-apps org; the luxfi-bound
lux-build runner scale set no longer serves it (ARC routes by org, not
by labels). Point runs-on at the new lux-apps-build pool
(gha-runner-scale-set on arc-gha-rs-controller, lux-k8s/arc-system,
githubConfigUrl github.com/lux-apps) and refresh the stale comment.
2026-06-27 14:55:37 -07:00
zeekay 4ddaa6f911 docs(cc): correct attestation matrix to released v0.2.0 — 6 live vendors, one registry
The confidential-compute page was written mid-synthesis and documented cc as
3 Kinds (2 live + TDX stub). Verified against cc main v0.2.0 (0e55918): all six
Kinds are real verifiers — AMD SEV-SNP, Intel TDX (real DCAP v4), Intel SGX
(pure-Go DCAP), NVIDIA nvtrust (SPDM+RIM), ARM CCA (RATS CBOR/COSE), AWS Nitro
(COSE_Sign1). Dispatch is one registry (init() self-registration, no switch).
Updated vendor matrix, report fields, topology tree, custody card. next build green (460 pages).
2026-06-27 14:42:51 -07:00
zeekay e41ef79c47 docs: update consensus + attestation to released PQ architecture
Bring the user-facing docs in line with the released, semver-tagged
post-quantum consensus + confidential-compute architecture, cross-checked
against the actual code/tags.

Consensus finality (consensus v1.26.0):
- Quasar finality is the typed compact-certificate envelope (ConsensusCert),
  not the old "triple consensus" model. Four evidence kinds (Beam BLS / Pulsar
  M-LWE / Corona R-LWE / P3Q rollup), orthogonal LegKind x EvidenceMode axes,
  KeyEra (one group key per era, value-not-place), and the four operator
  postures (BLS_FAST / HYBRID_PQ_CHECKPOINT / STRICT_QUASAR / RECOVERY_MODE).
- Fix the flat error that Pulsar is Ring-LWE: Pulsar is Module-LWE (FIPS-204
  ML-DSA, luxfi/pulsar); Corona is Ring-LWE (Ringtail, luxfi/corona).
- O(1) compaction (one group sig regardless of committee size).
- Correct PQ precompile slots (0x012202/03/04/05) and stale go.mod pins
  (crypto v1.19.26, pulsar v1.1.5, corona v0.7.9).

New page confidential-compute.mdx (+ nav): the luxfi/cc attestation verifier
(one Verifier, orthogonal Kinds). Honest vendor matrix: AMD SEV-SNP and NVIDIA
nvtrust are production; Intel TDX is a tracked stub. Custody (TEE) vs
confidential-AI (NVIDIA GPU) use cases.

Decomplect (architecture.mdx, wallet/security.mdx): dealerless PQ-threshold core
+ optional luxfi/mpc (CGGMP21/FROST) and luxfi/tee custody extensions; the core
depends on neither.

HSM (hsm/index.mdx, reference/lux-hsm.mdx): document all 16 registered backends
(cloud KMS, PKCS#11/KMIP/YubiHSM/Nitrokey, hardware-wallet secure elements,
air-gap, ML-DSA PQ, TR-31), the FIPS subset, and the cgo-gated backends.

Bridge multi-vendor MPC (mpc/bridge.mdx): layered external-custodian cosigning
(Utila/Fireblocks) as an optional institutional feature over native MPC; secrets
via KMS; permissionless bridge runs on native MPC alone.
2026-06-27 14:31:57 -07:00
zeekay c843087a73 docs: add Go-Live Standard + correct precompile slot map to match code
New go-live.mdx: the canonical developer/agent go-live spec (chains/VMs,
slot map, two-tier finality, VM/engine boundary, GPU byte-identity gate,
value conservation). Replace the retired 0x0600 PQ block (and the bogus
0x0604 QUASAR precompile) with the real 0x012200 block (ML-KEM..HQC +
STARK-FRI) in pq-crypto/index/api/lux-evm. Align the C-nibble chain-slot
table to the genesis registry (D-Chain at C=3, no phantom M-Chain,
Zoo/Hanzo/SPC = sovereign-L1 EVM). Add VM/engine-boundary + go-live-status
notes to dexvm/zkvm/aivm/bridgevm. P3Q = rollup-commit verifier (0x012205);
STARK-FRI = STARK (0x012220) — never conflated.
2026-06-25 14:22:43 -07:00
zeekay 03503ed2a4 fix: prerender every doc topic to its own path; build on lux-build ARC
Two unescaped <tenant> placeholders in regulated/ats.mdx and regulated/bd.mdx
were parsed as JSX and broke the MDX/static-export build. With the build
failing, the shipped image carried only the home hub, so every deep topic
(/architecture, /consensus, /sdk/quickstart, ...) fell through the SPA index
fallback and rendered the hub instead of its own page. Escaping the
placeholders restores the export: generateStaticParams now emits all 458
topic pages (architecture.html, consensus.html, sdk/quickstart.html, ...),
each distinct, which the hanzoai/spa server resolves directly (verified with
the real spa binary locally — /architecture -> 'Architecture | Lux Docs', no
longer the hub).

CI: rebuild on the luxfi self-hosted ARC pool (runs-on: lux-build) and push
ghcr.io/luxfi/lux-docs:latest — the exact image the live deployment pulls.
GitHub-hosted runners are billing-blocked for luxfi. Removed the old
ubuntu-latest deploy.yml (billing-blocked) and the cross-org workflow-sanity
call that luxfi/docs cannot resolve (startup_failure).
2026-06-24 18:20:14 -07:00
zeekay a9737052b2 docs(dex): settlement section → D matches / C settles via 0x9999; link LP-9999 2026-06-20 12:14:37 -07:00
zeekay 7057a40bd6 ci: route to canonical native arcd labels [self-hosted, linux, <arch>]
Replaces non-canonical scale-set / org-prefixed labels with the
existing labels every arcd host registers with. Matches evo for
amd64 and spark for arm64. No new labels added.
2026-06-10 20:19:30 -07:00
zeekay 06c70ef0fb chore: scrub Partner DEX / Liquidity chain IDs from docs/dex/api.mdx
- Replace 'Partner DEX V4 precompile' with 'Lux DEX V4 precompile'
- Replace Liquidity chain IDs (8675309/10/11) with Lux chain IDs
  (96369/96368/96370) in the chain-IDs table and curl-example payloads
2026-06-10 12:25:53 -07:00
zeekay 24cc32a123 docs: networks/chains/validators decomplected — AddValidatorTx universal
Validators validate networks, chains live on networks. Under LP-018
sovereign-L1, AddValidatorTx is the universal add-validator tx.
AddChainValidatorTx is legacy + retained for one release cycle.

- chains/pchain.mdx: new 'Networks, Chains, and Validators' concept
  section laying out network has validators / chains live on networks
  / L1 vs L2 / AddValidatorTx universal; Purpose paragraph reworded;
  fee-schedule rows retitled 'Add network validator' / 'Add network
  delegator'.
- cloud/subnets.mdx: 'Adding Validators' rewritten to call out
  validators validate networks; CLI example switched to
  'lux network addValidator'.
- warp/{index,messages,integration}.mdx: 'source chain validator set'
  → 'source network validator set'; RegisterL1Validator description
  clarifies 'adds a validator to an L1 network'.
- reference/lux-netrunner.mdx: RemoveChainValidator marked legacy.
2026-06-08 16:04:09 -07:00
zooqueenandHanzo Dev 16bc5ea200 ci: native arcd runners — close runner-input gap (evo/spark)
Co-authored-by: Hanzo Dev <[email protected]>
2026-06-07 16:18:07 -07:00
zeekay 126bb01d8f corona → corona total rename — no alias, no wire compat
Per CTO directive: kill any alias, any shim. R-LWE threshold sig is
named Corona across all live code. Forward-only.

Sweep covers Go + TS + Sol + k8s YAML + JSON + LP markdown + skills
+ docs. Skipped: papers/audits/legal/licenses/blog/HISTORY (immutable
historical record).
2026-06-06 13:56:42 -07:00
zeekay d562e9feb5 WIP: session checkpoint 2026-06-05 (codec rip in flight) 2026-06-05 15:33:53 -07:00
zeekay d281e1e18b docs: rename etnaTimestamp → quasarTimestamp in cchain.mdx
Documentation example mirrors the SoT rename in luxfi/upgrade +
luxfi/genesis.
2026-06-02 23:30:50 -07:00
zeekay 459a6d053b ci: pin runner-amd64/arm64/deploy to luxfi pool labels
Was using canonical workflow defaults (hanzoai-scoped labels) which
do not dispatch for luxfi org. Switched to round-robin pool labels:
  runner-amd64: luxfi-amd64  (evo)
  runner-arm64: luxfi-arm64  (spark + dbc, round-robin)
  runner-deploy: lux-deploy-linux-amd64  (DO ARC pool)
2026-06-01 17:41:38 -07:00
zeekay 966b554ec7 merge: chore/runtime-gate-vs-license-tier 2026-06-01 16:33:52 -07:00
zeekay 29dbd574af merge: chore/precompile-corona-cascade-doc 2026-06-01 16:33:52 -07:00
zeekay ed4fd1b052 docs(fhe): correct FHEVM stack (Go primary, not Rust) + drop "NEVER use Zama"
Two corrections:

1. lux-fhevm.mdx claimed the coprocessor was Rust-based with the Zama tfhe
   crate. The actual lux/fhe-coprocessor is pure Go (luxfi/fhe + luxfi/lattice)
   with C++ / GPU (Metal+CUDA) / FPGA acceleration paths. No Rust toolchain;
   no Zama crate. Quick-reference table updated to match reality.

2. lux-fhe-coprocessor.mdx had the negative "NEVER use Zama tfhe-rs" framing
   in the hard requirements + a Related Skills entry pointing at a
   "Rust-based FHEVM coprocessor (alternative architecture using Zama tfhe
   crate)" that doesn't exist. Reframed positively: Lux-native FHE; the
   FHEVM specification points at the same Go primary + C++/GPU/FPGA accel
   stack.
2026-05-29 12:37:24 -07:00
zeekay 65f6376aab chore: brand-neutral cleanup — remove cross-tenant references 2026-05-25 15:13:25 -07:00
zeekay eb10c8ca70 docs: canonical Quasar naming (drop "umbrella" / "composition" qualifiers; add supermassive black-hole framing) 2026-05-19 08:15:19 -07:00
zeekay 5d952127b4 docs(reference): rip Avalanche-upgrade-name framing; fix MDX <URL> bug
lux-upgrade.mdx rewritten as "header-schema compatibility" tool; the
Apricot/Banff/Cortina/Durango/Etna/Fortuna/Granite fork-history table is
deleted because Lux activates every feature at genesis (LP-3641). The
Config-struct field names are retained — they are the on-wire header
schema and cannot be renamed without breaking historical replay.

lux-precompile.mdx, lux-evm.mdx, lux-lps.mdx, cchain.mdx: drop "Durango+",
"Etna activated", "ACP-181" framing. EVM hardfork gates (Shanghai/Cancun)
stay — they gate opcode behavior.

Side fix: 5 reference MDX files (corona/magnetar/proto/pulsar/quasar) had
<https://github.com/luxfi/X> raw-autolink syntax that Turbopack's MDX
parser was rejecting (Unexpected `/` before local name), failing the
docs build entirely. Switched to [text](url) form. Docs site now builds
(453 paths prerendered).
2026-05-19 07:54:07 -07:00
zeekay 96e54df785 docs(reference): add lux-pulsar/quasar/corona/magnetar/proto MDX; remove lux-corona (repo archived); update sidebar (Threshold Signatures (PQ) section) 2026-05-18 22:22:23 -07:00
zeekayandGitHub 3e9222bdf3 docs(licensing): clarify runtime gate vs license tier (#12)
Mirror of upstream luxfi/.github profile changes. Some prior phrasing
conflated "no runtime token check" with "no license", which is wrong:
every Lux artifact is licensed — tiers 1+2 just don't carry a runtime
token gate, while tier 3 does. Adds the canonical 3-row table to
/licensing and cross-references it from /open-core.

No license tier classifications change. No LICENSE files change. No
runtime-check behavior changes. Documentation correction only.
2026-05-16 13:34:17 -07:00
zeekay f909fe29db docs(licensing): clarify runtime gate vs license tier
Mirror of upstream luxfi/.github profile changes. Some prior phrasing
conflated "no runtime token check" with "no license", which is wrong:
every Lux artifact is licensed — tiers 1+2 just don't carry a runtime
token gate, while tier 3 does. Adds the canonical 3-row table to
/licensing and cross-references it from /open-core.

No license tier classifications change. No LICENSE files change. No
runtime-check behavior changes. Documentation correction only.
2026-05-16 13:33:56 -07:00
zeekayandGitHub 8b4dddae2d docs: Corona → Corona cascade in lux-precompile reference (matches luxfi/threshold v1.6.13 + luxfi/corona v0.4.0) (#11) 2026-05-16 10:50:57 -07:00
zeekay f88665b6b1 docs: Corona → Corona cascade in lux-precompile reference (matches luxfi/threshold v1.6.13 + luxfi/corona v0.4.0) 2026-05-16 10:50:45 -07:00
zeekayandGitHub 76486a2d13 Merge pull request #10 from luxfi/chore/cleanup-stale-refs
docs: drop LUX_ env prefix; iam package moved to hanzoai
2026-05-16 02:41:17 -07:00
zeekay a7e2fa94a9 docs: drop LUX_ env prefix; iam package moved to hanzoai
Two stale references cleaned up after recent upstream renames:

- cli reference: luxfi/constants v1.5.4 + luxfi/cli v1.99.23 dropped
  the LUX_ prefix from EnvNodePath/EnvNetrunnerPath/EnvEVMPath/
  EnvPluginsDir. Update the env-var documentation accordingly.

- iam reference: identity provider package moved from luxfi/iam to
  hanzoai/iam as part of the IAM consolidation under hanzoai (per
  CLAUDE.md). Update the github.com path in the IAM overview page.
2026-05-16 02:41:00 -07:00
zeekayandGitHub 57df5f40d3 docs: add LICENSING.md pointer to canonical IP/licensing strategy (#9) 2026-05-15 17:32:42 -07:00
zeekayandGitHub 67d750809a docs: mirror canonical IP/licensing strategy + open-core EE pages (#8)
Mirror github.com/luxfi/.github/profile/{README,OPEN-CORE-EE}.md to the
docs.lux.network source tree so the three-tier IP strategy is
discoverable from docs without needing to know the GitHub URL.

- apps/docs/content/docs/licensing.mdx — mirrors profile README
- apps/docs/content/docs/open-core.mdx — mirrors OPEN-CORE-EE
- meta.json: new "Strategy" sidebar section
- (home)/page.tsx: new "Strategy" tile section for homepage discovery

The .github profile READMEs remain canonical; this is a navigational
mirror. LICENSE file in each repo is the binding artifact.
2026-05-15 17:31:22 -07:00
zeekay 9a1c789b33 canonical: scrub upstream 'Subnet-EVM' / 'subnet-evm' brand language
Lux uses 'Lux EVM' (the canonical luxfi/evm plugin) for both C-Chain
and EVM-based L2 chains. The upstream 'subnet-evm' / 'Subnet-EVM' brand
was a separate codebase we don't use anymore.
2026-05-05 20:26:07 -07:00
zeekay bf7be5f293 canonical: single Lux EVM VM ID = mgj786NP… (CB58 of ids.ID{'e','v','m'})
Removed legacy 'srEXi…' (upstream Subnet-EVM ID) — Lux uses one canonical
EVM VM ID for both C-Chain and EVM-based subnets per luxfi/constants.EVMID.
Plugin filename is mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6 only;
no dual install, no aliases.
2026-05-05 20:16:26 -07:00
zeekay e76e229053 ci: brand matrix (lux/hanzo/zoo/pars) per-org GHCR push
Per ~/.claude/CLAUDE.md per-org rule (NEVER mix orgs):
- Lux  → ghcr.io/luxfi/docs
- Hanzo→ ghcr.io/hanzoai/docs
- Zoo  → ghcr.io/zooai/docs
- Pars → ghcr.io/luxfi/docs-pars (Pars is a Lux subnet)

Adds .env.example{,.hanzo,.zoo,.pars} mirroring lux/build pattern.
Cross-org GHCR pushes require GHCR_PAT secrets configured at the
hanzoai/ and zooai/ org level (existing for luxfi/).
2026-05-05 19:19:22 -07:00
zeekay 6b2e593b3c docs: snow.Context → consensus.Context, frost icon kept 2026-05-05 19:14:45 -07:00
zeekay d0fbce1e67 docs: Warp 2.0 canonical naming in netrunner reference 2026-05-05 17:56:49 -07:00
zeekay 91fd5eccd3 docs: PQ canonical terminology (FIPS 203/204/205 + Pulsar + Lamport) 2026-05-05 17:55:55 -07:00
zeekay ade6e1e0dd docs: final canonical-naming pass (Lux EVM / Pulsar in reference docs)
Replace Coreth/Corona prose with canonical Lux EVM / Pulsar
in lux-cli, lux-plugins, lux-lps reference docs. Subnet-EVM
clarified as legacy alias for sovereign-L1 Lux EVM mode.
2026-05-05 17:49:51 -07:00
zeekay 32673d0355 docs: M/F/Z-Chain canonical naming per LP-134
Update lux-fhe.mdx and chains/thresholdvm.mdx to clarify that the
ThresholdVM substrate powers M-Chain (MPC ceremonies for external-wallet
bridge custody) and F-Chain (FHE compute) per LP-134. Legacy T-Chain
name retained only for teleportvm (LP-6332).
2026-05-05 16:28:57 -07:00
zeekay b3f6888196 docs: scrub Avalabs IP from reference + indexer mdx pages 2026-05-05 16:21:10 -07:00
zeekay 68ba09aefd consensus.mdx: rewrite around Quasar (no Snow/Snowman/Avalanche refs)
Public consensus page now describes the actual Lux consensus engine:
- Quasar root protocol with sub-protocols Photon/Wave/Focus/Prism/Horizon/
  Flare/Ray/Field/Nova/Nebula/Quasar (one concern per component)
- QuasarCert hybrid finality (BLS + Pulsar Ring-LWE + ML-DSA Groth16)
- Configurable PQ modes via LUX_CONSENSUS_PQ_MODE env var
- Pulsar (Lux's Corona variant with DKG2 + Pulsar-SHA3) parameters
- Measured performance numbers (Apple M1 Max)
- M-Chain (MPC threshold) / F-Chain (FHE) / Z-Chain (Groth16) split per
  LP-134 (replaces 'T-Chain' nomenclature)
- ZAP wire protocol pin

Links updated to LP-110 / LP-113 / LP-115.
2026-05-05 13:03:38 -07:00
zeekayandGitHub 385ba253d3 ci: migrate to canonical docker-build reusable (#7)
- Add docker.yml using hanzoai/.github/.github/workflows/docker-build.yml@main
- Add workflow-sanity.yml to enforce canonical CI contract
- Remove bespoke docker build steps from existing workflows

Refs: hanzoai/.github canonical Docker CI contract.
2026-04-23 19:12:19 -07:00
zeekay 3075de3aad docs: update explorer, indexer, consensus, ZAP, and SDK documentation 2026-04-19 17:06:03 -07:00
zeekay d0d4b19a8e build: use ghcr.io/hanzoai/spa instead of custom Go server 2026-04-18 22:29:25 -07:00
zeekay a7a72777dc docs: rename X-Chain fullName Exchange Chain → UTXO Chain
UTXO is the semantic name for X-Chain (UTXO model, like Bitcoin).
"Exchange Chain" was confusingly close to "DEX Chain" (D-Chain).

- content/docs/chains/xchain.mdx: top description paragraph
- content/docs/architecture.mdx: X-Chain section header
- content/docs/indexer/quickstart.mdx: chain label
2026-04-12 22:06:44 -07:00