# GeoNum Engine

Licensed, proprietary precision command-line engine. Drift-tracked
arithmetic with an explicit trust verdict on every result.

(c) 2026 VaultSync Solutions Inc. All rights reserved.
Patent pending - U.S. Provisional 63/970,430. See `LICENSE` (proprietary
EULA). The compiled binary is the licensed artifact; source is not shipped
to customers. This is **not** MIT and **not** the public GeoNum Open
deposit - that is a separate product (Zenodo DOI 10.5281/zenodo.18753425,
in-browser calculator). Do not relicense or publish this repo.

## What it is

GeoNum performs drift-tracked arithmetic: every value carries a drift
figure and a relative-uncertainty figure derived from the engine's own
propagation, not a claimed digit count. Unknown identifiers or unsupported
functions return an explicit unsupported/ERROR status - never a fabricated
number. Distribution is a single native binary; the compute path needs no
network and no cluster.

## Commands

Authoritative reference: `docs/geonum-engine-reference.txt` (the same text
is compiled into the binary - `geonum docs`).

    geonum compute  --input FILE --output FILE
    geonum compute  --expression "<math>" [--params FILE|JSON] [--precision N] [--zone NAME] [--output FILE]
    geonum compute  --domain NAME --params "[..]" [--zone NAME] [--output FILE]
    geonum validate --domain NAME [--precision N] [--zone NAME] [--output FILE]
    geonum docs                    full command reference
    geonum help [compute|validate] overview / per-command detail
    geonum support "message"       email the maintainer for assistance
    geonum version

`compute`/`validate` are license-gated; `docs`/`help`/`support`/`version`
always work (a lapsed trial must still reach support).

## Build

Windows host:

    cargo build --release --bin geonum
    # → target/release/geonum.exe

Linux binary (cross-compiled from Windows via zig, musl-static, runs on
any modern x86_64 distro):

    winget install -e --id zig.zig
    cargo install cargo-zigbuild
    rustup target add x86_64-unknown-linux-musl
    cargo zigbuild --release --target x86_64-unknown-linux-musl --bin geonum
    # → target/x86_64-unknown-linux-musl/release/geonum

The wasm `[lib]` target is unrelated to the CLI and never includes
`main.rs`/`license.rs`.

## Package + deploy the product site

`package.ps1` builds both the Windows and (if the Linux toolchain is
present) the Linux binary, and assembles platform-suffixed zips under
`www/download/`:

  - `geonum-engine-v<ver>-windows-x86_64.zip` (geonum.exe + LICENSE + README + reference + SHA256SUMS)
  - `geonum-engine-v<ver>-linux-x86_64.zip`   (geonum + LICENSE + README + reference + SHA256SUMS)

Plus the standalone downloadable reference. If the Linux toolchain is
missing, only the Windows zip is produced and the script warns. `deploy.ps1`
FTPs `www/` to `geonum.getvaultsync.com` (`/content/geonum`); files that
weren't built are skipped. Credentials live in `_netrc` (gitignored - never
commit).

## Licensing

3-day self-enforced trial from first run. License via
`GEONUM_LICENSE_KEY` (env, checked first) or `~/.geonum/license`. Verified
against `GEONUM_LICENSE_URL` (default `https://license.getvaultsync.com`),
re-confirmed periodically, 14-day offline grace. Tiers: Individual $60 -
Commercial $120 - Infrastructure $240 per month; 3-day trial; no
discounts; no contracts; cancel anytime.

## Support

Direct: support@getvaultsync.com (or `geonum support "..."`).
OEM / sub-licensing: licensing@getvaultsync.com
