Skip to content

build: prepare 0.2.2 against delivery_module v0.2.0 - #63

Merged
igor-sirotin merged 2 commits into
masterfrom
build/delivery-module-v0.2.0
Aug 4, 2026
Merged

build: prepare 0.2.2 against delivery_module v0.2.0#63
igor-sirotin merged 2 commits into
masterfrom
build/delivery-module-v0.2.0

Conversation

@igor-sirotin

@igor-sirotin igor-sirotin commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Summary

delivery_module v0.2.0 is tagged and about to enter logos-modules-release, so this module moves its pin from v0.1.3 to the release it will be installed alongside:

  • flake.nix: logos-delivery-module re-pinned v0.1.3v0.2.0, lock refreshed.
  • rust-lib/deps/delivery_module.lidl: the hand-maintained contract copy's version moves to 0.2.0. The subset chat_module consumes (createNode/start/subscribe/send + the messageReceived/connectionStateChanged decoders) is unchanged in v0.2.0. Switching to the published .lidl output that v0.2.0 now ships stays build: consume delivery_module's published .lidl contract #58's scope.
  • createNode config moves to the layered app-developer shape ({"mode", "preset", "messagingOverrides": {"logLevel"}}). v0.2.0 no longer injects port 0 for unpinned ports (delivery-module#79: the injected top-level keys forced every config through the legacy flat parser and broke the layered shapes). Our old config was flat-shaped too — the top-level logLevel is a bare kernel key — so side-by-side instances all bound the fixed default tcp/60000 (SO_REUSEPORT lets the extra binds land silently), announced the same address under different peer ids, and exchanges never completed (evidence: chat-ui e2e run against the first commit). The layered shape routes through the messaging layer, which defaults every unpinned port to 0 (OS-assigned).
  • Version bumped to 0.2.2: 0.2.1 is tagged and released against delivery v0.1.3, so the work since it gets a version of its own to be released under.

Testing

  • cargo fmt --check, cargo clippy -D warnings, cargo test (32 passed) and nix build .#chat_module locally.
  • logos-chat-ui's standalone app builds against this rev end to end (companion: build: prepare 0.2.2 against chat_module 0.2.2 / delivery_module v0.2.0 logos-chat-ui#54).
  • The doc-tests on this PR drive the real 1:1 and group exchanges with the v0.2.0 delivery_module-lgx re-exported from this flake — they run several instances on one host, so they exercise the port auto-assignment directly.

🤖 Generated with Claude Code

delivery_module v0.2.0 is tagged and about to enter logos-modules-release,
so this module moves its pin from v0.1.3 to the release it will be
installed alongside. The subset of the contract chat_module consumes
(createNode/start/subscribe/send + the messageReceived and
connectionStateChanged events) is unchanged in v0.2.0, and the flat
createNode config shape this module sends still parses, so only the pin,
the lock and the hand-maintained contract copy's version move — switching
to the published .lidl output v0.2.0 now ships stays #58's scope.

0.2.1 is tagged and released against delivery v0.1.3, so the work since
it gets a version of its own to be released under.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
delivery_module v0.2.0 no longer injects port 0 for unpinned listening
ports (delivery-module#79 dropped it: the injected top-level keys forced
every config through the legacy flat parser and broke the layered
shapes). Our config was flat-shaped too — the top-level logLevel is a
bare kernel key — so both doc-test instances bound the fixed default
tcp/60000 (SO_REUSEPORT lets the second bind land silently), announced
the same address under different peer ids, and the exchange never
completed.

The layered app-developer shape from delivery_module's docs restores
auto-assignment: the messaging layer defaults every unpinned port to 0
(OS-assigned). logLevel moves into messagingOverrides, where the layered
grammar carries it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 31, 2026

Copy link
Copy Markdown

Doc-test report

Headless chat_module instances built against this commit, driven through the 1:1 round-trip and the three-instance group conversation, rendered alongside the commands actually run and their output (updated each run, commit c0c7252):

Pages can take a minute to update after the run finishes.

Comment thread rust-lib/src/actions.rs
"mode": "Core",
"preset": preset,
"logLevel": "ERROR",
"messagingOverrides": { "logLevel": "ERROR" },

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This is the only API call change

@igor-sirotin
igor-sirotin marked this pull request as ready for review August 4, 2026 15:34
@igor-sirotin
igor-sirotin merged commit dfe8ccf into master Aug 4, 2026
7 checks passed
@igor-sirotin
igor-sirotin deleted the build/delivery-module-v0.2.0 branch August 4, 2026 15:34
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.

1 participant