Files
zeekay bb8982e354 Sign in on hanzo.ai, carrying this app's own request
/login drew its own card against hanzo.id: discovery and the provider
methods were read from hanzo.id, and "Continue with GitHub" went
through hanzo.id's authorize. It also could not see a person already
signed in on hanzo.ai, whose IAM session is host-only there.

A signed-out visit now stashes the page asked for and leaves for
hanzo.ai/login (/signup for a new account) with the query of the
authorize request @hanzo/iam builds for hanzo-analytics: its callback,
a fresh state and an S256 challenge whose verifier stays here.
hanzo.ai finishes it, "Continue as" or its own sign-in, and
/auth/callback exchanges the code and returns to that page.

The browser asks IAM at api.hanzo.ai only: discovery, token, refresh,
userinfo and revocation. The server reads IAM's keys there and pins
the issuer to the iss tokens name. @hanzo/iam moves to 0.21.32, and
the home org is read from the principal's org, the field it carries.

The release is revived: deploy.yml built with buildx and qemu on a
repo with Actions disabled, so nothing built. hanzo.yml and the
hanzoai/ci caller have the door build the image in-cluster. jest runs
through esbuild, since ts-jest cannot drive TypeScript 7 and every
suite failed before it ran.
2026-10-16 23:27:00 -07:00

25 lines
830 B
YAML

# hanzoai/analytics — Hanzo Analytics (analytics.hanzo.ai), read by the hanzoai/ci
# reusable (.github/workflows/build.yml) and by platform.hanzo.ai.
#
# BUILD ONLY. The image is built at the door in-cluster (the caller's
# `mode: delegate`), one BuildKit Job per architecture. Rolling it onto the
# cluster is a pin in hanzoai/universe (charts/app/values/hanzo/analytics.yaml),
# which cd.hanzo.ai reconciles.
#
# The version is package.json's: imgver publishes it when it is ahead of the
# registry, else the registry's highest plus a patch.
images:
- name: analytics
context: .
dockerfile: Dockerfile
repo: ghcr.io/hanzoai/analytics
# Offline gates, run before the image is published.
test:
- name: unit
run: |
set -e
pnpm install --frozen-lockfile
pnpm build-db-client
pnpm test