Skip to content

Implement partial patch support for illconfig and catalogconfig. Incl… - #703

Open
kurtnordstrom wants to merge 3 commits into
mainfrom
illdev-474-fix-inconsistencies
Open

Implement partial patch support for illconfig and catalogconfig. Incl…#703
kurtnordstrom wants to merge 3 commits into
mainfrom
illdev-474-fix-inconsistencies

Conversation

@kurtnordstrom

Copy link
Copy Markdown
Contributor

…ude child branches in cql results

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enhances the Directory service’s PATCH semantics for entry configuration sub-resources and adjusts CQL entry searching to include immediate child branches of matched entries, improving both configuration management flexibility and search completeness.

Changes:

  • Add CQL expansion so GET /entries?cql=... returns matched entries plus their direct children (with deduping, ordering, and pagination applied after expansion).
  • Implement partial/merge PATCH behavior for illConfig, catalogConfig, and holdingsPolicy (including explicit null/empty handling for deletions/clears where supported).
  • Extend integration tests to cover nested null semantics, partial creation/merge behavior, and child-including CQL behavior.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
directory/test/entries_test.go Adds/updates integration tests for partial PATCH merge semantics, null handling, and expanded CQL results including children.
directory/query.sql Adds sqlc queries needed to fetch originals (for merge semantics) and to delete LMS configs by entry.
directory/api/entries.go Implements CQL expansion query wrapper and merges PATCH logic for lmsConfig/catalogConfig/illConfig/holdingsPolicy.
directory/api/entries_test.go Extends unit coverage for the new CQL SQL wrapper generation.
directory/api/catalog_config.go Adds patch validation + recursive merge logic for catalogConfig, and merge helper for holdingsPolicy + illConfig patch merging.
directory/api.yaml Introduces patch schemas (e.g., CatalogConfigPatch) and nullable fields to support explicit null semantics in PATCH.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread directory/api/entries.go
kurtnordstrom and others added 2 commits August 10, 2026 16:17
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@kurtnordstrom
kurtnordstrom marked this pull request as ready for review August 11, 2026 02:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants