6 Commits
Author SHA1 Message Date
zooqueenandHanzo Dev d0507e0a03 api 1.0.4: the Datastore client is hanzo-ds/connect, and bootnode applies its own schema
Hanzo CI/CD / cicd (push) Blocked by required conditions
Hanzo CI/CD / test (linux-arm64) (push) Waiting to run
CI/CD / cicd (push) Waiting to run
Hanzo CI/CD / test (linux-amd64) (push) Successful in 2m19s
The client authenticates with HTTP basic auth, which the Datastore reads.
Inserts go as JSONEachRow, so the server parses each value into its column.

The schema ships inside the package (bootnode/core/datastore/schema) and is
applied at startup. Every statement is IF NOT EXISTS, so it applies over a
database that already holds part of it; each file is recorded in
schema_migrations by name and checksum and applied again only when it changes.

mv_tx_stats_hourly and mv_token_volume_daily key on chain_id, the column
their source tables define, and 002 no longer redeclares blocks,
transactions or token_transfers.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-24 06:13:18 -07:00
zeekayandHanzo Dev 37b6492d08 iam: canonical endpoints; drop the hand-rolled login button
The API resolved JWKS at {iam_url}/.well-known/jwks.json and exchanged
codes at {iam_url}/oauth/token — measured 401 on both; the canonical
/v1/iam/.well-known/jwks and /v1/iam/oauth/token answer.

brand.json pointed at iam.bootno.de, which does not resolve (525). The
brand's canonical issuer is id.bootno.de, already what web/lib/brand.ts
uses.

HanzoLoginButton hand-rolled a /oauth2/authorize URL that exists on no
IAM deployment. It was imported but never rendered — the login page has
used getIam().signinRedirect() (@hanzo/iam PKCE) since HIP-0111 — so it
is deleted rather than repointed. One way in.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-25 13:34:40 -07:00
zeekay bb3c6906f3 fix: redirect /login to hanzo.id in production
Instead of showing a login page with multiple identity providers,
redirect directly to hanzo.id for a cleaner authentication flow.
2026-02-04 23:09:42 -08:00
zeekay a11da9874a fix: remove unpublished hanzo-kms/iam from optional deps
The hanzo-kms and hanzo-iam packages are not published to PyPI,
causing uv lock to fail. In production K8s, secrets are injected
as env vars directly by the KMS operator.
2026-02-04 11:16:07 -08:00
zeekay d55d0b03cb feat: comprehensive bootnode platform updates
- Add brand assets and logos
- Add KMS integration for secure key management
- Add infrastructure configs (cloud providers, monitoring)
- Add indexer service with documentation
- Update K8s deployments and ingress
- Enhance dashboard pages (analytics, assets, infrastructure)
- Update auth and API components
- Add .gitignore for embedded repos
2026-02-03 12:48:01 -08:00
zeekay 73a3d23053 feat: production deployment with shared Hanzo infrastructure
- Add k8s configs for production deployment
- Use shared postgres/datastore in hanzo namespace
- Fix image registry to ghcr.io/hanzoai/bootnode
- Add deploy script with shared infra support
- Simplify compose.yml for local development
2026-02-02 16:39:52 -08:00