Skip to content

feat: move the template to the 2.0 chain pipeline DSL - #28

Merged
ipasechnikov merged 2 commits into
mainfrom
feat/2.0-template
Oct 27, 2026
Merged

ipasechnikov merged 2 commits into
mainfrom
feat/2.0-template

Conversation

@NikitaSinc

@NikitaSinc NikitaSinc commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

The template on interbox 2.0, on top of the 2.0.0+0 sync (@health-samurai/interbox ^2.0.0).

  • Pipeline. hl7-to-aidbox is a 2.0 chain: MLLP source → search text → store (text, with declared index and trigram search) → hl7v2Parser() → v2ToFhir → fhirItems() → skipUnchanged() → aidbox(). src/index.ts exports ChainRegistry. This is the shape the 1.x import expects (--pipeline hl7-to-aidbox --search-text message, see Upgrading from 1.x).
  • Mapping. The HL7v2 converters are unchanged. v2ToFhir wraps them as a step, passes the step's translate to the ORU code lookup, and still adds a Provenance, now with the 2.0 id.
  • Compose. stop_grace_period: 15s, above the engine's default 10 s stop grace.
  • Tests. Workspace shape, the mapping step (including that translate reaches the ORU converter), and the compose grace period. tsconfig.json now covers test/ and e2e/. The hand-built step contexts carry lookup, which 2.0.0's StepContext requires.
  • e2e. bun run e2e sends an ADT^A01 and an ORU^R01 over MLLP to a running stack and checks Aidbox and the dashboard API. It needs docker compose up with a 2.0 image and a licensed stack. It passed 6/6 against local images built from interbox before the release (79b63b45, 7d757f9c); it has not been re-run against the published 2.0.0 image.
  • README rewritten for 2.0 and hot reload.

Retargeted from next to main and rebased onto the 2.0.0+0 sync. With the published 2.0.0 SDK and Bun 1.4.3: bun install --frozen-lockfile, bun run typecheck and bun test (39/39) pass. The version stays 2.0.0+0; the workspace Release button makes it 2.0.0+1.

NikitaSinc and others added 2 commits October 27, 2026 17:18
The hl7-to-aidbox pipeline is now a 2.0 chain: MLLP source, search
text, the store, hl7v2Parser(), the v2ToFhir step, fhirItems(),
skipUnchanged() and aidbox(). The workspace entry exports
ChainRegistry. The HL7v2 converters are unchanged; v2ToFhir wraps them
as a step and still adds a Provenance, now with the 2.0 id.

docker-compose sets stop_grace_period above the engine's stop grace.
A new e2e suite (bun run e2e) sends ADT and ORU messages over MLLP to a
running stack and checks Aidbox and the dashboard. tsconfig now covers
test/ and e2e/. The README describes 2.0 and hot reload.

The SDK range stays at 1.x until the 2.0 release, so CI on this branch
fails until then.

Assisted-by: Claude Opus 5.5 (1M context)
@ipasechnikov
ipasechnikov changed the base branch from next to main October 27, 2026 08:25
@ipasechnikov
ipasechnikov marked this pull request as ready for review October 27, 2026 08:28
@ipasechnikov
ipasechnikov merged commit c8fb6c2 into main Oct 27, 2026
5 of 6 checks passed
@ipasechnikov
ipasechnikov deleted the feat/2.0-template branch October 27, 2026 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants