From 891447270672b02441a2c8fd3e39c4676ebe78ac Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Tue, 7 Jul 2026 11:41:13 -0400 Subject: [PATCH] docs: refresh CLAUDE.md/ToolchainLinks currency Correct three stale facts against the current tree: the repo IS a git repo at top level, the Java client targets JDK 17 (not 21), and note the NonWindows.slnx build entry point for the macOS working tree. Flag the gradle JDK 17 toolchain requirement in ToolchainLinks. --- CLAUDE.md | 11 +++++++---- docs/ToolchainLinks.md | 5 +++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 8bae914..156f513 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -21,6 +21,9 @@ The worker must do all MXAccess COM calls on its dedicated STA thread, and the S # Full solution build (gateway, worker, contracts, tests) dotnet build src/ZB.MOM.WW.MxGateway.slnx +# Non-Windows hosts (e.g. the macOS working tree): excludes the x86 Worker + Worker.Tests +dotnet build src/ZB.MOM.WW.MxGateway.NonWindows.slnx + # Worker must be built x86 — the gateway looks for ZB.MOM.WW.MxGateway.Worker.exe under bin\x86 dotnet build src/ZB.MOM.WW.MxGateway.Worker/ZB.MOM.WW.MxGateway.Worker.csproj -p:Platform=x86 @@ -57,7 +60,7 @@ Each language client is in `clients//` with its own README. They all consu - `clients/dotnet`: `dotnet build clients/dotnet/ZB.MOM.WW.MxGateway.Client.slnx` - `clients/python`: `python -m pip install -e ".[dev]"; python -m pytest` - `clients/rust`: `cargo test --workspace; cargo clippy --workspace --all-targets -- -D warnings` -- `clients/java`: `gradle test` (Java 21) +- `clients/java`: `gradle test` (Java 17 — retargeted from 21 for Ignition 8.3) - Go client lives alongside as `mxgw-go` in the cross-language matrix End-to-end matrix runner (needs running gateway + worker + valid API key): @@ -122,6 +125,6 @@ Dashboard auth is LDAP-backed (separate from the gRPC API-key model). `/login` b ## Process / Platform Notes -- Working tree is on Windows (`C:\Users\dohertj2\Desktop\mxaccessgw`). PowerShell is the native shell for tooling commands; bash is fine for git/grep/find. -- The worker reference to `ArchestrA.MXAccess.dll` uses an absolute `HintPath` to `C:\Program Files (x86)\ArchestrA\Framework\Bin\ArchestrA.MXAccess.dll`. The worker only builds where MXAccess is installed (this dev box). -- The repo is not a git repository at the top level — there's no `.git` directory in the working tree. +- The working tree is cross-platform. On the macOS dev box (`/Users/dohertj2/Desktop/MxAccessGateway`, zsh) build the `NonWindows.slnx`; the x86 Worker and the full `slnx` only build on a Windows host with MXAccess installed. PowerShell is the native shell on Windows; bash/zsh is fine for git/grep/find. +- The worker reference to `ArchestrA.MXAccess.dll` uses an absolute `HintPath` to `C:\Program Files (x86)\ArchestrA\Framework\Bin\ArchestrA.MXAccess.dll`. The worker only builds where MXAccess is installed (the Windows dev box). +- The working tree is a git repository. Main branch is `main`; feature work happens on branches (e.g. `feat/*`). diff --git a/docs/ToolchainLinks.md b/docs/ToolchainLinks.md index 54f17ae..e6fbec5 100644 --- a/docs/ToolchainLinks.md +++ b/docs/ToolchainLinks.md @@ -123,6 +123,11 @@ typer==0.25.0 | Gradle | 9.4.1 | `C:\Tools\gradle-9.4.1\bin\gradle.bat` | | Maven | 3.9.15 | `C:\Tools\apache-maven-3.9.15\bin\mvn.cmd` | +The Java client was retargeted 21 -> 17 for Ignition 8.3 (`clients/java/build.gradle` +declares a `JavaLanguageVersion.of(17)` toolchain). Gradle resolves toolchains by +version, so a JDK 17 must be available on the build host even though the runtime +above is Temurin 21 (a 17-targeted build still runs on 21+). + Environment: ```text