Modules
Scrypath is the runtime surface for schema → sync → search: you declare how records map into a Meilisearch index, enqueue or inline sync work, then query through the same Ecto-native boundaries your Phoenix or contexts already own.
Internal backend behavior for Scrypath runtime adapters.
Public plain-data composition seam for reusable search presets and additive scopes.
Typed helpers for the public composition result envelope.
Internal runtime configuration helpers for Scrypath.
Internal projected search document used between Scrypath orchestration layers.
Merge helpers for Meilisearch facetDistribution JSON maps when building disjunctive facet counts.
Meilisearch-specific runtime entrypoints for Scrypath.
Decodes federated /multi-search responses into per-index raw maps suitable
for building the public search result structs returned from Scrypath.search/3.
Builds Meilisearch /indexes/:uid/search JSON bodies from Scrypath.Query.
Public plain-data reflection helpers for search capabilities and resolved state.
Normalizes search_many/2 entry tuples and shared runtime options.
Federated multi-search metadata mirrored from Meilisearch's federation object.
Narrow Oban helpers for composing Scrypath sync jobs into Ecto.Multi.
Opt-in enriched result from Scrypath.failed_sync_work/2 when
reason_class_counts: true is passed in operator options.
Failed sync work returned by Scrypath.failed_sync_work/2.
Structured comparison of a schema's declared index contract against live Meilisearch index settings.
Dense per-class counts for failed sync work rows.
Report-first reconciliation returned by Scrypath.reconcile_sync/2.
Reindex visibility embedded in a reconcile report.
Explicit recovery action used by Scrypath operator APIs.
Stable operator state projected from backend tasks and queue jobs.
Read-only sync visibility returned by Scrypath.sync_status/2.
Optional request-edge helpers for Phoenix controllers and LiveView.
Document projection for schemas declared with use Scrypath.
%Scrypath.Query{} is internal normalized query state produced by the common search
path before a backend sees it. It is not a semver-stable pattern-match target for
application code—callers should build options as keywords for Scrypath.search/3 and treat
this struct as an implementation detail behind Scrypath.Meilisearch.Query (or other
adapters).
Public request-edge toolkit for turning top-level request params into one stable plain-data Scrypath search-args shape.
Structured request-edge issue for Scrypath.QueryParams.normalize/1.
Metadata-only schema declaration support for use Scrypath.
Raised by bang search helpers when the matching non-bang API would return {:error, reason}.
Facet counts and stats decoded from a Meilisearch search response.
One entry from Meilisearch facetDistribution: a facet value and its document count.
Mix Tasks
Lists Scrypath-owned failed-work entries for one searchable schema.
Compares a schema's declared index contract (fields, filterables, sortables,
faceting, and declared Meilisearch settings families) against the live index
via a single read-only Meilisearch get_settings call.
Fails when Sigra references leak outside the allowed integration namespace.
Shows a report-first reconcile view for one schema. Pass --action to apply one
explicit recovery action from that report.
Retries one explicit failed-work entry by id using the existing Scrypath operator APIs.
Diffs declared-vs-applied Meilisearch settings for one Scrypath schema.
Applies a bounded live Meilisearch settings PATCH for one Scrypath schema.
Reads current applied Meilisearch settings for one Scrypath schema and prints them.
Shows pending, failed, and last-successful sync visibility for one searchable schema.
Runs the maintainer-facing adopter verification flow from the repository root.
Runs a fixed set of @moduletag :integration suites against a real Meilisearch.
Runs the scrypath_ops application tests the same way the scrypath-ops GitHub Actions job does.
Runs the auth-free release-confidence verification flow.
Runs the automated release-alignment verification flow.
Runs the focused operator verification flow.
Runs the focused verification flow for backfill, reindex, and Meilisearch integration.
Runs the focused reliability verification flow.
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.
Verifies the live publish contract for a released Scrypath version.
Verifies that git status is clean for all pathspecs that ship in the Hex
tarball plus test/**.