API Reference scrypath v#0.3.6

Copy Markdown View Source

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.

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.

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.

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.

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).

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/**.