System Status: Warming Up
Checking system health.View status
Documentation

How the product works—and how to integrate.

Start with how to interpret a surfaced row, then dig into semantics, the trigger model, channel copy, and finally the narrow public API and webhooks for builders.

Public proof uses stored hashes and IDs. Losses and blocked posture stay in-bounds when data exists.
Hashes and verification IDs on published rowsLosses and blocked posture stay in-boundsNo retroactive edits to locked public payloads
For traders & readers

How to read a signal

A signal is a time-stamped, evidence-backed observation that something on-chain (or cross-venue) changed in a way the system judged worth surfacing. It packages context, posture, and promotion state—not a filled trade ticket.

What it is not

It is not a guaranteed outcome, not an entry price, not a stop, not a take-profit, and not an instruction to size or execute. Higher bands describe support and clarity around monitoring—not a promise that live execution is appropriate for you.

Alpha, Watch, Guarded, Proof

These describe where a row sits in the product, not a private performance guarantee.

  • Alpha — higher-attention lane: the setup cleared more gates; still not auto-tradeable.
  • Watch — earlier or thinner context: useful radar, often with more open questions.
  • Guarded — visible with explicit limits (lesson, timing-proof, or policy guardrails); read the card copy carefully.
  • Proof — a durable public record page (and API object) you can inspect after the fact, including integrity and outcome snapshots when present.

Action, Promote when, Breaks if

On radar-style surfaces you will see compact operator language derived from the same actionability model as the app:

  • Action — what posture the row is in right now (observe, wait for confirmation, paper-class candidate, guarded entry path, etc.).
  • Promote when — what would have to become true for the row to move to a clearer band (from real upgrade cues, not invented thresholds).
  • Breaks if — what would falsify or weaken the setup (invalidations and selected downgrades), stated conservatively.

Why this is not automatically a trade: scoring and promotion gates choose what to show operators and subscribers; they do not know your mandate, leverage, latency, fees, or risk limits. Treat every row as decision support you still have to clear against your own rules.

For operators

Product semantics

These terms line up with what you see in-session, on launch radar, and on public proof—so product, alerts, and API fields do not silently mean different things.

  • Lanes & maturation — diagnostic labels (e.g. wallet, burst, survivorship) describe evidence shape, not a trade thesis.
  • Live vs proof — live radar rows can age; proof pages freeze a published snapshot with verification metadata when available.
  • Integrity & outcomes — integrity flags honesty about the record; outcomes summarize what happened after detection without rewriting history.
  • Demo / collecting — APIs and performance pages say when data is synthetic or still warming up, instead of implying depth that is not there yet.
Decision support

Actionability and the trigger model

Actionability is the layer that turns raw fields into short operator lines (action class, posture, upgrades, invalidations). On top of that, triggers add a compact state machine view: where you are, what would improve the band next, what blocks promotion, and what would break the setup—without inventing prices or execution promises.

  • Current state & next state — coarse bands (watch, alpha, paper candidate, guarded entry, completed) when the existing row truth supports them; next state is omitted when nothing truthful is nearer.
  • Promote when / Breaks if / Blocked by — aligned with on-product copy; blocked lines combine real promotion blockers with confirmation gaps when present.
  • Readiness — low / medium / high abstraction for how much is still open before the story is clean; not a second score.
  • Runtime policy blocked (workspace launch radar badge, some Telegram execution lines) is separate from promotion Blocked by — the latter is maturation / confirmation truth on the row.
Channels

Telegram and alerts

Telegram messages use the same actionability and trigger vocabulary as the app, with shorter caps on public (“Live Intelligence”) routes and richer lines on Pro and Desk. Band headlines still respect product signal feed metadata when it is on the payload.

  • Public — tighter copy; emphasizes watch/guarded/proof interpretation over execution claims.
  • Pro & Desk — include setup read, next state when known, promote when, breaks if, and blocked-by context within existing size budgets.
  • Payloads — accepted deliveries include structured actionability plus signalActionabilityTriggers for downstream formatters.
Distribution

Public cadence architecture (X / Telegram)

Kahramana's off-site voice should read as operator intelligence, not hype media. The tables below are reference archetypes and deterministic sample renders—not live automation. Full policy and templates live in docs/public-cadence.md and apps/web/lib/publicCadence*.

Prefer silence over noise: use cooldowns, dedupe fingerprints, and sparse-market abstention (see policy helpers). Every proof-linked post should anchor to UTC snapshots and, when applicable, a real proof URL and verification id—never fabricated hashes or performance.

Reference only

Deterministic examples for operator publishing cadence. Not auto-posted. Terminology: observation, evaluation, decision-grade, guarded execution, execution-ready, blocked path, survivorship, sparse conditions, proof-linked.

observationNeutral market observation after evaluation—no promotion implied.Never imply: execution guarantee; expected return; alpha call; entry signal
blocked pathExplain why execution or promotion stayed blocked or guarded.Never imply: user fault; temporary glitch as cover; hidden loss
outcome resolutionCheckpoint outcome reached (win / loss / neutral / insufficient data)—analytical.Never imply: PnL brag; win rate; guaranteed repeat
proof publicationNew or updated proof-linked record (hash, verification id, posture).Never imply: fabricated hash; backdated edit; unverified score
radar posture updateSlice-level posture: execution-ready vs guarded vs sparse window.Never imply: all markets covered; continuous fills
non qualificationWhy a candidate did not clear decision-grade or survivorship filters.Never imply: secret edge; later moonshot; ignore risk
sparse conditionsExplicitly quiet market / thin promotion window—silence is valid output.Never imply: fake activity; forced signals
integrity methodologyMethodology, classification rules, integrity events—non-trade content.Never imply: live trade advice; personalized portfolio
Sample renders (X + Telegram bodies)
observation
XObservation · Cross-venue evaluation completed; no row cleared execution-ready thresholds in this window.
Kahramana — observation (proof-linked) Snapshot: May 7, 12:00 PM UTC Cross-venue evaluation completed; no row cleared execution-ready thresholds in this window. Proof-linked record: https://kahramana.io/proof/example-row
blocked_path
XBlocked path · Liquidity quality remained below the published threshold; guarded execution posture unchanged.
Kahramana — blocked path (decision-grade evaluation) Snapshot: May 7, 12:00 PM UTC Execution remained blocked; blocked path stays visible in the public ledger. Liquidity quality remained below the published threshold; guarded execution posture unchanged. Proof-linked record: https://kahramana.io/proof/example-row
outcome_resolution
XOutcome · loss (24h)
Kahramana — outcome resolution (proof-linked) Snapshot: May 7, 12:00 PM UTC Outcome state: loss (24h) Recorded move at evaluation checkpoint: -3.1% (methodology-defined window). Proof-linked record: https://kahramana.io/proof/example-row Verification ID: ver_01HZABCDEF1234567890EXAMPLE
proof_publication
XProof-linked update · verification ver_01HZ…MPLE
Kahramana — proof publication Snapshot: May 7, 12:00 PM UTC Verification ID (abbrev.): ver_01HZAB…XAMPLE Execution posture: guarded live Proof-linked record: https://kahramana.io/proof/example-row Verification ID: ver_01HZABCDEF1234567890EXAMPLE
radar_posture_update
XRadar posture · Public slice remains selective: sparse conditions visible; observation pipeline active.
Kahramana — radar posture update Snapshot: May 7, 12:00 PM UTC Public slice remains selective: sparse conditions visible; observation pipeline active. Public radar: https://kahramana.io/radar
non_qualification
XDid not qualify · Survivorship checks did not clear; cross-venue confirmation did not persist under current rules.
Kahramana — why this did not qualify (survivorship / decision-grade) Snapshot: May 7, 12:00 PM UTC Survivorship checks did not clear; cross-venue confirmation did not persist under current rules. Proof-linked record: https://kahramana.io/proof/example-row
sparse_conditions
XSparse conditions · Low promotion density is expected—prefer silence over filler posts.
Kahramana — sparse market window Snapshot: May 7, 12:00 PM UTC Low promotion density is expected—prefer silence over filler posts.
integrity_methodology
XMethodology · How decision-grade labels apply when checkpoints disagree across windows.
Kahramana — integrity / methodology Snapshot: May 7, 12:00 PM UTC How decision-grade labels apply when checkpoints disagree across windows. Reference: - Methodology: https://kahramana.io/methodology - FAQ: https://kahramana.io/faq
For developers

Public API overview

The public HTTP surface stays intentionally small: read-only JSON for the live proof feed, a per-proof record, aggregate performance, and subscription-ready webhook shapes. Responses can report demo or collecting states when that is the honest status.

No auth on read endpointsJSON onlyAdditive fields
GET /api/signals

Returns the public radar feed, including verification, integrity, live state, and outcome classification fields that power the marketing site and integrations.

Example request
curl https://kahramana.io/api/signals
Example response
{
  "generatedAt": "2026-05-18T16:24:06.088Z",
  "source": "real",
  "fallbackUsed": false,
  "items": [
    {
      "id": "radar_915756bc1b7c",
      "verificationId": "proof_29cc6de9e093e153",
      "tokenOrPair": "TRX/USDC",
      "baseAsset": {
        "symbol": "TRX",
        "address": "GbbesPbaYh5uiAZSYNXTc7w9jty1rpg3P9L4JeN4LkKc"
      },
      "quoteAsset": {
        "symbol": "USDC",
        "address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
      },
      "chain": "solana",
      "venue": "raydium",
      "detectedAt": "2026-05-18T16:21:56.000Z",
      "publishedAt": "2026-05-18T16:23:12.151Z",
      "detectedAtLabel": "May 18, 4:21 PM UTC",
      "publishedAtLabel": "May 18, 4:23 PM UTC",
      "liquidityUsd": 4399614.74,
      "overallScore": 81.05,
      "priceChange5mPct": 0,
      "priceChange15mPct": 0,
      "volumeSpikeRatio": 0,
      "recentMovementWindow": "15m",
      "rationale": "Overall score is 81 with structural 89, risk 28, and momentum 78.",
      "supportPosture": "signal_only",
      "supportSummary": "Solana paper execution is available while live execution remains disabled.",
      "outcomeSnapshots": [],
      "badges": [
        "smart_wallet_detected",
        "correlated",
        "signal_only"
      ],
      "dataSource": "real",
      "sourceType": "real",
      "integrityStatus": "verified",
      "contentHash": "624eae12156f67d56a98ec1a82d256d1965db94cd9d457d99711af137070695e",
      "hashVersion": "v1",
      "classification": "pending",
      "classificationWindow": null,
      "liveState": "tracking_now",
      "bestReturnPct": null,
      "worstReturnPct": null,
      "latestReturnPct": null,
      "decisionImpact": {
        "avoidedLossFlag": false,
        "avoidedLossPct": null,
        "capturedMoveFlag": false,
        "capturedMovePct": null,
        "cautionSignalFlag": false,
        "blockedProtectionFlag": false,
        "impactSummaryLabel": "Tracking now",
        "impactSummaryText": "The setup is published and being tracked, but the full decision impact is still forming."
      },
      "priorityScore": 89,
      "priorityLabel": "high",
      "priorityReason": "High score, live movement, and recency make this worth immediate operator attention.",
      "freshnessState": "fresh",
      "freshnessUpdatedAt": "2026-05-18T16:22:39.968Z",
      "runtimeProviderMode": "live",
      "signalMaturationState": null,
      "signalWhyNow": null,
      "signalWhatToWatchNext": null,
      "signalUncertaintyLine": null,
      "signalTier": null,
      "signalDeliveredAt": null,
      "signalPromotionBlockers": [],
      "signalLanes": [],
      "walletBacked": false,
      "evmAlphaSummary": null,
      "publicContentMode": null,
      "firstPrivateAudience": null,
      "firstPrivateDeliveredAt": null,
      "publicRevealStatus": null,
      "publicRevealWhatChanged": null,
      "publicRevealWhatHappenedSince": null,
      "publicRevealDeltaPct": null,
      "publicRevealPeakMovePct": null,
      "publicRevealPerformanceLine": null,
      "productSignalFeed": "alpha",
      "signalWhyVisible": null,
      "preAlphaBurstLane": null,
      "discoveryFlagsPresent": null,
      "proofHeadline": "TRX/USDC launch radar signal",
      "proofFraming": "This was detected at May 18, 4:21 PM UTC before the outcome.",
      "supportExplanation": "The opportunity can still be reviewed, but the current path stops before execution.",
      "guardrails": [
        {
          "guardrailType": "execution_mode_mismatch",
          "severity": "warning",
          "reason": "Routing produced a pending rather than fully routed signal because binding or requirements are incomplete.",
          "detectedValue": null,
          "requiredValue": null,
          "thresholdLabel": "Detected value"
        },
        {
          "guardrailType": "unsupported_execution_path",
          "severity": "info",
          "reason": "Execution support on this chain remains intentionally guarded or unsupported.",
          "detectedValue": null,
          "requiredValue": null,
          "thresholdLabel": "Detected value"
        }
      ],
      "rationaleSections": [
        {
          "title": "Why this mattered",
          "summary": "The score mix indicates how much structural quality, risk, and momentum support this setup has right now."
        },
        {
          "title": "Decision reasoning",
          "summary": "SOLANA launch-style opportunity with sufficient structural and liquidity support. Decision=semi_auto_candidate, structural=89, risk=28, momentum=78.42."
        },
        {
          "title": "Risk context",
          "summary": "Risk and control layers are shaping whether this setup can move forward."
        },
        {
          "title": "Strategy posture",
          "summary": "The system recommends launch sniper because the opportunity fits that strategy family better than the alternatives."
        }
      ],
      "integrity": {
        "verificationId": "proof_29cc6de9e093e153",
        "publishedAt": "2026-05-18T16:23:12.151Z",
        "contentHash": "624eae12156f67d56a98ec1a82d256d1965db94cd9d457d99711af137070695e",
        "hashVersion": "v1",
        "status": "verified",
        "isLocked": true,
        "lockedAt": "2026-05-18T16:23:12.151Z",
        "lockReason": "public_publish"
      },
      "outcomeSummary": {
        "classification": "pending",
        "bestReturnPct": null,
        "worstReturnPct": null,
        "latestReturnPct": null,
        "classificationWindow": null,
        "explanation": "Outcome tracking is still in progress. Later checkpoints have not completed yet.",
        "completeCheckpointCount": 0,
        "pendingCheckpointCount": 4
      },
      "pair": "TRX/USDC",
      "venueName": "raydium",
      "sourceBucket": "solana",
      "isSurfacedSignal": false,
      "surfacedDeliveredAt": null
    }
  ]
}
GET /api/proof/:id

Returns the immutable public proof record for a published item: integrity state, outcome summary, and decision-impact summary when computed.

Example request
curl https://kahramana.io/api/proof/radar_915756bc1b7c
Example response
{
  "id": "radar_915756bc1b7c",
  "verificationId": "proof_29cc6de9e093e153",
  "integrity": {
    "verificationId": "proof_29cc6de9e093e153",
    "publishedAt": "2026-05-18T16:23:12.151Z",
    "contentHash": "624eae12156f67d56a98ec1a82d256d1965db94cd9d457d99711af137070695e",
    "hashVersion": "v1",
    "status": "verified",
    "isLocked": true,
    "lockedAt": "2026-05-18T16:23:12.151Z",
    "lockReason": "public_publish"
  },
  "classification": "pending",
  "liveState": "tracking_now",
  "decisionImpact": {
    "avoidedLossFlag": false,
    "avoidedLossPct": null,
    "capturedMoveFlag": false,
    "capturedMovePct": null,
    "cautionSignalFlag": false,
    "blockedProtectionFlag": false,
    "impactSummaryLabel": "Tracking now",
    "impactSummaryText": "The setup is published and being tracked, but the full decision impact is still forming."
  },
  "outcomeSnapshots": []
}
GET /api/performance

Returns aggregated public proof outcomes. The response stays explicit when the dataset is still collecting or impact summaries are not yet available.

Example request
curl https://kahramana.io/api/performance?range=30d
Example response
{
  "generatedAt": "2026-04-08T00:42:49.175Z",
  "source": "real",
  "range": "30d",
  "segment": "decision_grade",
  "collecting": false,
  "summary": {
    "totalSignalsTracked": 0,
    "wins": 0,
    "losses": 0,
    "neutral": 0,
    "pending": 0,
    "insufficientData": 0,
    "completedOutcomeCount": 0,
    "winRate": 0,
    "lossRate": 0,
    "neutralRate": 0,
    "pendingRate": 0,
    "insufficientDataRate": 0,
    "averageMoveUp": null,
    "averageMoveDown": null
  },
  "impactSummary": {
    "blockedProtectedCount": 0,
    "favorableFollowThroughCount": 0,
    "cautionarySetupCount": 0,
    "stillPendingCount": 0,
    "available": true
  }
}
Webhook events

Subscriptions support signal_created, outcome_updated, and proof_integrity_warning. Delivery plumbing stays narrow; shapes below are what we expose today.

Subscribe
curl -X POST https://kahramana.io/api/webhooks/subscribe \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/webhooks/kahramana","eventType":"signal_created"}'
signal_created
{
  "eventType": "signal_created",
  "generatedAt": "2026-05-18T16:24:06.112Z",
  "payload": {
    "proofId": "radar_915756bc1b7c",
    "verificationId": "proof_29cc6de9e093e153",
    "detectedAt": "2026-05-18T16:21:56.000Z",
    "tokenOrPair": "TRX/USDC",
    "posture": "signal_only",
    "score": 81.05
  }
}
outcome_updated
{
  "eventType": "outcome_updated",
  "generatedAt": "2026-05-18T16:24:06.112Z",
  "payload": {
    "proofId": "radar_915756bc1b7c",
    "verificationId": "proof_29cc6de9e093e153",
    "classification": "pending",
    "classificationWindow": null,
    "latestReturnPct": null,
    "liveState": "tracking_now"
  }
}
proof_integrity_warning
{
  "eventType": "proof_integrity_warning",
  "generatedAt": "2026-05-18T16:24:06.112Z",
  "payload": {
    "proofId": "radar_915756bc1b7c",
    "verificationId": "proof_29cc6de9e093e153",
    "integrityStatus": "verified",
    "publishedAt": "2026-05-18T16:23:12.151Z"
  }
}