Skip to content

build(trios-chat): add the shim crate to the workspace members - #1820

Open
dmitrii-f-t27 wants to merge 1 commit into
mainfrom
chat-t27/w0-workspace-member
Open

dmitrii-f-t27 wants to merge 1 commit into
mainfrom
chat-t27/w0-workspace-member

Conversation

@dmitrii-f-t27

Copy link
Copy Markdown
Collaborator

Closes #1814

Part of #1812 (Trinity Secure Chat written once in .t27).

Adds crates/trios-chat to [workspace].members, so the shim, its two bins and tests/r_chat_guard.rs are built by cargo test --all. No Rust source changes. Cargo.lock gains only the trios-chat package entry (13 lines).

Checks on adbe1a1 (local, cargo 1.94.0, rustc 1.94.0, base 8b229e9):

  • cargo build -p trios-chat --bins --tests: exit 0
  • cargo test -p trios-chat --test r_chat_guard: 3 passed, 0 failed
  • cargo run -p trios-chat --bin e2e_chat_25: 25/25 PASS, exit 0
  • find crates/trios-chat -name '*.sh' | wc -l: 0
  • Required checks (no-js-check, Test, Constitutional Enforcement, guard): see the checks of this PR.

Not changed: ring sources, the falsifier (it exits 1 today and is not added as a gate here), clippy.

L16 rationale: clippy -D warnings already fails at base 8b229e9 and ci.yml skips it; this PR changes no Rust source.
CODEOWNERS: this PR changes /Cargo.toml and /Cargo.lock; it is merged only after @gHashTag's approval (requested by email).

Dmitrii Fedorov (@dmitrii-f-t27)

The root Cargo.toml lists the 12 trios-chat ring crates but not the shim
crates/trios-chat, so cargo refused to build it and e2e_chat_25,
falsifier_runner and tests/r_chat_guard.rs never ran in CI.
Cargo.lock gains only the trios-chat package entry.

Refs #1814
L16 rationale: clippy -D warnings already fails at base 8b229e9 and ci.yml skips it; this PR changes no Rust source.
@tri-claw

tri-claw Bot commented Oct 11, 2026

Copy link
Copy Markdown

Summary by t27-bees

Adds the trios-chat shim crate to the workspace so it participates in cargo test --all. The change is purely workspace configuration; no Rust source is modified.

Worth a look

  • Cargo.toml:74 — Adding "crates/trios-chat" after its ring sub-crates means the parent crate will be built alongside them; verify this doesn't create a circular dependency or duplicate build artifacts with the rings already listed.
  • Cargo.lock:6242–6253 — The new lock entry pulls in ed25519-dalek, x25519-dalek, rand, serde, serde_json, and trios-chat-br-output; confirm these versions are compatible with the rest of the workspace and don't introduce version conflicts.

Read: 2 files, +14 -0, the whole diff. Head adbe1a1. Model: openai-compatible/nvidia/nemotron-3-ultra-550b-a55b. Commands: @t27-bees review | summary | help | pause | resume. Free for every repository.

@dmitrii-f-t27

Copy link
Copy Markdown
Collaborator Author

Checked both points on head adbe1a1; no change is needed.

  1. Circular dependency / duplicate artifacts. The shim depends only on trios-chat-br-output (plus the crates below). No ring crate depends on the shim: grep over crates/trios-chat/rings/*/Cargo.toml finds no dependency on the package trios-chat. Cargo resolves the workspace without a cycle: cargo build -p trios-chat --bins --tests exits 0, and the required Test check (cargo test --all) is green on this head. Each package is one cargo unit, so the rings are not built twice.

  2. Versions. The Cargo.lock diff adds exactly one [[package]] entry (trios-chat, 13 lines). Every dependency of it resolves to a version that was already in the lockfile before this PR: ed25519-dalek 2.2.0, x25519-dalek 2.0.1, rand 0.8.6, rand_core 0.6.4, serde 1.0.228, serde_json 1.0.149, trios-chat-br-output 0.1.0. No new crate version enters the lockfile.

Dmitrii Fedorov (@dmitrii-f-t27)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build crates/trios-chat in the workspace so the shim, e2e_chat_25, falsifier_runner and r_chat_guard run in CI

1 participant