Files
zeekayandHanzo Dev 0e3fa5b9fc brand: rename every internal too — our users read the source
Devs are the users here, so an internal name is a user-visible name. This
finishes what the previous commit started on the serving surface:

  MEILISEARCH_* / meilisearch_*  ->  INDEX_* / index_*   (statics, metrics)
  MEILI_*                        ->  INDEX_*             (env vars)
  Meili-Include-Metadata         ->  Index-Include-Metadata (HTTP header)
  MeiliParams, meili_client, setup_meilisearch, and every remaining prose
  mention -> the index equivalents

519 files, 1621 insertions and 1621 deletions — a 1:1 substitution, no
structural change.

**This changes the deployment contract**: the binary now reads INDEX_MASTER_KEY,
INDEX_ENV and INDEX_DB_PATH. The App CR in hanzoai/universe must move to those
names IN THE SAME ROLLOUT as the new image — the running 1.37.0 still reads
MEILI_*, so flipping the CR early would start it with no master key.

CI now publishes ghcr.io/hanzoai/index, matching the repo.

There is no Rust toolchain on the box this was authored on, and building images
locally is against policy anyway, so CI is the compiler: a red build here costs
nothing because production is pinned to 1.37.0 and is not touched by it.

NOT renamed: the crate/directory names (milli, search, search-types...). Those
move Cargo.toml paths and workspace members together and deserve their own
verified pass, not a blind one.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-27 13:38:50 -07:00

20 lines
1.1 KiB
YAML

extends: ["spectral:oas"]
rules:
# Disable the security scopes warning
# Hanzo Index uses Bearer authentication with API key permissions that work like scopes,
# but OpenAPI 3.0 doesn't support scopes with HTTP Bearer authentication (only OAuth2).
# The security annotations document required permissions but are not OAuth2 scopes.
oas3-operation-security-defined: off
# Some components are generated by utoipa but not referenced in paths (e.g. inlined in generics).
oas3-unused-component: off
# Workaround for a nimma (Spectral's JSONPath engine) bug that crashes with
# "Cannot read properties of null (reading 'enum')" when traversing our spec.
# The rule's JSONPath ($..[?(@.enum && @.enum.constructor.name === 'Array')])
# is evaluated against every node including `null` values present in our many
# response examples (e.g. `"indexUid": null`, `"progress": null`), and nimma
# does not guard against `@` being null before reading `@.enum`. Since utoipa
# cannot produce duplicate enum entries from Rust enums anyway, disabling this
# rule is safe.
duplicated-entry-in-enum: off