Skip to content

Stellar Index v0.26.0

Choose a tag to compare

@github-actions github-actions released this 06 Aug 13:50
· 233 commits to main since this release

[v0.26.0] — 2026-08-06

Added

  • Curated address labels from the StellarExpert public directory
    (API 1.19.0). The MIT-licensed
    stellar-expert/public-directory
    set (~18.5k well-known G-account and C-contract addresses: names,
    domains, tags like exchange/sdf/custodian/malicious) is
    mirrored into a new account_directory table (migration 0136) by
    stellarindex-ops directory-sync — one tarball fetch, transactional
    upsert + prune, empty-parse refusal so a broken fetch can never wipe
    the set. /v1/accounts/{g} and /v1/contracts/{id} gain a
    directory object, and GET /v1/directory?addresses=… batch-resolves
    up to 100 addresses for list decoration. Display attribution only:
    listing is not endorsement, nothing feeds verification or the in-repo
    scam list, and malicious/unsafe render as warnings.

Fixed

  • Issuer home-domain precedence: the account's own on-chain
    home_domain field now outranks the hand-curated known-issuers
    map
    on /v1/assets/{id}, /v1/assets/{id}/metadata, and
    /v1/issuers/{g}. Founding case: the ex-apay ETH issuer
    (GBFXOHVAS…SOCC) rendered home_domain=apay.io with
    sep1_status=verified — a dead anchor's identity, verified against
    the wrong domain — while the issuer's live on-chain field has said
    ultracapital.xyz since Ultra Stellar acquired apay.io's wrapped
    assets. A 2026-08-06 sweep found 8 of 27 curated entries diverged
    from chain; the flagrantly wrong ones (both apay.io accounts →
    ultracapital.xyz, Circle's centre.iocircle.com for USDC
    and EURC, a USDx issuer mis-attributed to Mykobo → FxDAO) are also
    corrected in the map itself, which remains only a last-resort
    fallback for issuers with no on-chain domain.
  • S-010 identity suppression can no longer be undone by the
    account-state enrich
    on /v1/issuers/{g}: suppression for a
    flagged, unverified issuer now runs after all enrichment, so the
    scammer's self-declared on-chain home_domain (the impersonation
    itself, e.g. lobstr.co) is never refilled into the cleared field.
    Auth flags still populate — they are objective account state, not
    identity claims.
  • The explorer no longer renders scientific notation for prices
    $3.353e-4 now renders $0.0003353 (plain decimal,
    significant-digits tail, trailing zeros trimmed) via one shared
    formatSubunitPrice, replacing the two shared formatters' exponent
    branches and five inline copies.
  • anomaly_freeze_sustained pages only on ESCALATION (both rule
    trees): the old shape paged whenever any pair freeze-cycled for an
    hour, including fire→extend→auto-release cycles resolving exactly
    as ADR-0019 designs. Engaged/active stay ticket/informational.
  • metrics_registry_absent excludes component="ledgerstream"
    the documented exception (archive-only deployments) that kept the
    alert permanently red on r1.

Changed

  • The partial-wrap supply cross-check's over-mint leg is
    diagnostic-only.
    Its premise — cumulative SAC net mint ≤ current
    classic outstanding — only holds for one-way wraps, and two live
    assets falsified it: BLND retires supply classically after SAC
    minting (no SAC burn fires on a classic payment to the issuer), and
    PHO minted its entire 200M supply through the SAC once while classic
    outstanding is issuer-excluded. Both paged for a week with every
    unit accounted for. The over-mint excess stays computed and reported
    (OverMintStroops); the paging divergence is now leg 2 alone —
    escrow ≤ net mint, the bound that is impossible to breach under
    correct accounting for a partial wrap.