Skip to content

0.0.1

Choose a tag to compare

@github-actions github-actions released this 01 Oct 13:13
· 656 commits to main since this release
Immutable release. Only release title and notes can be modified.
v0.0.1
acbd59a

The first release: the repository setup, the documentation site on
https://ferrofed.eu/, the architecture of record, the Cargo workspace and the
server binary's shape (configuration, telemetry, health, readiness and
shutdown). The ferrofed binary serves health and readiness only; the
federated query follows from v0.0.2.

Added

  • The Cargo workspace (#28): the root manifest with the family lint set, the
    release profile and the publish = false switch every library crate
    inherits; the openehr-* family declared as one lockstep pin group at 0.0.72,
    with the versions guard failing when one member moves alone; deny.toml; the
    serde_json::Value ban in clippy.toml; and every crate of the architecture's
    crate map as a documented placeholder, with the ferrofed binary over a thin
    library run path and the testkit's pin-matrix reader asserting each crate's
    specification constant against docs/VERSIONS.md.

  • The server binary shape (#29): ferrofed serve and ferrofed config check;
    configuration from a TOML file and FERROFED__ environment overrides with
    unknown keys refused, _file siblings for every secret, outbound
    credentials per endpoint id, and a typed refusal (exit 78) on any bad value,
    a broken log filter included; auto, json and pretty console formats;
    GET /, GET /health and GET /health/readiness over an indicator
    registry; the request id, the panic catch (a 500 that carries neither the
    panic message nor anything the client sent), the request timeout and the
    body ceiling; a bounded drain on SIGTERM; and 501 for every path of the
    ITS-REST surface until the façade lands. The request log records the
    method, the matched route, the status, the latency and the request id, and
    never a body, the AQL text, a header value, an unmatched path, or a query
    value other than the digit-only offset and fetch, so a façade query's
    patient identifier reaches no log line at any level (§5.4.3).

  • The conformance matrix (#41): conformance/matrix.tsv with every
    conformance point of section 17, conformance/tracks.tsv with the section
    16.3 tracks (track 8 deferred as provisional) and
    conformance/requirements.tsv with the reachability of all 46 requirements,
    derived from the vendored specification by scripts/conformance/matrix.sh;
    the // conformance: test marker; the tier-1 conformance-matrix guard; and
    the matrix rendered into the book's Evaluate part.

  • The clinical-path storage rule (#40): an engine test reads the crate graph
    and fails when a library crate reaches a storage implementation or the
    application crate.

Fixed

  • scripts/checks/crate-version-guard.sh no longer exits early on the change
    that adds the root Cargo.toml, where the base has none.