Trust But Verify
We publish what we can prove, label what we cannot, and invite any capable AI to examine the rest. Choose what you are considering doing — we prepare the review prompt with the relevant evidence.
What you'll need to begin: an AI with a context window of roughly 1M tokens — enough to hold the relevant code and evidence in one pass. Any current frontier model meets this.
Several evidence slots below are labeled Not yet published — that honesty is intentional. We would rather show an empty slot than fake content.
How to read the status labels
Checked against its source; the re-check command is given.
Anyone can run it today.
Not yet published; the reason is stated.
Only the operator can check it today; the reason is stated.
Orientation
A model-neutral prompt that turns any capable AI into an independent adversarial reviewer — tailored to what you actually want to do.
Every major public claim, mapped to the evidence behind it — and an honest status, including what is not yet published.
Component versions, source commits, artifact hashes, and publication status as structured JSON for automated checking.
The same material as a plain Markdown document — the fastest way to hand this hub to an AI reviewer.
Public check
Every value on this hub was checked against its source on 2026-10-07. Six checks are runnable right now — exact commands, expected outputs, no permission needed. Run the checks →
For AI Reviewers
Choose an activity. We'll prepare a prompt for your AI to examine the relevant code, evidence, and risks.
Evidence to attach: the Markdown entrance and the machine-readable manifest. The manifest link works without any selection.
Any current frontier model meets this bar; we specify capabilities, not brands, because model versions change monthly and this page is built for decades. Smaller or older models can still help — treat their review as a first pass, since they may miss cross-file evidence.
Public checks
Each command below was run against the public read-only RPC on 2026-10-07 and returned the result shown under it. You need curl, plus python3 for the formatted ones. rpc.chronx.io is seed 1 behind a read-only allowlist — writes are refused.
curl -s https://rpc.chronx.io -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"chronx_getInfo","params":[]}' \
| python3 -c 'import json,sys; r=json.load(sys.stdin)["result"]; print(r["chain_id"]); print(r["schema_digest"])'Expect 7fd9138c…a7106b0c then 9d4c05ba…dcd11a.
curl -s https://rpc.chronx.io -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"chronx_getGenesisVertexRoot","params":[]}'Expect "agrees":true, with both params roots equal to the chain ID.
curl -s https://rpc.chronx.io -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"chronx_verifySupplyInvariant","params":[]}'Expect "invariant_holds":true and total_chronos = expected_chronos = 8270000000000000 (8.27 B KX).
curl -s https://rpc.chronx.io -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"chronx_getSerializationSourceProfile","params":[]}' \
| python3 -c 'import json,sys; r=json.load(sys.stdin)["result"]; print(r["source_digest"], len(r["source_manifest"]), "files"); print(r["dependency_build_provenance"]["artifact_receipt_sha256"])'Expect 54584351…79b9116d, 42 files, then ec4ebc52…ce187a9d.
curl -s https://rpc.chronx.io -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"chronx_getStateRoot","params":[]}'Returns root and vertex_count. Both change as the chain grows, so there is no fixed expected value.
curl -sO https://chronx.io/dl/ChronX-Wallet-3.0.17-arm64-v8a.apk
shasum -a 256 ChronX-Wallet-3.0.17-arm64-v8a.apk
unzip -p ChronX-Wallet-3.0.17-arm64-v8a.apk META-INF/CHRONX.RSA \
| openssl pkcs7 -inform DER -print_certs | openssl x509 -noout -fingerprint -sha256Expect b0ab502b…1c9c7b41 and the certificate fingerprint CE:BE:CE:6D:…:6A:05. Both should match /version.json.
The same facts are machine-readable at /verify/manifest.json — also embedded in this page as <script type="application/json" id="verify-manifest"> for AI reviewers. Run the checks above against https://rpc.chronx.io. Before you reach a conclusion, read Known gaps.
The Index
What ChronX claims, where the evidence is, and how strong it is today.
| Claim | Evidence | Status |
|---|---|---|
| Zero protocol fees on KX movement | Protocol invariant; inspect via the Explorer | Live data |
| Fixed supply 8,270,000,000 KX | Genesis + public supply-invariant check (Check 3) + full historical replay (replay harness not yet published) | Documented |
| Time-locked promises enforced by protocol | Explorer + wallet | Live data |
| Exchange: desk-verified USDC on Arbitrum | Desk authorization trust assumption (see the exchange page) — node-level verification is roadmap | Documented |
| Post-quantum signatures (ML-DSA-44 / FIPS 204) | Wallet + node implementation | Documented |
| Governance sunsets: 5-year registry Define/Upsert cap; founder 366 days; halt 1,096 days | Sealed governance manifest (snapshot dated); live parameter endpoint currently unreachable from this network — verify against the manifest | Documented — verify live |
| Source, build & deployment correspondence (commit IDs, artifact hashes, reproducible builds) | Commit IDs and artifact hashes published above; repositories still private — correspondence not yet independently verifiable | Partially published |
| Independent adversarial reviews | — | Not yet published |
| Reproducible audit harness (pinned toolchain, fixtures, expected outputs) | — | Not yet published |
Source
The repositories that hold the live node and wallet code are private. What we can publish today is immutable identifiers — commit IDs, dates, and hashes — so that the future source release can be checked against exactly these commits.
When the source is released, we will publish node commit b3c0dfa, wallet commits 9ad635d (3.0.17) and 52e7dd0 (3.0.16), the replay harness with its logs, and the written CH1 decision record.
| Component | Commit | Date | Status |
|---|---|---|---|
| Node commit | b3c0dfaab998a62f1ca36b780fa83e444de4fee4 "node(live): refuse covenant carriers 232-234; testnet anchors behind activation" · parent bb6643202cbc |
2026-10-06 | Not public |
| Wallet 3.0.17 commit | 9ad635d9681584429bd284148cd5ccbbb78124b5 | 2026-10-07 | Not public |
| Wallet 3.0.16 commit | 52e7dd0c7194b0455abb83720df1e96fcd6721ae | 2026-10-06 | Not public |
Counselco/chronx-audit-snapshot — frozen audit tree abd2217e, 2026-08-26. Counselco/chronx-node — source of the retired genesis 7bf4d870, 2026-07-24. Both are public, but neither is the code that runs the live chain. Use them for context, not as proof of the live build.
The live chain
Public check — re-run checks 1 and 2 above to reproduce these values from the chain itself.
| Chain ID (= genesis params root, blake3-256) | 7fd9138c115e74e63aaccdaf2a513f1444b7cfc5d90dac7c86ab49ad7a106b0c | Public check |
| Schema digest | 9d4c05ba17c97f6ea822f0df1c50eb1db95e802b10334fbf4efac2cd9adcd11a | Public check |
| Genesis vertex | 83054a45c4bed22f85426d4803dba46e973ffbf9cb838b4f2dcce77c6122d3e9 | Public check |
| Genesis timestamp | 1789040036 = 2026-09-10 11:33:56 UTC | Public check |
| Total supply | 8,270,000,000 KX (8270000000000000 chronos) | Public check |
| Genesis manifest sha256 | 91ef3e111b33bbaeb0eed3306f19e52431d8f1feec4e7c3b69fc424553ff2b2c genesis-manifest-7fd9138c.json · 429,964 bytes · hashed on seed 1 | Pending |
The manifest hash was taken from the seed's copy. The file itself is not yet published, so for now you cannot hash it yourself.
Build
What the running node is, and what it reports about its own build. Self-reported values are labeled as such.
661adb93cae5a59d15ebcc768432c7e104f3469801bcbdefaf1e8b0014d1d145
chronx-node-cov-b3c0dfa — built from commit b3c0dfa with rustc 1.94.0 for x86_64-linux.
Seed 1 — hashed on the host on 2026-10-07; the running node process executes this file. rpc.chronx.io is served by this seed.
Seed 2 — not re-hashed for this page: seed 2 is reachable only through an operator jump host. The deploy script refuses to install unless the binary matches this same sha256.
Binary download — not yet published. The node binary will be published with the source, so that anyone can rebuild it and compare the hash.
54584351e31c604ce5ed4ce190e743a05b32c7dee0586e85ea51e20f79b9116d
The node reports this about itself, with a per-file blake3 list. We checked that the byte counts of all 42 files match the b3c0dfa tree. Anyone can check the per-file hashes once the source is public.
ec4ebc522c4890868f555fee65eba02758ea4b8ebb816a8faa935c87ce187a9d
Receipt file not yet published. The node reports this hash, but the receipt it refers to is not public yet.
Releases
Verified — download, hash, and compare the signing certificate yourself with check 6.
ChronX-Wallet-3.0.17-arm64-v8a.apk · 57,610,112 bytes · version code 4030017
SHA-256 b0ab502b6a0ea61db1831599e611903f0997b7ec3960a3ae9e4f597e1c9c7b41
Signing cert sha256 cebece6db0252839a45f31a4c495983fbe587656ae6aee152007f905d3c86a05 C=US, ST=NY, L=Brooklyn, O=Counselco, OU=ChronX, CN=ChronX
Source commit 9ad635d9681584429bd284148cd5ccbbb78124b5 (not public) · Founder beta · deed services are TEST-only
ChronX-Wallet-3.0.16-arm64-v8a.apk · 57,085,824 bytes · version code 4030016
SHA-256 6ab21f274f3072948014c85ffacdd089b902c22e005c6bf3e9cce1e40f32922e
Signing cert sha256 cebece6db0252839a45f31a4c495983fbe587656ae6aee152007f905d3c86a05 (same certificate as 3.0.17)
Source commit 52e7dd0c7194b0455abb83720df1e96fcd6721ae (not public)
Reproducibility
What running the history back from genesis shows today — including the defect we have not fixed yet.
Checks 1–5 above. They confirm identity, genesis agreement, supply, and the reported source fingerprint against the one public node.
This check reads chronx_getStateRoot from both seeds at the same vertex_count and compares the roots. Only seed 1 has a public RPC, so from outside you can read only one side.
The harness and logs exist and will be published with the source release — replay_proof.rs and ch1_probe.rs (per-vertex root comparison, built from b3c0dfa). What the runs showed:
Honesty First
These are the places where today's evidence runs out. We state them so you don't have to dig for them.
Exchange trades currently rely on the desk verifying USDC payments on Arbitrum. That is a trust assumption, not a protocol guarantee, until node-level verification ships.
Protected Type-K funding and collateralized loans are documented parts of the design but are not enabled yet. Treat them as roadmap, not capability. Investing through the wallet is available; the desk's and executors' own limits apply.
Long-horizon (century-scale) promises are a protocol capability. A century of continuous operation is a claim about the future, not a demonstrated fact.
Fresh public telemetry has reported one distinct peer alongside implausibly large peer and connection counters. We show what the reporting node sees, label it as such, and do not infer a global node count from it. Whether the network is two nodes or two thousand is a question the evidence hub asks reviewers to establish — not one we answer with a badge.
Open problems
These are the open problems. Read them before you judge anything above.
Live nodes apply a vertex when it arrives, and chain time takes a node-local high-water mark. So a plain replay from genesis does not reach the committed root. It does reach it with the two logged corrections. The seeds agree with each other, and the supply invariant holds. This is still a real reproducibility defect. Owner decision 2026-10-07: fix forward (signed checkpoint + deterministic ordering); no re-genesis. A written decision record will be published with the source.
This page gives commit IDs and hashes, but nobody outside can rebuild the node or wallet from source yet. Until then, the binary and source-digest rows rest on our word plus what the node reports about itself. Some older pages link github.com/Counselco/chronx, which does not resolve.
rpc.chronx.io is seed 1 behind a read-only allowlist; writes are refused. There is no second independent public endpoint yet. That is why the seed-to-seed compare is not public.
Deed services run on test LTC and an Arbitrum test fork. They are not cleared for real funds.
Found Something?
Report security findings through our support page. Choose "Security concern / suspicious activity" as the issue type and begin your description with Security disclosure: so it routes correctly. Include the affected component and version, steps to reproduce, and the impact you believe is possible.
Keys and seed phrases are never needed for a code review. Not ours, not anyone's. No review, audit, or support interaction ever requires them — never give them to a chat assistant.
The live chain, the software releases, and the site assistant — three more ways to cross-check what we say.
Ask AI is the site assistant: it answers questions about ChronX — it is not an independent audit.