messagefoundry 0.2.15__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/CHANGELOG.md +67 -2
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/PKG-INFO +25 -19
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/README.md +17 -13
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/__init__.py +48 -1
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/__main__.py +956 -39
- messagefoundry-0.3.0/messagefoundry/actions.py +315 -0
- messagefoundry-0.3.0/messagefoundry/api/_ui_seam.py +136 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/app.py +741 -977
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/auth_models.py +18 -0
- messagefoundry-0.3.0/messagefoundry/api/auth_routes.py +993 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/metrics.py +163 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/models.py +137 -1
- messagefoundry-0.3.0/messagefoundry/api/security.py +590 -0
- messagefoundry-0.3.0/messagefoundry/api/tls_client_cert.py +110 -0
- messagefoundry-0.3.0/messagefoundry/apiclient/__init__.py +18 -0
- {messagefoundry-0.2.15/messagefoundry/console → messagefoundry-0.3.0/messagefoundry/apiclient}/client.py +24 -5
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/ldap.py +17 -3
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/permissions.py +11 -1
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/service.py +161 -6
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/checks.py +323 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/ai_policy.py +10 -7
- messagefoundry-0.3.0/messagefoundry/config/code_sets.py +600 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/codeset_edit.py +115 -6
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/connections_edit.py +1 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/connections_file.py +30 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/fhir_lookup.py +27 -6
- messagefoundry-0.3.0/messagefoundry/config/graph.py +1193 -0
- messagefoundry-0.3.0/messagefoundry/config/impact.py +670 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/models.py +222 -1
- messagefoundry-0.3.0/messagefoundry/config/reachability.py +144 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/run_context.py +28 -0
- messagefoundry-0.3.0/messagefoundry/config/secretprovider.py +183 -0
- messagefoundry-0.3.0/messagefoundry/config/secretprovider_vault.py +132 -0
- messagefoundry-0.3.0/messagefoundry/config/send_snapshot.py +51 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/settings.py +727 -46
- messagefoundry-0.3.0/messagefoundry/config/tls_policy.py +769 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/wiring.py +563 -33
- messagefoundry-0.3.0/messagefoundry/corepoint_import.py +590 -0
- messagefoundry-0.3.0/messagefoundry/diagnostics.py +58 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/adt.py +5 -61
- messagefoundry-0.3.0/messagefoundry/hl7structures.py +229 -0
- messagefoundry-0.3.0/messagefoundry/lens.py +2993 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/logging_setup.py +109 -8
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/__init__.py +2 -1
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/_builtin_hl7.py +97 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/binary.py +210 -1
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/message.py +77 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/split.py +48 -1
- messagefoundry-0.3.0/messagefoundry/pipeline/_sandbox_worker.py +208 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/alert_sinks.py +50 -3
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/alerts.py +61 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/cluster.py +69 -8
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/cluster_sqlserver.py +53 -7
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/dr.py +218 -6
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/dryrun.py +288 -37
- messagefoundry-0.3.0/messagefoundry/pipeline/dryrun_trace.py +414 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/engine.py +291 -3
- messagefoundry-0.3.0/messagefoundry/pipeline/phase_timing.py +222 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/retention.py +60 -1
- messagefoundry-0.3.0/messagefoundry/pipeline/sandbox.py +383 -0
- messagefoundry-0.3.0/messagefoundry/pipeline/saturation.py +100 -0
- messagefoundry-0.3.0/messagefoundry/pipeline/secret_rotation.py +210 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/security_notify.py +16 -3
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/sharding.py +62 -6
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/stage_dispatcher.py +163 -5
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/wiring_runner.py +1662 -153
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/secrets_dpapi.py +1 -1
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/__init__.py +2 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/base.py +262 -9
- messagefoundry-0.3.0/messagefoundry/store/crypto.py +484 -0
- messagefoundry-0.3.0/messagefoundry/store/keyprovider_vault.py +145 -0
- messagefoundry-0.3.0/messagefoundry/store/metadata.py +97 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/postgres.py +1198 -54
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/sqlserver.py +1771 -143
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/store.py +1664 -146
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/__init__.py +1 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/base.py +47 -5
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/database.py +243 -16
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/dicom.py +65 -10
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/dicomweb.py +40 -8
- messagefoundry-0.3.0/messagefoundry/transports/direct.py +373 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/email.py +22 -2
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/fhir.py +193 -40
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/file.py +59 -8
- messagefoundry-0.3.0/messagefoundry/transports/http_auth.py +418 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/mllp.py +272 -10
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/remotefile.py +183 -26
- messagefoundry-0.3.0/messagefoundry/transports/rest.py +737 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/smart.py +7 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/soap.py +138 -30
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/tcp.py +20 -2
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/x12.py +24 -3
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/checks.py +9 -6
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/pyproject.toml +44 -14
- messagefoundry-0.2.15/.claude/settings.json +0 -81
- messagefoundry-0.2.15/.dockerignore +0 -45
- messagefoundry-0.2.15/.gitattributes +0 -5
- messagefoundry-0.2.15/.github/CODEOWNERS +0 -19
- messagefoundry-0.2.15/.github/ISSUE_TEMPLATE/bug_report.md +0 -41
- messagefoundry-0.2.15/.github/ISSUE_TEMPLATE/config.yml +0 -7
- messagefoundry-0.2.15/.github/ISSUE_TEMPLATE/feature_request.md +0 -24
- messagefoundry-0.2.15/.github/PULL_REQUEST_TEMPLATE.md +0 -29
- messagefoundry-0.2.15/.github/SECURITY.md +0 -84
- messagefoundry-0.2.15/.github/dependabot.yml +0 -68
- messagefoundry-0.2.15/.github/workflows/benchmark.yml +0 -217
- messagefoundry-0.2.15/.github/workflows/ci.yml +0 -1144
- messagefoundry-0.2.15/.github/workflows/cla.yml +0 -52
- messagefoundry-0.2.15/.github/workflows/codeql.yml +0 -67
- messagefoundry-0.2.15/.github/workflows/dependabot-auto-merge.yml +0 -165
- messagefoundry-0.2.15/.github/workflows/dependabot-lock-resync.yml +0 -95
- messagefoundry-0.2.15/.github/workflows/freethread-smoke.yml +0 -95
- messagefoundry-0.2.15/.github/workflows/manifest-lint.yml +0 -114
- messagefoundry-0.2.15/.github/workflows/release-sync-check.yml +0 -44
- messagefoundry-0.2.15/.github/workflows/release.yml +0 -246
- messagefoundry-0.2.15/.github/workflows/scorecard.yml +0 -59
- messagefoundry-0.2.15/.github/workflows/security.yml +0 -280
- messagefoundry-0.2.15/.github/workflows/selfhosted-win2025-sql.yml +0 -85
- messagefoundry-0.2.15/.github/workflows/vuln-metrics.yml +0 -40
- messagefoundry-0.2.15/.github/workflows/zizmor.yml +0 -47
- messagefoundry-0.2.15/.github/zizmor.yml +0 -31
- messagefoundry-0.2.15/.gitleaks.toml +0 -14
- messagefoundry-0.2.15/.mefor-hooks/pre-commit +0 -25
- messagefoundry-0.2.15/.pre-commit-config.yaml +0 -49
- messagefoundry-0.2.15/.semgrep/messagefoundry.yml +0 -52
- messagefoundry-0.2.15/CLA.md +0 -74
- messagefoundry-0.2.15/CLAUDE.md +0 -443
- messagefoundry-0.2.15/CODE_OF_CONDUCT.md +0 -42
- messagefoundry-0.2.15/COMMERCIAL-LICENSE.md +0 -67
- messagefoundry-0.2.15/CONTRIBUTING.md +0 -83
- messagefoundry-0.2.15/GOVERNANCE.md +0 -73
- messagefoundry-0.2.15/MAINTAINERS.md +0 -32
- messagefoundry-0.2.15/docker/Dockerfile +0 -121
- messagefoundry-0.2.15/docker/README.md +0 -136
- messagefoundry-0.2.15/docker/compose.yaml +0 -201
- messagefoundry-0.2.15/docker/k8s/ha-postgres.yaml +0 -242
- messagefoundry-0.2.15/docker/k8s/secret.example.yaml +0 -37
- messagefoundry-0.2.15/docker/k8s/statefulset.yaml +0 -132
- messagefoundry-0.2.15/docker/locks/requirements-core.lock +0 -370
- messagefoundry-0.2.15/docker/locks/requirements-sqlserver.lock +0 -395
- messagefoundry-0.2.15/docker/secrets.env.example +0 -15
- messagefoundry-0.2.15/docker/smoke/Dockerfile +0 -20
- messagefoundry-0.2.15/docker/smoke/config/IB_Test_ADT.py +0 -29
- messagefoundry-0.2.15/docker/smoke/send_adt.py +0 -62
- messagefoundry-0.2.15/docs/ADOPTER-CI.md +0 -183
- messagefoundry-0.2.15/docs/AI.md +0 -221
- messagefoundry-0.2.15/docs/ANTIVIRUS-FIREWALL.md +0 -219
- messagefoundry-0.2.15/docs/AOAG-DEPLOYMENT.md +0 -919
- messagefoundry-0.2.15/docs/ARCHITECTURE.md +0 -344
- messagefoundry-0.2.15/docs/BACKLOG.md +0 -3924
- messagefoundry-0.2.15/docs/BRAND.md +0 -103
- messagefoundry-0.2.15/docs/CI-QUALITY.md +0 -57
- messagefoundry-0.2.15/docs/CI-SELFHOSTED-RUNNER.md +0 -133
- messagefoundry-0.2.15/docs/CLOUD-DEPLOYMENT.md +0 -306
- messagefoundry-0.2.15/docs/CLOUD-PHI-HIPAA.md +0 -185
- messagefoundry-0.2.15/docs/CLUSTERING.md +0 -306
- messagefoundry-0.2.15/docs/CODESETS.md +0 -109
- messagefoundry-0.2.15/docs/CONFIGURATION.md +0 -869
- messagefoundry-0.2.15/docs/CONNECTIONS.md +0 -1354
- messagefoundry-0.2.15/docs/CONTAINER-EXPOSURE-EVALUATION.md +0 -349
- messagefoundry-0.2.15/docs/CONTRIBUTOR-FIRST-ISSUES.md +0 -73
- messagefoundry-0.2.15/docs/CONTRIBUTOR-PROGRAM-PLAN.md +0 -282
- messagefoundry-0.2.15/docs/COUNSEL-ENGAGEMENT-BRIEF.md +0 -268
- messagefoundry-0.2.15/docs/DEPLOY-SERVER-DB.md +0 -220
- messagefoundry-0.2.15/docs/DEPLOYMENT.md +0 -289
- messagefoundry-0.2.15/docs/DICOM.md +0 -141
- messagefoundry-0.2.15/docs/DUAL_LICENSING_PLAN.md +0 -67
- messagefoundry-0.2.15/docs/EARLY-ADOPTER-GUIDE.md +0 -854
- messagefoundry-0.2.15/docs/FEATURE-MAP.md +0 -220
- messagefoundry-0.2.15/docs/HL7-VALIDATION.md +0 -115
- messagefoundry-0.2.15/docs/INSTALL-GUIDE.md +0 -340
- messagefoundry-0.2.15/docs/LOAD-TESTING.md +0 -261
- messagefoundry-0.2.15/docs/MENTAL-MODEL.md +0 -494
- messagefoundry-0.2.15/docs/MessageFoundry-Mental-Model.docx +0 -0
- messagefoundry-0.2.15/docs/PHI.md +0 -688
- messagefoundry-0.2.15/docs/POSITIONING.md +0 -70
- messagefoundry-0.2.15/docs/REMOTE-CONSOLE-CUSTOMER-GUIDE.md +0 -176
- messagefoundry-0.2.15/docs/REMOTE-CONSOLE.md +0 -125
- messagefoundry-0.2.15/docs/SECURITY-REMEDIATION-LEDGER.md +0 -84
- messagefoundry-0.2.15/docs/SECURITY.md +0 -621
- messagefoundry-0.2.15/docs/SERVICE.md +0 -366
- messagefoundry-0.2.15/docs/SUPPORT-POLICY.md +0 -39
- messagefoundry-0.2.15/docs/SYSTEM-REQUIREMENTS.md +0 -176
- messagefoundry-0.2.15/docs/Secure_AI_Development_Standards.md +0 -597
- messagefoundry-0.2.15/docs/Secure_Development_Standards.md +0 -499
- messagefoundry-0.2.15/docs/TEE-RELAY.md +0 -126
- messagefoundry-0.2.15/docs/THROUGHPUT-IMPROVEMENTS.md +0 -197
- messagefoundry-0.2.15/docs/THROUGHPUT.md +0 -304
- messagefoundry-0.2.15/docs/USER-GUIDE.md +0 -625
- messagefoundry-0.2.15/docs/VERSION-CONTROL.md +0 -171
- messagefoundry-0.2.15/docs/WORKTREES.md +0 -97
- messagefoundry-0.2.15/docs/adr/0001-staged-pipeline-architecture.md +0 -250
- messagefoundry-0.2.15/docs/adr/0002-phase2-transport-security-and-strong-auth.md +0 -273
- messagefoundry-0.2.15/docs/adr/0003-non-hl7-transports-database-rest-soap.md +0 -185
- messagefoundry-0.2.15/docs/adr/0004-payload-agnostic-ingress.md +0 -161
- messagefoundry-0.2.15/docs/adr/0005-transform-accessible-state.md +0 -170
- messagefoundry-0.2.15/docs/adr/0006-external-data-lookups.md +0 -208
- messagefoundry-0.2.15/docs/adr/0007-gui-manageable-connections-toml.md +0 -160
- messagefoundry-0.2.15/docs/adr/0008-cluster-observability-api.md +0 -131
- messagefoundry-0.2.15/docs/adr/0009-run-scoped-context-providers.md +0 -91
- messagefoundry-0.2.15/docs/adr/0010-handler-callable-db-lookup.md +0 -90
- messagefoundry-0.2.15/docs/adr/0011-timer-scheduled-source.md +0 -116
- messagefoundry-0.2.15/docs/adr/0012-x12-edi-codec.md +0 -308
- messagefoundry-0.2.15/docs/adr/0013-increment-2-reingress-design.md +0 -931
- messagefoundry-0.2.15/docs/adr/0013-query-response-orchestration.md +0 -490
- messagefoundry-0.2.15/docs/adr/0014-alerting-rules-engine.md +0 -126
- messagefoundry-0.2.15/docs/adr/0015-ws-soap-outbound-mtls-wssecurity.md +0 -445
- messagefoundry-0.2.15/docs/adr/0016-synchronous-x12-request-response.md +0 -500
- messagefoundry-0.2.15/docs/adr/0017-consumer-deployment-model.md +0 -256
- messagefoundry-0.2.15/docs/adr/0018-per-message-signatures-accepted-risk.md +0 -130
- messagefoundry-0.2.15/docs/adr/0019-pluggable-keyprovider-hsm-kms-vault.md +0 -430
- messagefoundry-0.2.15/docs/adr/0020-protocol-diagnostic-capture.md +0 -90
- messagefoundry-0.2.15/docs/adr/0021-inbound-ack-nak-capture-response-sent.md +0 -172
- messagefoundry-0.2.15/docs/adr/0022-fhir-resource-codec-rest-client.md +0 -594
- messagefoundry-0.2.15/docs/adr/0023-inbound-http-listener.md +0 -326
- messagefoundry-0.2.15/docs/adr/0024-smart-backend-services-token-provider.md +0 -296
- messagefoundry-0.2.15/docs/adr/0025-dicom-codec-store-connectors.md +0 -835
- messagefoundry-0.2.15/docs/adr/0026-off-box-egress-update-check.md +0 -122
- messagefoundry-0.2.15/docs/adr/0027-per-connection-retention.md +0 -208
- messagefoundry-0.2.15/docs/adr/0028-base64-binary-carriage-codec.md +0 -174
- messagefoundry-0.2.15/docs/adr/0029-email-smtp-destination.md +0 -267
- messagefoundry-0.2.15/docs/adr/0030-anonymization-test-harness-tee.md +0 -399
- messagefoundry-0.2.15/docs/adr/0031-startup-connection-fault-isolation.md +0 -156
- messagefoundry-0.2.15/docs/adr/0032-console-desktop-launch.md +0 -402
- messagefoundry-0.2.15/docs/adr/0033-gui-manageable-code-sets.md +0 -212
- messagefoundry-0.2.15/docs/adr/0034-static-analysis-triage-policy-accepted-risk-register.md +0 -80
- messagefoundry-0.2.15/docs/adr/0035-ide-extension-workspace-trust-and-scope.md +0 -102
- messagefoundry-0.2.15/docs/adr/0036-windows-config-source-trust.md +0 -107
- messagefoundry-0.2.15/docs/adr/0037-multi-process-sharding-l3.md +0 -112
- messagefoundry-0.2.15/docs/adr/0038-internal-pass-through-connector.md +0 -111
- messagefoundry-0.2.15/docs/adr/0039-database-tier-sharding-l5.md +0 -110
- messagefoundry-0.2.15/docs/adr/0040-free-threaded-engine-support.md +0 -95
- messagefoundry-0.2.15/docs/adr/0041-load-path-attestation-and-change-attribution.md +0 -248
- messagefoundry-0.2.15/docs/adr/0042-embedded-document-pruning.md +0 -177
- messagefoundry-0.2.15/docs/adr/0043-fhir-read-lookup.md +0 -303
- messagefoundry-0.2.15/docs/adr/0044-operator-alert-state.md +0 -262
- messagefoundry-0.2.15/docs/adr/0045-custom-rbac-roles.md +0 -266
- messagefoundry-0.2.15/docs/adr/0046-message-content-search.md +0 -251
- messagefoundry-0.2.15/docs/adr/0047-cloud-kubernetes-ha-deployment-packaging.md +0 -325
- messagefoundry-0.2.15/docs/adr/0048-third-tier-disaster-recovery-standby.md +0 -648
- messagefoundry-0.2.15/docs/adr/0049-turnkey-dr-backup-restore-verify.md +0 -525
- messagefoundry-0.2.15/docs/adr/0050-single-project-root-config-anchoring.md +0 -404
- messagefoundry-0.2.15/docs/adr/0051-corepoint-throughput-parity-strategy.md +0 -183
- messagefoundry-0.2.15/docs/adr/0052-enterprise-scale-target.md +0 -101
- messagefoundry-0.2.15/docs/adr/0053-free-threaded-multicore-engine.md +0 -249
- messagefoundry-0.2.15/docs/adr/0054-low-allocation-builtins-hl7-parser.md +0 -221
- messagefoundry-0.2.15/docs/adr/0055-group-commit-durable-write.md +0 -152
- messagefoundry-0.2.15/docs/adr/0056-engine-managed-vip-failover.md +0 -643
- messagefoundry-0.2.15/docs/adr/0057-inline-step-a-fast-path.md +0 -184
- messagefoundry-0.2.15/docs/adr/0058-batch-claim-fifo-prefix.md +0 -251
- messagefoundry-0.2.15/docs/adr/0059-seq-only-fifo-ordering.md +0 -55
- messagefoundry-0.2.15/docs/adr/0060-rename-based-fifo-index-migration.md +0 -78
- messagefoundry-0.2.15/docs/adr/0061-per-lane-wake-events.md +0 -139
- messagefoundry-0.2.15/docs/adr/0062-default-store-pool-size.md +0 -137
- messagefoundry-0.2.15/docs/adr/0063-no-split-store-unified-store-for-sharding.md +0 -101
- messagefoundry-0.2.15/docs/adr/0064-schema-init-fastpath.md +0 -67
- messagefoundry-0.2.15/docs/adr/0065-web-ops-dashboard.md +0 -231
- messagefoundry-0.2.15/docs/adr/0066-pooled-stage-claimers.md +0 -437
- messagefoundry-0.2.15/docs/adr/0067-persistent-outbound-mllp.md +0 -128
- messagefoundry-0.2.15/docs/adr/0068-browser-webauthn-passkeys-offloopback.md +0 -402
- messagefoundry-0.2.15/docs/adr/0069-durable-write-throughput-lever.md +0 -82
- messagefoundry-0.2.15/docs/adr/0071-cut-executor-round-trips-b5.md +0 -164
- messagefoundry-0.2.15/docs/adr/README.md +0 -90
- messagefoundry-0.2.15/docs/adr/TEMPLATE.md +0 -51
- messagefoundry-0.2.15/docs/architecture-components.png +0 -0
- messagefoundry-0.2.15/docs/architecture-components.svg +0 -1
- messagefoundry-0.2.15/docs/architecture-config-graph.png +0 -0
- messagefoundry-0.2.15/docs/architecture-config-graph.svg +0 -1
- messagefoundry-0.2.15/docs/architecture-diagram.md +0 -269
- messagefoundry-0.2.15/docs/architecture-message-flow.png +0 -0
- messagefoundry-0.2.15/docs/architecture-message-flow.svg +0 -1
- messagefoundry-0.2.15/docs/architecture-topology.png +0 -0
- messagefoundry-0.2.15/docs/architecture-topology.svg +0 -1
- messagefoundry-0.2.15/docs/benchmarks/TUNING-BASELINE.md +0 -207
- messagefoundry-0.2.15/docs/benchmarks/adr0066-pooled-claimer-744.md +0 -167
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/environment.txt +0 -14
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/failover-postgres.json +0 -83
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/failover-sqlserver.json +0 -83
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/reference-postgres.json +0 -235
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/reference-sqlite.json +0 -235
- messagefoundry-0.2.15/docs/benchmarks/results/2026-06-16-ci-linux/reference-sqlserver.json +0 -235
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/commit_storm.txt +0 -14
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/environment.txt +0 -42
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/perlane_pool128_r400.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/perlane_pool128_r800.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_ab_atscale.json +0 -572
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_ab_atscale.txt +0 -36
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_pool128_r150.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_pool128_r250.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_pool128_r350.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/pooled_pool128_r500.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/push_r100.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/push_r120.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/push_r160.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/push_r80.json +0 -86
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/walk_console_perlane128.txt +0 -27
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/walk_console_pool128.txt +0 -53
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-03-adr0066-pooled-atscale/walk_console_pool40.txt +0 -53
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-04-adr0071-b5-executor-marshaling/PROFILE_FINDINGS.md +0 -59
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-04-adr0071-b5-executor-marshaling/README.md +0 -71
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-04-adr0071-b5-executor-marshaling/b5_microbench.py +0 -617
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-04-adr0071-b5-executor-marshaling/engine_flame.svg +0 -491
- messagefoundry-0.2.15/docs/benchmarks/results/2026-07-04-adr0071-b5-executor-marshaling/profile_run.json +0 -62
- messagefoundry-0.2.15/docs/benchmarks/step-b-write-amplification.md +0 -76
- messagefoundry-0.2.15/docs/design/dbshard.md +0 -289
- messagefoundry-0.2.15/docs/design/freethread-spike.md +0 -177
- messagefoundry-0.2.15/docs/design/freethread.md +0 -253
- messagefoundry-0.2.15/docs/design/multiproc.md +0 -53
- messagefoundry-0.2.15/docs/hl7-message-ordering-reference.md +0 -86
- messagefoundry-0.2.15/docs/message-ordering-design.md +0 -209
- messagefoundry-0.2.15/docs/releases/ASVS-OPTION-A-MULTISESSION-PLAN.md +0 -284
- messagefoundry-0.2.15/docs/releases/ASVS-PARTIALS-SWEEP-MULTISESSION-PLAN.md +0 -373
- messagefoundry-0.2.15/docs/releases/DELTA-SECURITY-FIXES-MULTISESSION-PLAN.md +0 -197
- messagefoundry-0.2.15/docs/releases/DOGFOOD-BACKLOG-MULTISESSION-PLAN.md +0 -178
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN-3.md +0 -348
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN-4.md +0 -167
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN-5.md +0 -453
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN-6.md +0 -258
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN-v0.2.md +0 -526
- messagefoundry-0.2.15/docs/releases/MULTISESSION-PLAN.md +0 -275
- messagefoundry-0.2.15/docs/releases/PLAN-3-LANE-HANDOFFS.md +0 -145
- messagefoundry-0.2.15/docs/releases/V0.2-LANE-HANDOFFS.md +0 -116
- messagefoundry-0.2.15/docs/releases/v0.1-EXECUTION-PLAN.md +0 -343
- messagefoundry-0.2.15/docs/releases/v0.1-PLAN.md +0 -503
- messagefoundry-0.2.15/docs/releases/v0.1.0-PRETAG-CHECKLIST.md +0 -59
- messagefoundry-0.2.15/docs/research/cloud-deployment-research-2026-06.md +0 -137
- messagefoundry-0.2.15/docs/research/config-ux-review.md +0 -235
- messagefoundry-0.2.15/docs/research/non-hl7-transform-components.md +0 -275
- messagefoundry-0.2.15/docs/reviews/DELTA-REVIEW-2026-07-01.md +0 -262
- messagefoundry-0.2.15/docs/reviews/DEPENDENCY-INFOSEC-POSTURE-2026-06-23.md +0 -175
- messagefoundry-0.2.15/docs/reviews/FULL-REVIEW-2026-06-10.md +0 -271
- messagefoundry-0.2.15/docs/security/ADVISORY-PROCESS.md +0 -35
- messagefoundry-0.2.15/docs/security/ASVS-FAILS-REMEDIATION-PLAN.md +0 -887
- messagefoundry-0.2.15/docs/security/ASVS-L2-PHASE0-CHANGES.md +0 -194
- messagefoundry-0.2.15/docs/security/ASVS-L2-REMEDIATION-PLAN.md +0 -256
- messagefoundry-0.2.15/docs/security/ASVS-L3-ASSESSMENT.md +0 -1050
- messagefoundry-0.2.15/docs/security/ASVS-L3-REMEDIATION-PLAN.md +0 -514
- messagefoundry-0.2.15/docs/security/ASVS-L3-STATUS.md +0 -131
- messagefoundry-0.2.15/docs/security/BEYOND-ASVS-L3-ONEPAGE.md +0 -23
- messagefoundry-0.2.15/docs/security/BEYOND-ASVS-L3-REMEDIATION-PLAN-ONEPAGE.md +0 -31
- messagefoundry-0.2.15/docs/security/BEYOND-ASVS-L3-REMEDIATION-PLAN.md +0 -930
- messagefoundry-0.2.15/docs/security/BEYOND-ASVS-L3.md +0 -133
- messagefoundry-0.2.15/docs/security/DEP-CVE-RUNBOOK.md +0 -96
- messagefoundry-0.2.15/docs/security/DEPENDENCY-METRICS.md +0 -47
- messagefoundry-0.2.15/docs/security/MEFOR-Code-Review-Checklist.xlsx +0 -0
- messagefoundry-0.2.15/docs/security/OFF-LOOPBACK-DEPLOYMENT.md +0 -235
- messagefoundry-0.2.15/docs/security/PHASE-8C-RBAC.md +0 -111
- messagefoundry-0.2.15/docs/security/PUBLISHING.md +0 -126
- messagefoundry-0.2.15/docs/security/RCA-TEMPLATE.md +0 -60
- messagefoundry-0.2.15/docs/security/RELEASE-GATE.md +0 -94
- messagefoundry-0.2.15/docs/security/REMEDIATION-PLAN.md +0 -172
- messagefoundry-0.2.15/docs/security/REVIEW-2026-06-07.md +0 -521
- messagefoundry-0.2.15/docs/security/SDS-CONFORMANCE-REVIEW-2026-06-12.md +0 -228
- messagefoundry-0.2.15/docs/security/SDS-REMEDIATION-PLAN.md +0 -93
- messagefoundry-0.2.15/docs/security/SECURITY-POSTURE.md +0 -164
- messagefoundry-0.2.15/docs/security/SOUP-DEPENDENCY-HANDLING.md +0 -133
- messagefoundry-0.2.15/docs/security/SOUP-REVIEW-2026-06-18.md +0 -82
- messagefoundry-0.2.15/docs/security/SOUP-REVIEW-PROCEDURE.md +0 -231
- messagefoundry-0.2.15/docs/security/THREAT-MODEL.md +0 -156
- messagefoundry-0.2.15/docs/testing/VERIFY.md +0 -83
- messagefoundry-0.2.15/docs/testing/WIN2025-ACCEPTANCE.md +0 -73
- messagefoundry-0.2.15/docs/testing/WIN2025-TEST-MATRIX.md +0 -109
- messagefoundry-0.2.15/docs/testing/WIN2025-TEST-PLAN.md +0 -1550
- messagefoundry-0.2.15/docs/throughput-build-plan.md +0 -201
- messagefoundry-0.2.15/docs/throughput-roadmap.md +0 -380
- messagefoundry-0.2.15/environments/dev.toml +0 -32
- messagefoundry-0.2.15/environments/prod.toml +0 -33
- messagefoundry-0.2.15/harness/README.md +0 -101
- messagefoundry-0.2.15/harness/__main__.py +0 -551
- messagefoundry-0.2.15/harness/acceptance/__init__.py +0 -21
- messagefoundry-0.2.15/harness/acceptance/__main__.py +0 -93
- messagefoundry-0.2.15/harness/acceptance/matrix.py +0 -528
- messagefoundry-0.2.15/harness/acceptance/probes.py +0 -220
- messagefoundry-0.2.15/harness/acceptance/report.py +0 -147
- messagefoundry-0.2.15/harness/acceptance/runner.py +0 -176
- messagefoundry-0.2.15/harness/compose.py +0 -225
- messagefoundry-0.2.15/harness/config/connscale/__init__.py +0 -4
- messagefoundry-0.2.15/harness/config/connscale/_shape.py +0 -141
- messagefoundry-0.2.15/harness/config/connscale/gen_toml.py +0 -106
- messagefoundry-0.2.15/harness/config/connscale/graph.py +0 -94
- messagefoundry-0.2.15/harness/config/coverage.py +0 -80
- messagefoundry-0.2.15/harness/config/load/_shape.py +0 -155
- messagefoundry-0.2.15/harness/config/load/graph.py +0 -99
- messagefoundry-0.2.15/harness/config/passthrough/graph.py +0 -68
- messagefoundry-0.2.15/harness/config/store_once/graph.py +0 -73
- messagefoundry-0.2.15/harness/file_panel.py +0 -250
- messagefoundry-0.2.15/harness/file_transport.py +0 -165
- messagefoundry-0.2.15/harness/load/__init__.py +0 -17
- messagefoundry-0.2.15/harness/load/connscale/__init__.py +0 -14
- messagefoundry-0.2.15/harness/load/connscale/compare.py +0 -1082
- messagefoundry-0.2.15/harness/load/connscale/driver.py +0 -135
- messagefoundry-0.2.15/harness/load/connscale/probe.py +0 -363
- messagefoundry-0.2.15/harness/load/connscale/profile.py +0 -487
- messagefoundry-0.2.15/harness/load/connscale/report.py +0 -383
- messagefoundry-0.2.15/harness/load/connscale/runner.py +0 -971
- messagefoundry-0.2.15/harness/load/corpus.py +0 -176
- messagefoundry-0.2.15/harness/load/correlator.py +0 -73
- messagefoundry-0.2.15/harness/load/enginepoll.py +0 -384
- messagefoundry-0.2.15/harness/load/failover.py +0 -830
- messagefoundry-0.2.15/harness/load/failover_track.py +0 -143
- messagefoundry-0.2.15/harness/load/governor.py +0 -109
- messagefoundry-0.2.15/harness/load/ids.py +0 -42
- messagefoundry-0.2.15/harness/load/metrics.py +0 -219
- messagefoundry-0.2.15/harness/load/multishard.py +0 -808
- messagefoundry-0.2.15/harness/load/profile.py +0 -633
- messagefoundry-0.2.15/harness/load/profiles/README.md +0 -34
- messagefoundry-0.2.15/harness/load/profiles/adt-fanout-stress.toml +0 -116
- messagefoundry-0.2.15/harness/load/profiles/closed-loop.toml +0 -100
- messagefoundry-0.2.15/harness/load/profiles/connscale-smoke.toml +0 -31
- messagefoundry-0.2.15/harness/load/profiles/connscale.toml +0 -35
- messagefoundry-0.2.15/harness/load/profiles/failover.toml +0 -55
- messagefoundry-0.2.15/harness/load/profiles/fanout-baseline.toml +0 -92
- messagefoundry-0.2.15/harness/load/profiles/fuse_ab.toml +0 -68
- messagefoundry-0.2.15/harness/load/profiles/malformed-load.toml +0 -44
- messagefoundry-0.2.15/harness/load/profiles/pooled_ab.toml +0 -51
- messagefoundry-0.2.15/harness/load/profiles/reference.toml +0 -148
- messagefoundry-0.2.15/harness/load/profiles/smoke-sqlserver.toml +0 -42
- messagefoundry-0.2.15/harness/load/profiles/smoke.toml +0 -36
- messagefoundry-0.2.15/harness/load/profiles/soak.toml +0 -45
- messagefoundry-0.2.15/harness/load/profiles/spike-burst.toml +0 -50
- messagefoundry-0.2.15/harness/load/profiles/sustained-overload.toml +0 -51
- messagefoundry-0.2.15/harness/load/profiles/writeamp.toml +0 -41
- messagefoundry-0.2.15/harness/load/report.py +0 -647
- messagefoundry-0.2.15/harness/load/runner.py +0 -199
- messagefoundry-0.2.15/harness/load/sender.py +0 -322
- messagefoundry-0.2.15/harness/load/sink.py +0 -136
- messagefoundry-0.2.15/harness/mllp.py +0 -271
- messagefoundry-0.2.15/harness/monitor.py +0 -547
- messagefoundry-0.2.15/harness/receive.py +0 -137
- messagefoundry-0.2.15/harness/reconcile/__init__.py +0 -49
- messagefoundry-0.2.15/harness/reconcile/__main__.py +0 -149
- messagefoundry-0.2.15/harness/reconcile/capture.py +0 -150
- messagefoundry-0.2.15/harness/reconcile/compare.py +0 -179
- messagefoundry-0.2.15/harness/reconcile/normalize.py +0 -234
- messagefoundry-0.2.15/harness/reconcile/report.py +0 -73
- messagefoundry-0.2.15/harness/scenarios.py +0 -195
- messagefoundry-0.2.15/harness/send.py +0 -175
- messagefoundry-0.2.15/harness/window.py +0 -52
- messagefoundry-0.2.15/ide/.gitignore +0 -7
- messagefoundry-0.2.15/ide/.vscodeignore +0 -12
- messagefoundry-0.2.15/ide/README.md +0 -152
- messagefoundry-0.2.15/ide/esbuild.js +0 -28
- messagefoundry-0.2.15/ide/media/hl7schema.json +0 -1
- messagefoundry-0.2.15/ide/media/icon-amber.svg +0 -5
- messagefoundry-0.2.15/ide/media/icon.png +0 -0
- messagefoundry-0.2.15/ide/media/icon.svg +0 -6
- messagefoundry-0.2.15/ide/package-lock.json +0 -5685
- messagefoundry-0.2.15/ide/package.json +0 -437
- messagefoundry-0.2.15/ide/snippets/messagefoundry.code-snippets +0 -145
- messagefoundry-0.2.15/ide/src/aiPolicy.ts +0 -136
- messagefoundry-0.2.15/ide/src/alertEditor.ts +0 -329
- messagefoundry-0.2.15/ide/src/auth.ts +0 -134
- messagefoundry-0.2.15/ide/src/chat.ts +0 -167
- messagefoundry-0.2.15/ide/src/cli.ts +0 -248
- messagefoundry-0.2.15/ide/src/codeSetEditor.ts +0 -459
- messagefoundry-0.2.15/ide/src/codesetsTree.ts +0 -109
- messagefoundry-0.2.15/ide/src/completion.ts +0 -157
- messagefoundry-0.2.15/ide/src/connectionEditor.ts +0 -402
- messagefoundry-0.2.15/ide/src/editorToolbar.ts +0 -122
- messagefoundry-0.2.15/ide/src/engineClient.ts +0 -143
- messagefoundry-0.2.15/ide/src/engineTarget.ts +0 -44
- messagefoundry-0.2.15/ide/src/extension.ts +0 -249
- messagefoundry-0.2.15/ide/src/generate.ts +0 -99
- messagefoundry-0.2.15/ide/src/git.ts +0 -76
- messagefoundry-0.2.15/ide/src/graphTree.ts +0 -215
- messagefoundry-0.2.15/ide/src/home.ts +0 -133
- messagefoundry-0.2.15/ide/src/insertElement.ts +0 -78
- messagefoundry-0.2.15/ide/src/newRoute.ts +0 -327
- messagefoundry-0.2.15/ide/src/promote.ts +0 -196
- messagefoundry-0.2.15/ide/src/promoteTarget.ts +0 -55
- messagefoundry-0.2.15/ide/src/sourceControl.ts +0 -448
- messagefoundry-0.2.15/ide/src/test/runTest.ts +0 -22
- messagefoundry-0.2.15/ide/src/test/suite/ai-policy.test.ts +0 -65
- messagefoundry-0.2.15/ide/src/test/suite/chat.test.ts +0 -81
- messagefoundry-0.2.15/ide/src/test/suite/editor-toolbar.test.ts +0 -101
- messagefoundry-0.2.15/ide/src/test/suite/engine-target.test.ts +0 -43
- messagefoundry-0.2.15/ide/src/test/suite/extension.test.ts +0 -70
- messagefoundry-0.2.15/ide/src/test/suite/index.ts +0 -31
- messagefoundry-0.2.15/ide/src/test/suite/insert-element.test.ts +0 -83
- messagefoundry-0.2.15/ide/src/test/suite/promote-target.test.ts +0 -85
- messagefoundry-0.2.15/ide/src/test/suite/pythonpath.test.ts +0 -79
- messagefoundry-0.2.15/ide/src/test/suite/settings-scope.test.ts +0 -37
- messagefoundry-0.2.15/ide/src/testBench.ts +0 -310
- messagefoundry-0.2.15/ide/src/validate.ts +0 -54
- messagefoundry-0.2.15/ide/tsconfig.json +0 -13
- messagefoundry-0.2.15/ide/tsconfig.test.json +0 -12
- messagefoundry-0.2.15/mefor.code-workspace +0 -6
- messagefoundry-0.2.15/messagefoundry/api/auth_routes.py +0 -1698
- messagefoundry-0.2.15/messagefoundry/api/security.py +0 -251
- messagefoundry-0.2.15/messagefoundry/api/webui/__init__.py +0 -63
- messagefoundry-0.2.15/messagefoundry/api/webui/_auth.py +0 -458
- messagefoundry-0.2.15/messagefoundry/api/webui/_html.py +0 -157
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/__init__.py +0 -24
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/_common.py +0 -21
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/account.py +0 -637
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/admin.py +0 -480
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/audit.py +0 -67
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/config.py +0 -112
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/connections.py +0 -151
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/messages.py +0 -359
- messagefoundry-0.2.15/messagefoundry/api/webui/pages/monitoring.py +0 -404
- messagefoundry-0.2.15/messagefoundry/api/webui/static/app.css +0 -95
- messagefoundry-0.2.15/messagefoundry/api/webui/static/app.js +0 -265
- messagefoundry-0.2.15/messagefoundry/config/code_sets.py +0 -260
- messagefoundry-0.2.15/messagefoundry/config/tls_policy.py +0 -110
- messagefoundry-0.2.15/messagefoundry/console/__init__.py +0 -35
- messagefoundry-0.2.15/messagefoundry/console/__main__.py +0 -361
- messagefoundry-0.2.15/messagefoundry/console/_async.py +0 -107
- messagefoundry-0.2.15/messagefoundry/console/alerts_page.py +0 -324
- messagefoundry-0.2.15/messagefoundry/console/change_password.py +0 -111
- messagefoundry-0.2.15/messagefoundry/console/connections.py +0 -395
- messagefoundry-0.2.15/messagefoundry/console/dead_letters_page.py +0 -232
- messagefoundry-0.2.15/messagefoundry/console/delegates.py +0 -69
- messagefoundry-0.2.15/messagefoundry/console/event_log_page.py +0 -145
- messagefoundry-0.2.15/messagefoundry/console/icons/alerts.svg +0 -4
- messagefoundry-0.2.15/messagefoundry/console/icons/connections.svg +0 -5
- messagefoundry-0.2.15/messagefoundry/console/icons/dead-letters.svg +0 -4
- messagefoundry-0.2.15/messagefoundry/console/icons/engine-status.svg +0 -3
- messagefoundry-0.2.15/messagefoundry/console/icons/log-search.svg +0 -4
- messagefoundry-0.2.15/messagefoundry/console/icons/logo-lockup.svg +0 -33
- messagefoundry-0.2.15/messagefoundry/console/icons/users.svg +0 -4
- messagefoundry-0.2.15/messagefoundry/console/login.py +0 -107
- messagefoundry-0.2.15/messagefoundry/console/mfa.py +0 -205
- messagefoundry-0.2.15/messagefoundry/console/reauth.py +0 -94
- messagefoundry-0.2.15/messagefoundry/console/resources/README.md +0 -23
- messagefoundry-0.2.15/messagefoundry/console/resources/app.ico +0 -0
- messagefoundry-0.2.15/messagefoundry/console/resources/app.svg +0 -8
- messagefoundry-0.2.15/messagefoundry/console/search.py +0 -57
- messagefoundry-0.2.15/messagefoundry/console/sessions.py +0 -122
- messagefoundry-0.2.15/messagefoundry/console/shards.py +0 -224
- messagefoundry-0.2.15/messagefoundry/console/shell.py +0 -706
- messagefoundry-0.2.15/messagefoundry/console/status.py +0 -416
- messagefoundry-0.2.15/messagefoundry/console/theme.py +0 -268
- messagefoundry-0.2.15/messagefoundry/console/users_page.py +0 -282
- messagefoundry-0.2.15/messagefoundry/console/widgets.py +0 -612
- messagefoundry-0.2.15/messagefoundry/store/crypto.py +0 -271
- messagefoundry-0.2.15/messagefoundry/transports/rest.py +0 -317
- messagefoundry-0.2.15/packaging/messagefoundry-harness/README.md +0 -30
- messagefoundry-0.2.15/packaging/messagefoundry-harness/pyproject.toml +0 -54
- messagefoundry-0.2.15/requirements.lock +0 -999
- messagefoundry-0.2.15/samples/config/IB_ACME_ADT.py +0 -29
- messagefoundry-0.2.15/samples/config/IB_FHIR_INTAKE.py +0 -56
- messagefoundry-0.2.15/samples/config/IB_IMMUNIZATION_VXU.py +0 -63
- messagefoundry-0.2.15/samples/config/IB_PARTNER_X12.py +0 -47
- messagefoundry-0.2.15/samples/config/IB_RADIOLOGY_SR.py +0 -87
- messagefoundry-0.2.15/samples/config/IB_RTE_ELIGIBILITY.py +0 -87
- messagefoundry-0.2.15/samples/config/adt.py +0 -53
- messagefoundry-0.2.15/samples/config/codesets/event_labels.csv +0 -4
- messagefoundry-0.2.15/samples/config/codesets/facility_mnemonics.toml +0 -4
- messagefoundry-0.2.15/samples/config/connections.toml +0 -28
- messagefoundry-0.2.15/samples/consistency/validated_adt.py +0 -62
- messagefoundry-0.2.15/samples/dicom/generate_sr_sample.py +0 -118
- messagefoundry-0.2.15/samples/messages/adt_a01.hl7 +0 -4
- messagefoundry-0.2.15/samples/messages/adt_batch.hl7 +0 -18
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/.gitattributes +0 -5
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/README.md +0 -39
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/adt_a01.txt +0 -1
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/adt_a03.txt +0 -5
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/batch_18_messages.txt +0 -133
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/erp_z99_v231.hl7 +0 -7
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/omd_o03.txt +0 -1
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/omd_o03_rep.txt +0 -1
- messagefoundry-0.2.15/samples/messages/hapi-hl7v2/oml_o21.hl7 +0 -1
- messagefoundry-0.2.15/samples/messages/x12_270_eligibility.edi +0 -1
- messagefoundry-0.2.15/samples/results_relay/README.md +0 -44
- messagefoundry-0.2.15/samples/results_relay/codesets/test_codes.csv +0 -4
- messagefoundry-0.2.15/samples/results_relay/messages/oru_all_cancelled.hl7 +0 -4
- messagefoundry-0.2.15/samples/results_relay/messages/oru_results.hl7 +0 -7
- messagefoundry-0.2.15/samples/results_relay/results_relay.py +0 -124
- messagefoundry-0.2.15/samples/send_mllp.py +0 -61
- messagefoundry-0.2.15/scripts/console/install-console-shortcut.ps1 +0 -134
- messagefoundry-0.2.15/scripts/console/pack_ico.py +0 -55
- messagefoundry-0.2.15/scripts/console/uninstall-console-shortcut.ps1 +0 -47
- messagefoundry-0.2.15/scripts/dev/postgres.ps1 +0 -60
- messagefoundry-0.2.15/scripts/dev/sqlserver-docker.ps1 +0 -191
- messagefoundry-0.2.15/scripts/dev/sqlserver.ps1 +0 -80
- messagefoundry-0.2.15/scripts/hooks/block-blanket-git-stage.ps1 +0 -53
- messagefoundry-0.2.15/scripts/publish/check_release_sync.py +0 -258
- messagefoundry-0.2.15/scripts/publish/publish-denylist.txt +0 -33
- messagefoundry-0.2.15/scripts/publish/publish.ps1 +0 -264
- messagefoundry-0.2.15/scripts/publish/scan_forbidden.py +0 -294
- messagefoundry-0.2.15/scripts/security/crypto_inventory_check.py +0 -197
- messagefoundry-0.2.15/scripts/security/vuln_metrics.py +0 -321
- messagefoundry-0.2.15/scripts/service/import-db-ca.ps1 +0 -97
- messagefoundry-0.2.15/scripts/service/install-service.ps1 +0 -296
- messagefoundry-0.2.15/scripts/service/uninstall-service.ps1 +0 -55
- messagefoundry-0.2.15/scripts/trace_icon.py +0 -128
- messagefoundry-0.2.15/scripts/worktree/new.ps1 +0 -131
- messagefoundry-0.2.15/scripts/worktree/prune-merged.ps1 +0 -128
- messagefoundry-0.2.15/scripts/worktree/remove.ps1 +0 -52
- messagefoundry-0.2.15/scripts/worktree/session-context.ps1 +0 -79
- messagefoundry-0.2.15/scripts/worktree/spawn.ps1 +0 -51
- messagefoundry-0.2.15/tee/__init__.py +0 -20
- messagefoundry-0.2.15/tee/__main__.py +0 -568
- messagefoundry-0.2.15/tee/anon/__init__.py +0 -80
- messagefoundry-0.2.15/tee/anon/_hl7data.py +0 -428
- messagefoundry-0.2.15/tee/anon/_pools.py +0 -30
- messagefoundry-0.2.15/tee/anon/hl7.py +0 -71
- messagefoundry-0.2.15/tee/anon/keying.py +0 -67
- messagefoundry-0.2.15/tee/anon/leak.py +0 -100
- messagefoundry-0.2.15/tee/anon/rules.py +0 -219
- messagefoundry-0.2.15/tee/anon/surrogates.py +0 -299
- messagefoundry-0.2.15/tee/compare.py +0 -152
- messagefoundry-0.2.15/tee/correlate.py +0 -286
- messagefoundry-0.2.15/tee/hl7_fields.py +0 -95
- messagefoundry-0.2.15/tee/mefor_api.py +0 -116
- messagefoundry-0.2.15/tee/mllp.py +0 -181
- messagefoundry-0.2.15/tee/relay.py +0 -530
- messagefoundry-0.2.15/tee/report.py +0 -80
- messagefoundry-0.2.15/tee/store.py +0 -382
- messagefoundry-0.2.15/tests/_dicom_sample.py +0 -85
- messagefoundry-0.2.15/tests/_failover_load_support.py +0 -209
- messagefoundry-0.2.15/tests/_fhir_fixtures.py +0 -77
- messagefoundry-0.2.15/tests/_soft_webauthn.py +0 -138
- messagefoundry-0.2.15/tests/_webauthn_store_contract.py +0 -183
- messagefoundry-0.2.15/tests/conftest.py +0 -199
- messagefoundry-0.2.15/tests/test_acceptance_framework.py +0 -144
- messagefoundry-0.2.15/tests/test_ack_capture_runner.py +0 -101
- messagefoundry-0.2.15/tests/test_ack_sent_store.py +0 -156
- messagefoundry-0.2.15/tests/test_active_environment.py +0 -103
- messagefoundry-0.2.15/tests/test_ad_group_scope.py +0 -148
- messagefoundry-0.2.15/tests/test_admin_new_ip.py +0 -333
- messagefoundry-0.2.15/tests/test_adr0071_crossing_count.py +0 -162
- messagefoundry-0.2.15/tests/test_adr0071_dispatch_wiring.py +0 -525
- messagefoundry-0.2.15/tests/test_adr0071_dispatch_wiring_sqlserver.py +0 -537
- messagefoundry-0.2.15/tests/test_adr0071_fused_callables_sqlserver.py +0 -297
- messagefoundry-0.2.15/tests/test_adr0071_fusion_wiring.py +0 -400
- messagefoundry-0.2.15/tests/test_adr_analyze.py +0 -104
- messagefoundry-0.2.15/tests/test_ai_policy.py +0 -400
- messagefoundry-0.2.15/tests/test_alert_rules.py +0 -343
- messagefoundry-0.2.15/tests/test_alert_sinks.py +0 -243
- messagefoundry-0.2.15/tests/test_alert_state.py +0 -459
- messagefoundry-0.2.15/tests/test_alerts_edit.py +0 -146
- messagefoundry-0.2.15/tests/test_alerts_rules_api.py +0 -255
- messagefoundry-0.2.15/tests/test_anon_core.py +0 -262
- messagefoundry-0.2.15/tests/test_anon_integration.py +0 -189
- messagefoundry-0.2.15/tests/test_anon_parity.py +0 -133
- messagefoundry-0.2.15/tests/test_api.py +0 -749
- messagefoundry-0.2.15/tests/test_api_alerts.py +0 -247
- messagefoundry-0.2.15/tests/test_api_auth.py +0 -768
- messagefoundry-0.2.15/tests/test_api_reload.py +0 -219
- messagefoundry-0.2.15/tests/test_api_tls.py +0 -211
- messagefoundry-0.2.15/tests/test_approvals.py +0 -179
- messagefoundry-0.2.15/tests/test_asvs_phase0.py +0 -242
- messagefoundry-0.2.15/tests/test_audit_integrity.py +0 -104
- messagefoundry-0.2.15/tests/test_audit_offbox_tee.py +0 -176
- messagefoundry-0.2.15/tests/test_auth_core.py +0 -153
- messagefoundry-0.2.15/tests/test_auth_entry_hardening.py +0 -104
- messagefoundry-0.2.15/tests/test_auth_hardening.py +0 -524
- messagefoundry-0.2.15/tests/test_auth_service.py +0 -475
- messagefoundry-0.2.15/tests/test_auth_session_lifecycle.py +0 -190
- messagefoundry-0.2.15/tests/test_auth_store.py +0 -136
- messagefoundry-0.2.15/tests/test_backup_crypto.py +0 -144
- messagefoundry-0.2.15/tests/test_backup_restore_atleastonce.py +0 -76
- messagefoundry-0.2.15/tests/test_backup_runner.py +0 -373
- messagefoundry-0.2.15/tests/test_batch_claim_fifo.py +0 -371
- messagefoundry-0.2.15/tests/test_batch_claim_locking.py +0 -799
- messagefoundry-0.2.15/tests/test_batch_claim_worker.py +0 -154
- messagefoundry-0.2.15/tests/test_binary_carriage.py +0 -307
- messagefoundry-0.2.15/tests/test_bootstrap_admin_perms.py +0 -77
- messagefoundry-0.2.15/tests/test_builtin_hl7_hardening.py +0 -87
- messagefoundry-0.2.15/tests/test_builtin_hl7_parity.py +0 -620
- messagefoundry-0.2.15/tests/test_cert_expiry.py +0 -254
- messagefoundry-0.2.15/tests/test_channel_rbac.py +0 -211
- messagefoundry-0.2.15/tests/test_checks.py +0 -441
- messagefoundry-0.2.15/tests/test_checks_lint.py +0 -66
- messagefoundry-0.2.15/tests/test_claim_fifo_heads.py +0 -522
- messagefoundry-0.2.15/tests/test_cli.py +0 -811
- messagefoundry-0.2.15/tests/test_cli_offline_resolution.py +0 -250
- messagefoundry-0.2.15/tests/test_cluster.py +0 -1038
- messagefoundry-0.2.15/tests/test_cluster_failover_postgres.py +0 -241
- messagefoundry-0.2.15/tests/test_cluster_failover_sqlserver.py +0 -235
- messagefoundry-0.2.15/tests/test_cluster_graph_gating.py +0 -343
- messagefoundry-0.2.15/tests/test_cluster_lease.py +0 -338
- messagefoundry-0.2.15/tests/test_code_sets.py +0 -306
- messagefoundry-0.2.15/tests/test_codeset_edit.py +0 -641
- messagefoundry-0.2.15/tests/test_config_anchoring.py +0 -481
- messagefoundry-0.2.15/tests/test_config_fingerprint.py +0 -124
- messagefoundry-0.2.15/tests/test_config_provenance.py +0 -157
- messagefoundry-0.2.15/tests/test_config_source_trust.py +0 -224
- messagefoundry-0.2.15/tests/test_connection_api.py +0 -368
- messagefoundry-0.2.15/tests/test_connection_event_api.py +0 -83
- messagefoundry-0.2.15/tests/test_connection_event_emit.py +0 -229
- messagefoundry-0.2.15/tests/test_connection_event_outbound.py +0 -102
- messagefoundry-0.2.15/tests/test_connection_event_scope.py +0 -255
- messagefoundry-0.2.15/tests/test_connection_event_store.py +0 -208
- messagefoundry-0.2.15/tests/test_connection_resilience.py +0 -164
- messagefoundry-0.2.15/tests/test_connections_cli.py +0 -228
- messagefoundry-0.2.15/tests/test_connections_file.py +0 -445
- messagefoundry-0.2.15/tests/test_connscale_compare.py +0 -238
- messagefoundry-0.2.15/tests/test_connscale_config.py +0 -85
- messagefoundry-0.2.15/tests/test_connscale_driver.py +0 -105
- messagefoundry-0.2.15/tests/test_connscale_fuse.py +0 -468
- messagefoundry-0.2.15/tests/test_connscale_postgres.py +0 -110
- messagefoundry-0.2.15/tests/test_connscale_profile.py +0 -218
- messagefoundry-0.2.15/tests/test_connscale_report.py +0 -181
- messagefoundry-0.2.15/tests/test_connscale_smoke.py +0 -150
- messagefoundry-0.2.15/tests/test_consistency.py +0 -125
- messagefoundry-0.2.15/tests/test_console_alerts.py +0 -329
- messagefoundry-0.2.15/tests/test_console_auth.py +0 -144
- messagefoundry-0.2.15/tests/test_console_client.py +0 -393
- messagefoundry-0.2.15/tests/test_console_dead_letters.py +0 -276
- messagefoundry-0.2.15/tests/test_console_event_log.py +0 -141
- messagefoundry-0.2.15/tests/test_console_hardening.py +0 -109
- messagefoundry-0.2.15/tests/test_console_icon.py +0 -72
- messagefoundry-0.2.15/tests/test_console_password.py +0 -419
- messagefoundry-0.2.15/tests/test_console_sessions.py +0 -167
- messagefoundry-0.2.15/tests/test_console_shards.py +0 -257
- messagefoundry-0.2.15/tests/test_console_status.py +0 -416
- messagefoundry-0.2.15/tests/test_console_step_up.py +0 -193
- messagefoundry-0.2.15/tests/test_console_theme.py +0 -86
- messagefoundry-0.2.15/tests/test_console_users.py +0 -191
- messagefoundry-0.2.15/tests/test_console_widgets.py +0 -1034
- messagefoundry-0.2.15/tests/test_content_search.py +0 -378
- messagefoundry-0.2.15/tests/test_custom_roles.py +0 -417
- messagefoundry-0.2.15/tests/test_database_connector_integration.py +0 -138
- messagefoundry-0.2.15/tests/test_database_transport.py +0 -646
- messagefoundry-0.2.15/tests/test_db_lookup.py +0 -372
- messagefoundry-0.2.15/tests/test_db_lookup_live_runner.py +0 -282
- messagefoundry-0.2.15/tests/test_delivery_settings.py +0 -199
- messagefoundry-0.2.15/tests/test_dependabot_automerge_guardrails.py +0 -108
- messagefoundry-0.2.15/tests/test_dependency_boundaries.py +0 -54
- messagefoundry-0.2.15/tests/test_dicom_codec.py +0 -235
- messagefoundry-0.2.15/tests/test_dicom_scp.py +0 -248
- messagefoundry-0.2.15/tests/test_dicom_scp_security.py +0 -197
- messagefoundry-0.2.15/tests/test_dicom_scu.py +0 -172
- messagefoundry-0.2.15/tests/test_dicom_wiring.py +0 -220
- messagefoundry-0.2.15/tests/test_dicomweb.py +0 -291
- messagefoundry-0.2.15/tests/test_docs_runbooks.py +0 -102
- messagefoundry-0.2.15/tests/test_dr_activation.py +0 -187
- messagefoundry-0.2.15/tests/test_dr_api_status.py +0 -94
- messagefoundry-0.2.15/tests/test_dr_failback.py +0 -114
- messagefoundry-0.2.15/tests/test_dr_rbac.py +0 -143
- messagefoundry-0.2.15/tests/test_dr_run_profile.py +0 -183
- messagefoundry-0.2.15/tests/test_dr_seeding.py +0 -216
- messagefoundry-0.2.15/tests/test_dryrun.py +0 -334
- messagefoundry-0.2.15/tests/test_dual_control_reload.py +0 -190
- messagefoundry-0.2.15/tests/test_ed_documents.py +0 -74
- messagefoundry-0.2.15/tests/test_ed_documents_e2e.py +0 -253
- messagefoundry-0.2.15/tests/test_egress_allowlist.py +0 -160
- messagefoundry-0.2.15/tests/test_email_destination.py +0 -313
- messagefoundry-0.2.15/tests/test_embedded_document_pruning.py +0 -367
- messagefoundry-0.2.15/tests/test_enginepoll_aggregate.py +0 -154
- messagefoundry-0.2.15/tests/test_environments.py +0 -326
- messagefoundry-0.2.15/tests/test_fhir_lookup.py +0 -438
- messagefoundry-0.2.15/tests/test_fhir_parsing.py +0 -159
- messagefoundry-0.2.15/tests/test_fhir_resource.py +0 -96
- messagefoundry-0.2.15/tests/test_fhir_transport.py +0 -405
- messagefoundry-0.2.15/tests/test_field_authz.py +0 -167
- messagefoundry-0.2.15/tests/test_field_authz_metadata.py +0 -116
- messagefoundry-0.2.15/tests/test_fifo_index_migration.py +0 -433
- messagefoundry-0.2.15/tests/test_fifo_ordering.py +0 -121
- messagefoundry-0.2.15/tests/test_generate_cli.py +0 -78
- messagefoundry-0.2.15/tests/test_generated_adt.py +0 -177
- messagefoundry-0.2.15/tests/test_generators_core.py +0 -57
- messagefoundry-0.2.15/tests/test_generators_types.py +0 -42
- messagefoundry-0.2.15/tests/test_group_commit.py +0 -625
- messagefoundry-0.2.15/tests/test_groups.py +0 -267
- messagefoundry-0.2.15/tests/test_harness.py +0 -145
- messagefoundry-0.2.15/tests/test_harness_compose.py +0 -130
- messagefoundry-0.2.15/tests/test_harness_config.py +0 -72
- messagefoundry-0.2.15/tests/test_harness_faults.py +0 -113
- messagefoundry-0.2.15/tests/test_harness_file.py +0 -77
- messagefoundry-0.2.15/tests/test_harness_monitor.py +0 -186
- messagefoundry-0.2.15/tests/test_harness_reconcile.py +0 -230
- messagefoundry-0.2.15/tests/test_harness_scenarios.py +0 -195
- messagefoundry-0.2.15/tests/test_hl7_core_features.py +0 -250
- messagefoundry-0.2.15/tests/test_hl7schema.py +0 -48
- messagefoundry-0.2.15/tests/test_idle_backstop_retry_wake.py +0 -172
- messagefoundry-0.2.15/tests/test_inbound_bind.py +0 -110
- messagefoundry-0.2.15/tests/test_inbound_http_source.py +0 -464
- messagefoundry-0.2.15/tests/test_ingest_time.py +0 -103
- messagefoundry-0.2.15/tests/test_inline_fast_path.py +0 -534
- messagefoundry-0.2.15/tests/test_keyprovider.py +0 -274
- messagefoundry-0.2.15/tests/test_last_admin_guard.py +0 -150
- messagefoundry-0.2.15/tests/test_last_resort.py +0 -104
- messagefoundry-0.2.15/tests/test_leader_tasks.py +0 -228
- messagefoundry-0.2.15/tests/test_listener_tls_exposure.py +0 -60
- messagefoundry-0.2.15/tests/test_load_config.py +0 -239
- messagefoundry-0.2.15/tests/test_load_corpus.py +0 -91
- messagefoundry-0.2.15/tests/test_load_failover_postgres.py +0 -85
- messagefoundry-0.2.15/tests/test_load_failover_sqlserver.py +0 -83
- messagefoundry-0.2.15/tests/test_load_failover_unit.py +0 -462
- messagefoundry-0.2.15/tests/test_load_metrics.py +0 -124
- messagefoundry-0.2.15/tests/test_load_profile.py +0 -237
- messagefoundry-0.2.15/tests/test_load_report.py +0 -258
- messagefoundry-0.2.15/tests/test_load_runner.py +0 -227
- messagefoundry-0.2.15/tests/test_load_sender.py +0 -130
- messagefoundry-0.2.15/tests/test_load_sink.py +0 -158
- messagefoundry-0.2.15/tests/test_logging.py +0 -424
- messagefoundry-0.2.15/tests/test_message.py +0 -363
- messagefoundry-0.2.15/tests/test_message_split.py +0 -316
- messagefoundry-0.2.15/tests/test_message_timestamps.py +0 -79
- messagefoundry-0.2.15/tests/test_metrics_exporter.py +0 -288
- messagefoundry-0.2.15/tests/test_mfa.py +0 -281
- messagefoundry-0.2.15/tests/test_mllp_delivery_error_detail.py +0 -67
- messagefoundry-0.2.15/tests/test_mllp_encoding_override.py +0 -249
- messagefoundry-0.2.15/tests/test_mllp_persistent.py +0 -799
- messagefoundry-0.2.15/tests/test_mllp_tls.py +0 -328
- messagefoundry-0.2.15/tests/test_multishard_record.py +0 -94
- messagefoundry-0.2.15/tests/test_multishard_smoke.py +0 -157
- messagefoundry-0.2.15/tests/test_nonhl7_ingress_size_cap.py +0 -145
- messagefoundry-0.2.15/tests/test_operability_config.py +0 -382
- messagefoundry-0.2.15/tests/test_outbound_signing.py +0 -387
- messagefoundry-0.2.15/tests/test_outbound_simulate.py +0 -355
- messagefoundry-0.2.15/tests/test_packaging.py +0 -23
- messagefoundry-0.2.15/tests/test_parse_tree.py +0 -73
- messagefoundry-0.2.15/tests/test_parsing.py +0 -202
- messagefoundry-0.2.15/tests/test_passthrough.py +0 -674
- messagefoundry-0.2.15/tests/test_passthrough_graph.py +0 -64
- messagefoundry-0.2.15/tests/test_payload_agnostic_ingress.py +0 -240
- messagefoundry-0.2.15/tests/test_per_connection_retention.py +0 -373
- messagefoundry-0.2.15/tests/test_per_lane_wake.py +0 -324
- messagefoundry-0.2.15/tests/test_pool_warm.py +0 -395
- messagefoundry-0.2.15/tests/test_pooled_rider.py +0 -971
- messagefoundry-0.2.15/tests/test_pooled_runner.py +0 -199
- messagefoundry-0.2.15/tests/test_postgres_store.py +0 -1912
- messagefoundry-0.2.15/tests/test_priority_resolution.py +0 -128
- messagefoundry-0.2.15/tests/test_reconcile_capture.py +0 -118
- messagefoundry-0.2.15/tests/test_reconcile_compare.py +0 -102
- messagefoundry-0.2.15/tests/test_reconcile_harness.py +0 -128
- messagefoundry-0.2.15/tests/test_redaction.py +0 -123
- messagefoundry-0.2.15/tests/test_reference_sets.py +0 -538
- messagefoundry-0.2.15/tests/test_reingress.py +0 -510
- messagefoundry-0.2.15/tests/test_remotefile_transport.py +0 -781
- messagefoundry-0.2.15/tests/test_response_capture.py +0 -561
- messagefoundry-0.2.15/tests/test_rest_transport.py +0 -209
- messagefoundry-0.2.15/tests/test_restore_verify.py +0 -102
- messagefoundry-0.2.15/tests/test_retention.py +0 -432
- messagefoundry-0.2.15/tests/test_run_context.py +0 -103
- messagefoundry-0.2.15/tests/test_scaffold.py +0 -139
- messagefoundry-0.2.15/tests/test_scaffold_requirements.py +0 -54
- messagefoundry-0.2.15/tests/test_scan_forbidden.py +0 -160
- messagefoundry-0.2.15/tests/test_secrets_dpapi.py +0 -101
- messagefoundry-0.2.15/tests/test_security_notify.py +0 -88
- messagefoundry-0.2.15/tests/test_security_static.py +0 -136
- messagefoundry-0.2.15/tests/test_seq_only_fifo.py +0 -463
- messagefoundry-0.2.15/tests/test_service_control.py +0 -53
- messagefoundry-0.2.15/tests/test_service_status.py +0 -136
- messagefoundry-0.2.15/tests/test_settings.py +0 -786
- messagefoundry-0.2.15/tests/test_sharding.py +0 -257
- messagefoundry-0.2.15/tests/test_sibling_helper_finder.py +0 -98
- messagefoundry-0.2.15/tests/test_smart_backend.py +0 -455
- messagefoundry-0.2.15/tests/test_soap_transport.py +0 -206
- messagefoundry-0.2.15/tests/test_soap_wssecurity.py +0 -330
- messagefoundry-0.2.15/tests/test_sqlserver_coordinator.py +0 -180
- messagefoundry-0.2.15/tests/test_sqlserver_cursor_close.py +0 -162
- messagefoundry-0.2.15/tests/test_sqlserver_schema_init.py +0 -189
- messagefoundry-0.2.15/tests/test_sqlserver_store.py +0 -1643
- messagefoundry-0.2.15/tests/test_sqlserver_sync_handoff.py +0 -333
- messagefoundry-0.2.15/tests/test_sqlserver_sync_handoff_offline.py +0 -398
- messagefoundry-0.2.15/tests/test_stage_dispatcher.py +0 -1435
- messagefoundry-0.2.15/tests/test_staged_pipeline.py +0 -979
- messagefoundry-0.2.15/tests/test_startup_attestation.py +0 -254
- messagefoundry-0.2.15/tests/test_startup_fault_isolation.py +0 -319
- messagefoundry-0.2.15/tests/test_stats_reset.py +0 -238
- messagefoundry-0.2.15/tests/test_step_up.py +0 -206
- messagefoundry-0.2.15/tests/test_store.py +0 -753
- messagefoundry-0.2.15/tests/test_store_backend.py +0 -103
- messagefoundry-0.2.15/tests/test_store_encryption.py +0 -593
- messagefoundry-0.2.15/tests/test_store_file_hardening.py +0 -94
- messagefoundry-0.2.15/tests/test_store_once_deliver_many.py +0 -285
- messagefoundry-0.2.15/tests/test_store_once_graph.py +0 -68
- messagefoundry-0.2.15/tests/test_store_read_pool.py +0 -145
- messagefoundry-0.2.15/tests/test_store_schema_hash.py +0 -42
- messagefoundry-0.2.15/tests/test_store_ssl.py +0 -76
- messagefoundry-0.2.15/tests/test_summary.py +0 -33
- messagefoundry-0.2.15/tests/test_supervisor.py +0 -275
- messagefoundry-0.2.15/tests/test_support_bundle.py +0 -236
- messagefoundry-0.2.15/tests/test_synchronous_baseline.py +0 -190
- messagefoundry-0.2.15/tests/test_task_resilience.py +0 -152
- messagefoundry-0.2.15/tests/test_tcp_transport.py +0 -341
- messagefoundry-0.2.15/tests/test_tee_cli.py +0 -203
- messagefoundry-0.2.15/tests/test_tee_compare.py +0 -78
- messagefoundry-0.2.15/tests/test_tee_correlate.py +0 -226
- messagefoundry-0.2.15/tests/test_tee_hl7_fields.py +0 -84
- messagefoundry-0.2.15/tests/test_tee_mefor_api.py +0 -107
- messagefoundry-0.2.15/tests/test_tee_mllp.py +0 -98
- messagefoundry-0.2.15/tests/test_tee_relay.py +0 -523
- messagefoundry-0.2.15/tests/test_tee_report.py +0 -86
- messagefoundry-0.2.15/tests/test_tee_store.py +0 -220
- messagefoundry-0.2.15/tests/test_timer_source.py +0 -285
- messagefoundry-0.2.15/tests/test_timezone.py +0 -278
- messagefoundry-0.2.15/tests/test_tls_policy.py +0 -101
- messagefoundry-0.2.15/tests/test_totp.py +0 -93
- messagefoundry-0.2.15/tests/test_totp_window.py +0 -75
- messagefoundry-0.2.15/tests/test_transform_offloop.py +0 -202
- messagefoundry-0.2.15/tests/test_transform_state.py +0 -528
- messagefoundry-0.2.15/tests/test_transports.py +0 -1002
- messagefoundry-0.2.15/tests/test_update_check.py +0 -199
- messagefoundry-0.2.15/tests/test_verify.py +0 -331
- messagefoundry-0.2.15/tests/test_version.py +0 -33
- messagefoundry-0.2.15/tests/test_webauthn.py +0 -490
- messagefoundry-0.2.15/tests/test_webauthn_store.py +0 -84
- messagefoundry-0.2.15/tests/test_webui.py +0 -3630
- messagefoundry-0.2.15/tests/test_win2025_acceptance.py +0 -73
- messagefoundry-0.2.15/tests/test_wiring.py +0 -445
- messagefoundry-0.2.15/tests/test_wiring_engine.py +0 -1312
- messagefoundry-0.2.15/tests/test_wiring_reload.py +0 -516
- messagefoundry-0.2.15/tests/test_wiring_serve.py +0 -107
- messagefoundry-0.2.15/tests/test_ws_stats_revalidation.py +0 -155
- messagefoundry-0.2.15/tests/test_x12_parsing.py +0 -462
- messagefoundry-0.2.15/tests/test_x12_rte.py +0 -212
- messagefoundry-0.2.15/tests/test_x12_source_ip_allowlist.py +0 -170
- messagefoundry-0.2.15/tests/test_x12_transport.py +0 -379
- messagefoundry-0.2.15/tests/test_x12_validate.py +0 -110
- messagefoundry-0.2.15/tests/test_xml_message.py +0 -169
- messagefoundry-0.2.15/tests/test_xml_schema_signature.py +0 -66
- messagefoundry-0.2.15/tests/test_xml_signature_anchor.py +0 -44
- messagefoundry-0.2.15/uv.lock +0 -1789
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/.gitignore +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/LICENSE +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/NOTICE +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/adr_analyze.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/_pools.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/hl7.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/keying.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/leak.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/rules.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/anon/surrogates.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/approvals.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/field_authz.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/api/tls.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/data/common_passwords.NOTICE +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/data/common_passwords.txt +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/identity.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/notifications.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/passwords.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/policy.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/ratelimit.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/tokens.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/totp.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/auth/webauthn.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/active_environment.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/alerts_edit.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/anchor.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/db_lookup.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/environments.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/fingerprint.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/ingest_time.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/reference.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/response.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/config/state.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/README.md +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/_core.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/_hl7data.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/all_types.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/bar.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/dft.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/documents.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/mdm.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/mfn.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/oml.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/orl.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/orm.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/oru.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/ras.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/rde.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/siu.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/generators/vxu.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/hl7schema.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/integrity.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/last_resort.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/_backend.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/consistency.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/_deps.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/_util.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/dataset.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/errors.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/hl7_map.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/dicom/peek.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/fhir/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/fhir/_deps.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/fhir/errors.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/fhir/peek.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/fhir/resource.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/groups.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/peek.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/summary.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/tree.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/validate.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/_deps.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/delimiters.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/errors.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/interchange.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/message.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/peek.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/x12/validate.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/_deps.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/errors.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/harden.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/message.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/schema.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/parsing/xml/signature.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/cert_expiry.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/config_convergence.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/connscale_shim.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/dr_backup.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/leader_tasks.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/reference_sync.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/state_convergence.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/supervisor.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/pipeline/update_check.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/py.typed +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/redaction.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/scaffold.py +0 -0
- /messagefoundry-0.2.15/messagefoundry/console/service_control.py → /messagefoundry-0.3.0/messagefoundry/service.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/service_status.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/audit_tee.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/backup_codec.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/content_search.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/document_strip.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/keyprovider.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/store/pool_metrics.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/support/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/support/bundle.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/support/redact.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/timezone.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/framing.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/http_listener.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/loopback.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/passthrough.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/signing.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/transports/timer.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/__init__.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/model.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/report.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/runner.py +0 -0
- {messagefoundry-0.2.15 → messagefoundry-0.3.0}/messagefoundry/verify/smoke.py +0 -0
|
@@ -6,6 +6,46 @@ All notable changes to MessageFoundry are documented here. The format follows
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.3.0] — 2026-07-13 — Early Access
|
|
10
|
+
|
|
11
|
+
Highlights since 0.2.15 — streaming attachments end-to-end, a copy-on-Send message model, richer
|
|
12
|
+
connectivity, and a run of security hardening. (Concise highlights; the git history is the full change set.)
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
- **Streaming large attachments end-to-end** (#149, ADR 0105) — very-large OBX-5 documents are detached from
|
|
16
|
+
the message skeleton at ingress and streamed through routing → transform → delivery on all three stores
|
|
17
|
+
(SQLite / SQL Server / Postgres), with an operator read/download surface.
|
|
18
|
+
- **Copy-on-Send message model** (ADR 0104) — `Send` snapshots the message at construction (opt-in
|
|
19
|
+
`[pipeline].snapshot_on_send`), plus `Message.copy()` and a recognition-first `message_type_of(accepts=)`
|
|
20
|
+
predicate; and in the IDE, a point-and-click HL7 field picker and the Steps-view authoring palette
|
|
21
|
+
(ADR 0103 / 0106).
|
|
22
|
+
- **Connectivity** — generic HTTP auth (OAuth 2.0 client-credentials + Digest) and HTTP response-header
|
|
23
|
+
capture (#154, #65); a connector `SecretProvider` seam with a HashiCorp Vault backend (#196).
|
|
24
|
+
- **Monitoring** — an engine-wide KPI roll-up with a saturation-derivative alert and DB-pool metrics (#93).
|
|
25
|
+
|
|
26
|
+
### Changed
|
|
27
|
+
- **pipeline: `batch_handoff_statements` now defaults ON on SQL Server** ([ADR 0075](docs/adr/0075-per-hop-sql-statement-batching.md))
|
|
28
|
+
— per-hop SQL statement batching (a **distance-insurance** lever: folds each message's per-hop store round-trips
|
|
29
|
+
into the fewest `pyodbc.execute()` T-SQL batches, cutting **network round-trips, NOT transactions** — the
|
|
30
|
+
single per-hop `COMMIT` is untouched, `commits/msg` stays 2.000) now activates **by default** on the SQL Server
|
|
31
|
+
store. Promoted 2026-07-08 after Bench B showed **harmless-near** (batch ON vs OFF within ±0.4% at ~0.28 ms RTT,
|
|
32
|
+
zero-loss) and **helps-far** (constant ~−18% ACK-p99, absolute saving widening with RTT: −84 ms @ +20 ms,
|
|
33
|
+
−212 ms @ +50 ms) over a green SS correctness precondition (`tests/test_adr0075_batch_sqlserver.py`, 9 passed).
|
|
34
|
+
**Fail-closed + SQL-Server-only** — Postgres (asyncpg) and SQLite are byte-identical no-ops; the flag is retained
|
|
35
|
+
**only as an emergency off-switch**: set `[pipeline].batch_handoff_statements = false` to disable.
|
|
36
|
+
|
|
37
|
+
### Security
|
|
38
|
+
- **The published PyPI source distribution no longer ships the whole repo** (#1020) — the sdist is pinned to
|
|
39
|
+
the `messagefoundry` package + its metadata, with a fail-closed "sdist is package-only" gate in the release
|
|
40
|
+
workflow. No release ever exposed PHI or customer data.
|
|
41
|
+
- **Transport hardening** — certificate-revocation refusal extended to outbound-connector TLS (#201); in-use
|
|
42
|
+
memory protection for the store (#198); the publish deny-list is read from the ref being published (#983).
|
|
43
|
+
|
|
44
|
+
### Fixed
|
|
45
|
+
- **CI reliability** — bound PHI-retention on the Windows service smoke (#1011); wrap pyodbc-heavy SQL Server
|
|
46
|
+
steps with a native-crash retry (#1010); multi-message finalizers take their per-message locks in canonical
|
|
47
|
+
order (#980).
|
|
48
|
+
|
|
9
49
|
## [0.2.15] — 2026-07-06 — Early Access
|
|
10
50
|
|
|
11
51
|
**Thread-hop fusion (ADR 0071 B5, flagged default-OFF) + the browser ops dashboard, pooled-claimer
|
|
@@ -28,11 +68,25 @@ is additive / opt-in.
|
|
|
28
68
|
crossing-count micro-bench + a Windows CI mechanism gate, and a connscale B0/B1 fusion A/B harness axis
|
|
29
69
|
(`fuse_ab` profile, `trials`-banked); the throughput GO/NO-GO (ship-by-default vs escalate to
|
|
30
70
|
free-threading, ADR 0053) is a separate SQL-Server bench, not a merge gate.
|
|
71
|
+
- **Promote-gate resolved 2026-07-06 — NO-GO** ([ADR 0071](docs/adr/0071-cut-executor-round-trips-b5.md)
|
|
72
|
+
§8/§10, #787): the SQL-Server `fuse_ab` bench measured a real but sub-threshold **+6.5 / +9.3 / +10.0 %**
|
|
73
|
+
lift (below the ≥10% bar; zero-loss held), so `fuse_thread_hops` **stays default-OFF** and the lever
|
|
74
|
+
escalates to free-threading (ADR 0053). Bench-SHA provenance: the run was at commit `8bab40e2`, which is
|
|
75
|
+
**not** an ancestor of `main` (PR5 was squash-merged as `90f80a3`, #780) — but `git diff 8bab40e2 90f80a3`
|
|
76
|
+
is **empty**, so the NO-GO bench ran a code tree byte-identical to merged PR5.
|
|
31
77
|
- **store: pooled-claimer primitives** `claim_fifo_heads` / `list_fifo_lanes` / `release_claimed` on all
|
|
32
|
-
three backends ([ADR 0066](docs/adr/0066-pooled-stage-claimers.md) PR 2
|
|
33
|
-
|
|
78
|
+
three backends ([ADR 0066](docs/adr/0066-pooled-stage-claimers.md) PR 2 — **now wired by the
|
|
79
|
+
`StageDispatcher` and the default claim path since #755/#744, see _Changed_ below**): a FIFO-safe
|
|
80
|
+
multi-lane head-claim (probe-then-claim, EMPTY-on-locked-head — never a #285 skip
|
|
34
81
|
to seq N+1), a read-only head-due-aware lane discovery for the pooled sweep, and an attempts-neutral
|
|
35
82
|
claim release. `claim_next_fifo` / `claim_next_fifo_batch` / `claim_ready` are untouched.
|
|
83
|
+
- **pipeline: bounded pooled-mode infra-fault handling (T17)** (ADR 0070; #766) — in `pooled` mode a lane
|
|
84
|
+
whose head keeps failing on an infrastructure fault now **re-pends its head at an exponential-capped
|
|
85
|
+
backoff** (cap `[pipeline].infra_fault_backoff_cap`, default **60 s**) instead of spinning the ~4×/s
|
|
86
|
+
discovery sweep, and after `[pipeline].infra_fault_stop_after` (default **10**) consecutive zero-progress
|
|
87
|
+
faults (~4 min of wall clock) applies `[pipeline].infra_fault_policy` (default **`stop`**): STOP-the-lane
|
|
88
|
+
with a throttled `lane_stuck` alert — **never** auto-dead-letter. `retry_forever` instead keeps re-pending
|
|
89
|
+
at the cap and alerts once the horizon is crossed. `per_lane` mode is unaffected.
|
|
36
90
|
- **Browser ops dashboard (read-only, M1)** (#75, [ADR 0065](docs/adr/0065-web-ops-dashboard.md)) — an
|
|
37
91
|
**opt-in** (`[api].serve_ui`, default **off**), same-origin, zero-install browser ops view served under
|
|
38
92
|
`/ui` by the engine's FastAPI app. Read-only: a live-polling connections dashboard (In/Out/Queued/
|
|
@@ -130,6 +184,17 @@ is additive / opt-in.
|
|
|
130
184
|
`ix_queue_ready(stage, status, …)` index instead of one unindexed status-only full scan of the
|
|
131
185
|
queue (Postgres additionally drops an unsargable `OR $n IS NULL` form). Same rows recovered, same
|
|
132
186
|
single transaction — all three backends.
|
|
187
|
+
- **Default staged-pipeline claim path flipped to pooled per-stage claimers**
|
|
188
|
+
([ADR 0066](docs/adr/0066-pooled-stage-claimers.md); `[pipeline].claim_mode` default `per_lane` →
|
|
189
|
+
**`pooled`** — issue #744, shipped via PR #765). The `StageDispatcher` was first wired in behind
|
|
190
|
+
`[pipeline].claim_mode` **default-OFF** (#755, ADR 0066 PR4) and is now the **default** claim topology:
|
|
191
|
+
one dispatcher per stage running a handful of pooled claimer tasks over the `claim_fifo_heads` /
|
|
192
|
+
`list_fifo_lanes` / `release_claimed` primitives (batch-claiming head-prefixes across lanes), collapsing
|
|
193
|
+
the ~4,500 per-(lane×stage) claim loops that saturated a shared server DB at high fan-out and holding
|
|
194
|
+
zero-loss where `per_lane` dropped messages. **`per_lane` stays fully selectable as the byte-identical
|
|
195
|
+
opt-out** (`[pipeline].claim_mode = "per_lane"`), enforced by the zero-pooled-construction test sentinel.
|
|
196
|
+
Reliability-core — read once at engine start (a `/config/reload` does not toggle it; restart to change).
|
|
197
|
+
Single-node scope; the at-least-once / per-lane-FIFO / poison-guard invariants are unchanged in both modes.
|
|
133
198
|
|
|
134
199
|
## [0.2.14] — 2026-07-01 — Early Access
|
|
135
200
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: messagefoundry
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Open-source healthcare integration engine — route, transform, and validate messages across many formats and connection types
|
|
5
5
|
Project-URL: Homepage, https://messagefoundry.org/
|
|
6
6
|
Project-URL: Documentation, https://messagefoundry.org/
|
|
@@ -32,17 +32,13 @@ Requires-Dist: hl7>=0.4.5
|
|
|
32
32
|
Requires-Dist: hl7apy>=1.3
|
|
33
33
|
Requires-Dist: ldap3>=2.9
|
|
34
34
|
Requires-Dist: prometheus-client>=0.20
|
|
35
|
+
Requires-Dist: psutil>=6.0
|
|
35
36
|
Requires-Dist: pydantic>=2.6
|
|
36
37
|
Requires-Dist: pyspnego>=0.10
|
|
37
38
|
Requires-Dist: starlette>=1.3.1
|
|
38
39
|
Requires-Dist: tomlkit>=0.12
|
|
39
40
|
Requires-Dist: tzdata>=2024.1
|
|
40
41
|
Requires-Dist: uvicorn[standard]>=0.29
|
|
41
|
-
Provides-Extra: console
|
|
42
|
-
Requires-Dist: httpx>=0.27; extra == 'console'
|
|
43
|
-
Requires-Dist: keyring>=24.0; extra == 'console'
|
|
44
|
-
Requires-Dist: pyside6>=6.6; extra == 'console'
|
|
45
|
-
Requires-Dist: truststore>=0.10; extra == 'console'
|
|
46
42
|
Provides-Extra: dev
|
|
47
43
|
Requires-Dist: httpx>=0.27; extra == 'dev'
|
|
48
44
|
Requires-Dist: mypy>=1.10; extra == 'dev'
|
|
@@ -57,6 +53,10 @@ Requires-Dist: pynetdicom<4,>=3.0.4; extra == 'dicom'
|
|
|
57
53
|
Provides-Extra: fhir
|
|
58
54
|
Requires-Dist: fhir-resources>=7.1.0; extra == 'fhir'
|
|
59
55
|
Requires-Dist: fhirpathpy>=2.2.0; extra == 'fhir'
|
|
56
|
+
Provides-Extra: harness
|
|
57
|
+
Requires-Dist: httpx>=0.27; extra == 'harness'
|
|
58
|
+
Requires-Dist: pyside6>=6.6; extra == 'harness'
|
|
59
|
+
Requires-Dist: truststore>=0.10; extra == 'harness'
|
|
60
60
|
Provides-Extra: otel
|
|
61
61
|
Requires-Dist: opentelemetry-exporter-otlp>=1.20; extra == 'otel'
|
|
62
62
|
Requires-Dist: opentelemetry-sdk>=1.20; extra == 'otel'
|
|
@@ -66,6 +66,8 @@ Provides-Extra: sftp
|
|
|
66
66
|
Requires-Dist: paramiko>=5.0; extra == 'sftp'
|
|
67
67
|
Provides-Extra: sqlserver
|
|
68
68
|
Requires-Dist: aioodbc>=0.5; extra == 'sqlserver'
|
|
69
|
+
Provides-Extra: vault
|
|
70
|
+
Requires-Dist: hvac>=2.3.0; extra == 'vault'
|
|
69
71
|
Provides-Extra: webauthn
|
|
70
72
|
Requires-Dist: webauthn<4,>=3.0.0; extra == 'webauthn'
|
|
71
73
|
Provides-Extra: x12
|
|
@@ -94,7 +96,8 @@ guided tooling or extend it in Python; it runs on SQLite, PostgreSQL, or SQL Ser
|
|
|
94
96
|
authentication, RBAC, audit logging, and encryption-at-rest built in.
|
|
95
97
|
|
|
96
98
|
> Python import package: `messagefoundry`. Built with **hl7apy** + **python-hl7** (HL7 parsing/
|
|
97
|
-
> validation), **FastAPI** (engine API), and **PySide6** (
|
|
99
|
+
> validation), **FastAPI** (engine API + the same-origin `/ui` web console), and **PySide6** (the
|
|
100
|
+
> standalone test harness).
|
|
98
101
|
|
|
99
102
|
## What it is
|
|
100
103
|
|
|
@@ -107,8 +110,8 @@ control; either way the configuration is version-controlled and yours.
|
|
|
107
110
|
## Architecture
|
|
108
111
|
|
|
109
112
|
**Engine-as-library + localhost API.** The engine is an importable Python package.
|
|
110
|
-
|
|
111
|
-
whether the engine runs in-process, as a local daemon, or (later) on a remote host.
|
|
113
|
+
A browser **web console** (served same-origin at `/ui`) talks to it over a localhost HTTP + WebSocket
|
|
114
|
+
API — the same way whether the engine runs in-process, as a local daemon, or (later) on a remote host.
|
|
112
115
|
No hand-rolled IPC; the deployment split is a config choice, not an architectural fork.
|
|
113
116
|
|
|
114
117
|
See **[docs/architecture-diagram.md](https://github.com/MEFORORG/MessageFoundry/blob/main/docs/architecture-diagram.md)** for the rendered diagrams —
|
|
@@ -149,7 +152,7 @@ Full documentation lives on **[messagefoundry.org](https://messagefoundry.org/)*
|
|
|
149
152
|
|
|
150
153
|
- **[Mental map](https://messagefoundry.org/assets/docs/MessageFoundry-Mental-Model.pdf)** — an
|
|
151
154
|
orientation guide to how the pieces fit: Connections → Router → Handlers → Connections, with the
|
|
152
|
-
headless engine and the console/IDE that drive it.
|
|
155
|
+
headless engine and the web console/IDE that drive it.
|
|
153
156
|
- **[Install Guide](https://messagefoundry.org/assets/docs/MessageFoundry-Install-Guide.pdf)** — install,
|
|
154
157
|
configure, secure, and roll out to production.
|
|
155
158
|
- **[User Guide](https://messagefoundry.org/assets/docs/MessageFoundry-User-Guide.pdf)** — author and
|
|
@@ -179,19 +182,21 @@ deliberate — replace `<version>` with the current release shown at the top of
|
|
|
179
182
|
needs (each is opt-in and lazy-imported):
|
|
180
183
|
|
|
181
184
|
```bash
|
|
182
|
-
pip install "messagefoundry
|
|
185
|
+
pip install "messagefoundry-webconsole==<version>" # the browser web console (/ui) — the operator UI; most operators want this
|
|
183
186
|
pip install "messagefoundry[postgres]==<version>" # PostgreSQL store backend (production server DB)
|
|
184
187
|
pip install "messagefoundry[sqlserver]==<version>" # SQL Server store backend (+ OS-level ODBC Driver 18)
|
|
185
188
|
pip install "messagefoundry[sftp]==<version>" # SFTP transport for the REMOTEFILE connector
|
|
186
189
|
pip install "messagefoundry[dicom]==<version>" # DICOM codec + C-STORE SCP (pydicom + pynetdicom)
|
|
190
|
+
pip install "messagefoundry[harness]==<version>" # the standalone PySide6 test harness GUI
|
|
187
191
|
```
|
|
188
192
|
|
|
189
|
-
**What's in the `messagefoundry` package — and what isn't.** It is the **engine
|
|
190
|
-
|
|
191
|
-
`
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
193
|
+
**What's in the `messagefoundry` package — and what isn't.** It is the **engine**; the operator UI is
|
|
194
|
+
the browser **web console** served same-origin at `/ui`, which ships as a separate, version-matched
|
|
195
|
+
wheel (`messagefoundry-webconsole`) the engine mounts in-process (turn it on with `[api].serve_ui`), so
|
|
196
|
+
a headless server, container, or adopter install stays lean. (The former PySide6 desktop console was
|
|
197
|
+
retired in favour of the web console — BACKLOG #103; PySide6 now backs only the opt-in `[harness]` test
|
|
198
|
+
tooling.) The **VS Code extension is a separate product, not on PyPI** (a VS Code extension is a
|
|
199
|
+
different ecosystem); see *VS Code extension & test harness* below for where to get it.
|
|
195
200
|
|
|
196
201
|
> **Verify before you install (supply chain).** Every release is built by a GitHub Actions workflow,
|
|
197
202
|
> Sigstore-signed, and carries SLSA build-provenance + PEP 740 attestations. Verify a downloaded
|
|
@@ -226,10 +231,11 @@ python -m messagefoundry serve --config samples/config --db messagefoundry.db --
|
|
|
226
231
|
# API on http://127.0.0.1:8765 — GET /connections, /messages, /stats, WS /ws/stats
|
|
227
232
|
```
|
|
228
233
|
|
|
229
|
-
Then open the admin console (
|
|
234
|
+
Then open the admin console in a browser (install the web console alongside the engine —
|
|
235
|
+
`pip install -e packaging/messagefoundry-webconsole` — and set `[api].serve_ui = true`):
|
|
230
236
|
|
|
231
237
|
```bash
|
|
232
|
-
|
|
238
|
+
# browse to http://127.0.0.1:8765/ui and sign in
|
|
233
239
|
```
|
|
234
240
|
|
|
235
241
|
### VS Code extension & test harness
|
|
@@ -16,7 +16,8 @@ guided tooling or extend it in Python; it runs on SQLite, PostgreSQL, or SQL Ser
|
|
|
16
16
|
authentication, RBAC, audit logging, and encryption-at-rest built in.
|
|
17
17
|
|
|
18
18
|
> Python import package: `messagefoundry`. Built with **hl7apy** + **python-hl7** (HL7 parsing/
|
|
19
|
-
> validation), **FastAPI** (engine API), and **PySide6** (
|
|
19
|
+
> validation), **FastAPI** (engine API + the same-origin `/ui` web console), and **PySide6** (the
|
|
20
|
+
> standalone test harness).
|
|
20
21
|
|
|
21
22
|
## What it is
|
|
22
23
|
|
|
@@ -29,8 +30,8 @@ control; either way the configuration is version-controlled and yours.
|
|
|
29
30
|
## Architecture
|
|
30
31
|
|
|
31
32
|
**Engine-as-library + localhost API.** The engine is an importable Python package.
|
|
32
|
-
|
|
33
|
-
whether the engine runs in-process, as a local daemon, or (later) on a remote host.
|
|
33
|
+
A browser **web console** (served same-origin at `/ui`) talks to it over a localhost HTTP + WebSocket
|
|
34
|
+
API — the same way whether the engine runs in-process, as a local daemon, or (later) on a remote host.
|
|
34
35
|
No hand-rolled IPC; the deployment split is a config choice, not an architectural fork.
|
|
35
36
|
|
|
36
37
|
See **[docs/architecture-diagram.md](https://github.com/MEFORORG/MessageFoundry/blob/main/docs/architecture-diagram.md)** for the rendered diagrams —
|
|
@@ -71,7 +72,7 @@ Full documentation lives on **[messagefoundry.org](https://messagefoundry.org/)*
|
|
|
71
72
|
|
|
72
73
|
- **[Mental map](https://messagefoundry.org/assets/docs/MessageFoundry-Mental-Model.pdf)** — an
|
|
73
74
|
orientation guide to how the pieces fit: Connections → Router → Handlers → Connections, with the
|
|
74
|
-
headless engine and the console/IDE that drive it.
|
|
75
|
+
headless engine and the web console/IDE that drive it.
|
|
75
76
|
- **[Install Guide](https://messagefoundry.org/assets/docs/MessageFoundry-Install-Guide.pdf)** — install,
|
|
76
77
|
configure, secure, and roll out to production.
|
|
77
78
|
- **[User Guide](https://messagefoundry.org/assets/docs/MessageFoundry-User-Guide.pdf)** — author and
|
|
@@ -101,19 +102,21 @@ deliberate — replace `<version>` with the current release shown at the top of
|
|
|
101
102
|
needs (each is opt-in and lazy-imported):
|
|
102
103
|
|
|
103
104
|
```bash
|
|
104
|
-
pip install "messagefoundry
|
|
105
|
+
pip install "messagefoundry-webconsole==<version>" # the browser web console (/ui) — the operator UI; most operators want this
|
|
105
106
|
pip install "messagefoundry[postgres]==<version>" # PostgreSQL store backend (production server DB)
|
|
106
107
|
pip install "messagefoundry[sqlserver]==<version>" # SQL Server store backend (+ OS-level ODBC Driver 18)
|
|
107
108
|
pip install "messagefoundry[sftp]==<version>" # SFTP transport for the REMOTEFILE connector
|
|
108
109
|
pip install "messagefoundry[dicom]==<version>" # DICOM codec + C-STORE SCP (pydicom + pynetdicom)
|
|
110
|
+
pip install "messagefoundry[harness]==<version>" # the standalone PySide6 test harness GUI
|
|
109
111
|
```
|
|
110
112
|
|
|
111
|
-
**What's in the `messagefoundry` package — and what isn't.** It is the **engine
|
|
112
|
-
|
|
113
|
-
`
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
113
|
+
**What's in the `messagefoundry` package — and what isn't.** It is the **engine**; the operator UI is
|
|
114
|
+
the browser **web console** served same-origin at `/ui`, which ships as a separate, version-matched
|
|
115
|
+
wheel (`messagefoundry-webconsole`) the engine mounts in-process (turn it on with `[api].serve_ui`), so
|
|
116
|
+
a headless server, container, or adopter install stays lean. (The former PySide6 desktop console was
|
|
117
|
+
retired in favour of the web console — BACKLOG #103; PySide6 now backs only the opt-in `[harness]` test
|
|
118
|
+
tooling.) The **VS Code extension is a separate product, not on PyPI** (a VS Code extension is a
|
|
119
|
+
different ecosystem); see *VS Code extension & test harness* below for where to get it.
|
|
117
120
|
|
|
118
121
|
> **Verify before you install (supply chain).** Every release is built by a GitHub Actions workflow,
|
|
119
122
|
> Sigstore-signed, and carries SLSA build-provenance + PEP 740 attestations. Verify a downloaded
|
|
@@ -148,10 +151,11 @@ python -m messagefoundry serve --config samples/config --db messagefoundry.db --
|
|
|
148
151
|
# API on http://127.0.0.1:8765 — GET /connections, /messages, /stats, WS /ws/stats
|
|
149
152
|
```
|
|
150
153
|
|
|
151
|
-
Then open the admin console (
|
|
154
|
+
Then open the admin console in a browser (install the web console alongside the engine —
|
|
155
|
+
`pip install -e packaging/messagefoundry-webconsole` — and set `[api].serve_ui = true`):
|
|
152
156
|
|
|
153
157
|
```bash
|
|
154
|
-
|
|
158
|
+
# browse to http://127.0.0.1:8765/ui and sign in
|
|
155
159
|
```
|
|
156
160
|
|
|
157
161
|
### VS Code extension & test harness
|
|
@@ -13,11 +13,13 @@ Config modules define the message graph against this surface::
|
|
|
13
13
|
|
|
14
14
|
from messagefoundry.config.models import (
|
|
15
15
|
AckMode,
|
|
16
|
+
BatchConfig,
|
|
16
17
|
BuildupThreshold,
|
|
17
18
|
ContentType,
|
|
18
19
|
InternalErrorPolicy,
|
|
19
20
|
OrderingMode,
|
|
20
21
|
RetryPolicy,
|
|
22
|
+
SaturationThreshold,
|
|
21
23
|
StallThreshold,
|
|
22
24
|
)
|
|
23
25
|
from messagefoundry.config.active_environment import current_environment
|
|
@@ -33,6 +35,7 @@ from messagefoundry.config.wiring import (
|
|
|
33
35
|
DatabaseLookup,
|
|
34
36
|
DatabasePoll,
|
|
35
37
|
DatabaseRef,
|
|
38
|
+
Direct,
|
|
36
39
|
Email,
|
|
37
40
|
FhirLookup,
|
|
38
41
|
File,
|
|
@@ -54,14 +57,35 @@ from messagefoundry.config.wiring import (
|
|
|
54
57
|
Timer,
|
|
55
58
|
X12,
|
|
56
59
|
Send,
|
|
60
|
+
SetMeta,
|
|
57
61
|
SetState,
|
|
62
|
+
MessageTypeError,
|
|
58
63
|
code_set,
|
|
59
64
|
env,
|
|
60
65
|
handler,
|
|
61
66
|
inbound,
|
|
67
|
+
message_type_of,
|
|
62
68
|
outbound,
|
|
63
69
|
router,
|
|
64
70
|
)
|
|
71
|
+
from messagefoundry.actions import (
|
|
72
|
+
append_to_field,
|
|
73
|
+
arith_field,
|
|
74
|
+
code_lookup,
|
|
75
|
+
convert_case,
|
|
76
|
+
copy_field,
|
|
77
|
+
copy_segment,
|
|
78
|
+
date_diff_field,
|
|
79
|
+
delete_segment,
|
|
80
|
+
format_date,
|
|
81
|
+
pad_field,
|
|
82
|
+
replace_literal,
|
|
83
|
+
set_field,
|
|
84
|
+
split_field,
|
|
85
|
+
substring_field,
|
|
86
|
+
trim_field,
|
|
87
|
+
)
|
|
88
|
+
from messagefoundry.diagnostics import checkpoint, log_note
|
|
65
89
|
from messagefoundry.parsing.groups import SegmentGroup
|
|
66
90
|
from messagefoundry.parsing.message import Message, RawMessage
|
|
67
91
|
from messagefoundry.parsing.split import split_by_obr
|
|
@@ -74,7 +98,7 @@ from messagefoundry.timezone import (
|
|
|
74
98
|
to_zone,
|
|
75
99
|
)
|
|
76
100
|
|
|
77
|
-
__version__ = "0.
|
|
101
|
+
__version__ = "0.3.0"
|
|
78
102
|
|
|
79
103
|
__all__ = [
|
|
80
104
|
"Message",
|
|
@@ -83,6 +107,7 @@ __all__ = [
|
|
|
83
107
|
"split_by_obr",
|
|
84
108
|
"Send",
|
|
85
109
|
"SetState",
|
|
110
|
+
"SetMeta",
|
|
86
111
|
"state_get",
|
|
87
112
|
"response_get",
|
|
88
113
|
"MLLP",
|
|
@@ -94,6 +119,7 @@ __all__ = [
|
|
|
94
119
|
"Loopback",
|
|
95
120
|
"PassThrough",
|
|
96
121
|
"Rest",
|
|
122
|
+
"Direct",
|
|
97
123
|
"Email",
|
|
98
124
|
"SMTP",
|
|
99
125
|
"FHIR",
|
|
@@ -125,11 +151,32 @@ __all__ = [
|
|
|
125
151
|
"InternalErrorPolicy",
|
|
126
152
|
"BuildupThreshold",
|
|
127
153
|
"StallThreshold",
|
|
154
|
+
"SaturationThreshold",
|
|
155
|
+
"BatchConfig",
|
|
128
156
|
"ContentType",
|
|
129
157
|
"inbound",
|
|
130
158
|
"outbound",
|
|
131
159
|
"router",
|
|
132
160
|
"handler",
|
|
161
|
+
"message_type_of",
|
|
162
|
+
"MessageTypeError",
|
|
163
|
+
"copy_field",
|
|
164
|
+
"set_field",
|
|
165
|
+
"append_to_field",
|
|
166
|
+
"trim_field",
|
|
167
|
+
"substring_field",
|
|
168
|
+
"pad_field",
|
|
169
|
+
"replace_literal",
|
|
170
|
+
"convert_case",
|
|
171
|
+
"arith_field",
|
|
172
|
+
"format_date",
|
|
173
|
+
"date_diff_field",
|
|
174
|
+
"split_field",
|
|
175
|
+
"code_lookup",
|
|
176
|
+
"copy_segment",
|
|
177
|
+
"delete_segment",
|
|
178
|
+
"log_note",
|
|
179
|
+
"checkpoint",
|
|
133
180
|
"convert_hl7_timestamp",
|
|
134
181
|
"to_zone",
|
|
135
182
|
"parse_hl7_timestamp",
|