Implement incremental Ignixa SDK adoption and FHIRPath seam - #5776
Draft
Brendan Kowitz (brendankowitz) wants to merge 27 commits into
Draft
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Keep TRX comparison and detailed CSV labels short and stable while retaining verbose image and provider descriptions for ingestion reports. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Redact persisted probe values and isolate credential-free self-test artifacts. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Use lock-free concurrent lookups for compiled expressions while serializing only cache misses and FIFO eviction. Add a bounded cold-cache concurrency test across shared FHIR versions. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Use non-resetting path joins, remove test-only generic catches, and assert the SMART access contract instead of a stale aggregate count. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 1bbbbddc-baea-4d84-8111-55fe485c5485
Assert the newly indexed Patient A Immunization and deterministic total, and document that compile and evaluation failures are intentionally contained for observable write availability. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 1bbbbddc-baea-4d84-8111-55fe485c5485
Record the measured provider-versus-legacy index difference and cancellation behavior at the FHIRPath failure boundary. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Consume the compiled FHIRPath correctness fixes, recursive schema resolution, and element-model performance improvements released in Ignixa 0.6.73. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5c56feff-ca9b-48b2-a23a-739fbfc6e7dd
Add isolated STU3 and R4 SQL canaries using Ignixa, shared deployment defaults, provider assertions, and deployed-app E2E coverage in PR and main CI. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Provision persistent main canaries and isolated small vNext pools, preserve configured SDK providers, and validate the complete deployment flow in PR and main CI. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Propagate optional topology expectations through shared E2E templates and fail vNext jobs before execution when the deployed Key Vault, SQL database, server, or elastic pool differs from the intended lane. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Resolve cloud-specific Key Vault and SQL DNS suffixes from the active Azure environment, reject lookalike hosts, and mask emitted Key Vault pipeline variables. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Wrap Azure environment resolution failures with actionable service-connection guidance while preserving the original exception. Cover null, missing, blank, thrown, and leading-dot suffix metadata behavior. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Raise only the isolated vNext pool, compile-time gate integration jobs, and make credential-free plan prerequisites explicit. Clarify that E2E Key Vault variables are secret and masked while preserving legacy provisioning behavior. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## personal/bkowitz/ignixa-fhirpath-seam #5776 +/- ##
========================================================================
Coverage ? 77.81%
========================================================================
Files ? 1019
Lines ? 37400
Branches ? 5708
========================================================================
Hits ? 29104
Misses ? 6910
Partials ? 1386 🚀 New features to boost your workflow:
|
Allow the persistent CI environment to deploy existing images without compiling version or Docker stages, while preserving the default image-build flow. Validate both compiled plans and reject blank recovery tags before provisioning. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4dc0f8fb-a736-41f8-a238-98a5ced56336
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Architecture
The migration is governed by a single ADR:
docs/arch/adr-2608-ignixa-sdk-migration.md.The decision is to migrate capability by capability, retain Firely as the default for unmigrated or unapproved behavior, avoid silent runtime fallback, and require semantic parity plus production-shaped performance evidence before enabling an Ignixa seam.
Configuration
ImportandFhirPathremain independently selectable so each capability can be evaluated and rolled back separately.Validation
Review notes
$patchnode selection remains Firely-backed until its element-model behavior can migrate without losing node identity