Understand the end-to-end flow from job submission to payment.

    Inference Flow

    A complete inference cycle follows these steps:

    1. User submits a job via the API or dashboard, sending ETH as payment to the JobRegistry contract
    2. The backend selects the best available node based on GPU tier, reputation, and model availability
    3. The node receives the inference request, runs the compressed model, and returns the result
    4. The node calls completeJob() on-chain, and the contract releases 95% of the ETH payment to the operator
    5. 5% of the fee is burned permanently, making the economy deflationary

    TurboQuant Compression Pipeline

    TurboQuant is CompressNode's branded name for GGUF Q4_K_M quantization - an industry-proven compression format. A 48GB full-precision model becomes ~8GB after compression, fitting comfortably in consumer GPU VRAM. The compression uses a deterministic polar coordinate transform that preserves model behavior with mathematical guarantees.

    Verification Flow

    The VerificationEngine contract ensures nodes are running authentic models:

    1. Challenge sets are pre-computed: verified input/output hash pairs for each model
    2. The backend periodically issues challenges to random nodes on-chain
    3. When challenged, the node daemon automatically runs inference on the challenge input (temperature=0 for deterministic output)
    4. The daemon submits the output hash on-chain via respondToChallenge()
    5. The contract compares the hash to the expected output - match = +reputation, mismatch = deactivation

    Timeout Handling

    If a node fails to respond to a challenge within the timeout window (default: 5 minutes), it is automatically deactivated and loses reputation. Expired jobs can also be reclaimed by the requester if no node picks them up within 24 hours.