Skip to content

Harden configuration validation and move catalog data under the package - #1

Merged
brunovicco merged 1 commit into
mainfrom
refactor/catalog-data-to-package
Jul 17, 2026
Merged

brunovicco merged 1 commit into
mainfrom
refactor/catalog-data-to-package

Conversation

@brunovicco

Copy link
Copy Markdown
Owner

Summary

  • Settings now validates backend selectors and numeric bounds at the process
    boundary and fails closed on misconfiguration, instead of silently degrading.
  • Adds explicit settings for context size, catalog result limits, and the
    Groq/DSPy backend (model, API base, optional compiled router artifact).
  • Moves catalog JSON from top-level data/ into src/meridian/data/catalog
    so it ships as package data (pyproject.toml package-data entry added).
  • CI now runs a format check and builds the distribution; Redis Compose ports
    bind to 127.0.0.1 only.

Test plan

  • make check (format, lint, typecheck, test) passes
  • make demo runs end-to-end with fake providers and no credentials
  • make redis-up && MERIDIAN_BACKEND=redis make demo still finds the catalog data after the move
  • Invalid MERIDIAN_BACKEND / MERIDIAN_LLM_BACKEND values raise a clear
    error instead of degrading silently

…ge" -m "Settings now validates backend selectors and

numeric bounds at the
process boundary (fail closed) and gains explicit knobs for context
size, catalog limits, and the Groq/DSPy backend. Catalog JSON moves from top-level data/ into src/meridian/data so it ships as package data. CI adds a format check and a build step; Redis ports bind to localhost only.
@brunovicco
brunovicco merged commit 1f68ec7 into main Jul 17, 2026
3 checks passed
brunovicco added a commit that referenced this pull request Jul 18, 2026
main squash-merged an equivalent of this branch's own "Harden
configuration validation and move catalog data under the package"
commit (PR #1, 1f68ec7) under a different hash, so git had no shared
history to fast-forward through. Resolved by keeping this branch's
side everywhere it is a strict superset of main's (flat-demo Makefile
target and README sections, the enriched knowledge-base content, the
dspy.Refine warn_on_type_mismatch fix, the router tie-break tests) -
verified the pre-merge diffs of the two equivalent commits were
byte-identical before doing so. No conflicts touched application logic
outside the two files already conflicting on wording.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant