# scrypath v0.3.3 - Table of Contents

Ecto-native search indexing and orchestration for Elixir apps

## Pages

- Getting Started
  - [Scrypath](readme.md)
  - [Getting Started](getting-started.md)

- Phoenix
  - [Phoenix Walkthrough](phoenix-walkthrough.md)
  - [Phoenix Contexts](phoenix-contexts.md)
  - [Phoenix Controllers And JSON](phoenix-controllers-and-json.md)
  - [Phoenix LiveView](phoenix-liveview.md)
  - [Faceted search with Phoenix LiveView](faceted-search-with-phoenix-liveview.md)
  - [Multi-index search with Scrypath](multi-index-search.md)

- Operations
  - [Scrypath Architecture](architecture.md)
  - [Drift recovery for Scrypath and Meilisearch](drift-recovery.md)
  - [Sync Modes And Visibility](sync-modes-and-visibility.md)
  - [Operator Mix Tasks](operator-mix-tasks.md)
  - [Relevance tuning (Meilisearch settings)](relevance-tuning.md)

- Maintainers
  - [Releasing Scrypath](releasing.md)
  - [Operator Support](operator-support.md)
  - [Search backend operations (SRE view)](search-backend-sre.md)

## Modules

- [Scrypath](Scrypath.md): Runtime reflection helpers for searchable schemas declared with `use Scrypath`.
- [Scrypath.Backend](Scrypath.Backend.md): Internal backend behavior for Scrypath runtime adapters.
- [Scrypath.Config](Scrypath.Config.md): Internal runtime configuration helpers for Scrypath.
- [Scrypath.Document](Scrypath.Document.md): Internal projected search document used between Scrypath orchestration layers.
- [Scrypath.Meilisearch](Scrypath.Meilisearch.md): Meilisearch-specific runtime entrypoints for Scrypath.
- [Scrypath.Meilisearch.FederatedDecode](Scrypath.Meilisearch.FederatedDecode.md): Decodes federated `/multi-search` responses into per-index raw maps suitable
for building the public search result structs returned from `Scrypath.search/3`.
- [Scrypath.Meilisearch.Query](Scrypath.Meilisearch.Query.md): Builds Meilisearch `/indexes/:uid/search` JSON bodies from `Scrypath.Query`.
- [Scrypath.MultiSearch.Entries](Scrypath.MultiSearch.Entries.md): Normalizes `search_many/2` entry tuples and shared runtime options.
- [Scrypath.MultiSearchResult.Federation](Scrypath.MultiSearchResult.Federation.md): Federated multi-search metadata mirrored from Meilisearch's federation object.
- [Scrypath.Oban](Scrypath.Oban.md): Narrow Oban helpers for composing Scrypath sync jobs into `Ecto.Multi`.

- [Scrypath.Operator.FailedSyncWorkInspection](Scrypath.Operator.FailedSyncWorkInspection.md): Opt-in enriched result from `Scrypath.failed_sync_work/2` when
`reason_class_counts: true` is passed in operator options.
- [Scrypath.Operator.FailedWork](Scrypath.Operator.FailedWork.md): Failed sync work returned by `Scrypath.failed_sync_work/2`.
- [Scrypath.Operator.ReasonClassCounts](Scrypath.Operator.ReasonClassCounts.md): Dense per-class counts for failed sync work rows.
- [Scrypath.Operator.Reconcile](Scrypath.Operator.Reconcile.md): Report-first reconciliation returned by `Scrypath.reconcile_sync/2`.
- [Scrypath.Operator.Reconcile.ReindexVisibility](Scrypath.Operator.Reconcile.ReindexVisibility.md): Reindex visibility embedded in a reconcile report.
- [Scrypath.Operator.RecoveryAction](Scrypath.Operator.RecoveryAction.md): Explicit recovery action used by Scrypath operator APIs.
- [Scrypath.Operator.State](Scrypath.Operator.State.md): Stable operator state projected from backend tasks and queue jobs.
- [Scrypath.Operator.Status](Scrypath.Operator.Status.md): Read-only sync visibility returned by `Scrypath.sync_status/2`.
- [Scrypath.Projection](Scrypath.Projection.md): Document projection for schemas declared with `use Scrypath`.
- [Scrypath.Query](Scrypath.Query.md): Internal normalized search query struct used by the common search path and
backend adapters.

- [Scrypath.Schema](Scrypath.Schema.md): Metadata-only schema declaration support for `use Scrypath`.
- [Scrypath.SearchResult.Facets](Scrypath.SearchResult.Facets.md): Facet counts and stats decoded from a Meilisearch search response.
- [Scrypath.SearchResult.Facets.Bucket](Scrypath.SearchResult.Facets.Bucket.md): One entry from Meilisearch `facetDistribution`: a facet **value** and its document **count**.

## Mix Tasks

- [mix scrypath.failed](Mix.Tasks.Scrypath.Failed.md): Lists Scrypath-owned failed-work entries for one searchable schema.
- [mix scrypath.reconcile](Mix.Tasks.Scrypath.Reconcile.md): Shows a report-first reconcile view for one schema. Pass `--action` to apply one
explicit recovery action from that report.

- [mix scrypath.retry](Mix.Tasks.Scrypath.Retry.md): Retries one explicit failed-work entry by id using the existing Scrypath operator APIs.

- [mix scrypath.settings.diff](Mix.Tasks.Scrypath.Settings.Diff.md): Diffs declared-vs-applied Meilisearch settings for one Scrypath schema.
- [mix scrypath.settings.hot_apply](Mix.Tasks.Scrypath.Settings.HotApply.md): Applies a bounded live Meilisearch settings PATCH for one Scrypath schema.
- [mix scrypath.settings.read](Mix.Tasks.Scrypath.Settings.Read.md): Reads current applied Meilisearch settings for one Scrypath schema and prints them.
- [mix scrypath.status](Mix.Tasks.Scrypath.Status.md): Shows pending, failed, and last-successful sync visibility for one searchable schema.

- [mix verify.meilisearch_smoke](Mix.Tasks.Verify.MeilisearchSmoke.md): Runs a **fixed** set of `@moduletag :integration` suites against a real Meilisearch.
- [mix verify.phase10](Mix.Tasks.Verify.Phase10.md): Runs the auth-free release-confidence verification flow.
- [mix verify.phase11](Mix.Tasks.Verify.Phase11.md): Runs the automated release-alignment verification flow.
- [mix verify.phase13](Mix.Tasks.Verify.Phase13.md): Runs the focused operator verification flow.
- [mix verify.phase5](Mix.Tasks.Verify.Phase5.md): Runs the focused verification flow for backfill, reindex, Meilisearch integration, and operator-facing docs.
- [mix verify.phase8](Mix.Tasks.Verify.Phase8.md): Runs the focused reliability verification flow.
- [mix verify.release_parity](Mix.Tasks.Verify.ReleaseParity.md): Verifies that the file list inside the published Hex tarball for `X.Y.Z`
matches the file list inside `lib/ + guides/ + docs/` at git tag
`scrypath-vX.Y.Z`.
- [mix verify.release_publish](Mix.Tasks.Verify.ReleasePublish.md): Verifies the live publish contract for a released Scrypath version.
- [mix verify.workspace_clean](Mix.Tasks.Verify.WorkspaceClean.md): Verifies that `git status` is clean for all pathspecs that ship in the Hex
tarball plus `test/**`.

