sync: auto-sync from GURU-5070 at 2026-05-30 11:51:56

Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-30 11:51:56
This commit is contained in:
2026-05-30 11:52:03 -07:00
parent 7d600a0d9f
commit 2460d52b48
4 changed files with 73 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
# Memory Index
## Reference
- [GURU-5070 Rust toolchain](reference_guru5070_rust_toolchain.md) — GURU-5070 now has cargo + MSVC + protoc; build/clippy/test guru-connect LOCALLY (set PROTOC to the winget path) instead of the build host. CI only clippy-checks the Linux server, not the Windows agent.
- [ACG Office Network Infrastructure](infra_office_network.md) — IPs/hosts/roles for pfSense/Jupiter/VMs/Docker. Check before assuming; .21 (Uranus) is storage.
- [Power Failure Runbook](../POWER_FAILURE_RUNBOOK.md) — Recovery order after a power event: Tailscale routes, libvirt/VMs, Seafile, NPM/DNS.
- [Syncro API — Invoice Verification Pattern](syncro_invoice_verification_pattern.md) — /invoices?customer_id=X returns no ticket linkage; query /invoices/{number} for ticket_id. Compare by ticket ID, not number.

View File

@@ -0,0 +1,26 @@
---
name: reference_guru5070_rust_toolchain
description: GURU-5070 has the full local Rust toolchain (cargo + MSVC + protoc) — build/clippy/test the guru-connect workspace LOCALLY instead of the build host; set PROTOC first
metadata:
type: reference
---
As of 2026-05-30, GURU-5070 has the full Rust dev toolchain installed, so GuruConnect can be
built/linted/tested locally — **no more build-host (172.16.3.30) round-trips just for `cargo fmt`/clippy.**
- **cargo/rustc/clippy/rustfmt:** `C:\Users\guru\.cargo\bin\` (rustup; cargo 1.96, rustfmt 1.9, clippy 0.1.96).
- **MSVC C++ Build Tools:** VS2022 BuildTools (VCTools workload) — provides the `x86_64-pc-windows-msvc` linker.
- **protoc:** 35.0 via winget. The build.rs prost codegen needs it — **set the env var first:**
`$env:PROTOC = "C:\Users\guru\AppData\Local\Microsoft\WinGet\Packages\Google.Protobuf_Microsoft.Winget.Source_8wekyb3d8bbwe\bin\protoc.exe"` (also set persistently as a User env var).
- Default target is `x86_64-pc-windows-msvc` (per the repo `.cargo/config.toml`), so this machine builds BOTH
the server AND the Windows agent — better coverage than the Linux build host, which can't compile the agent.
- **Local gates that mirror CI** (run from the guru-connect dir with PROTOC set):
`cargo fmt --all`, `cargo clippy --workspace --all-targets --all-features -- -D warnings`,
`cargo test --workspace`, `cargo build --workspace`. Local rustfmt agrees with CI (verified — no skew).
- **CI gap to know:** CI only runs clippy on the **Linux server** build; the Windows **agent** crate is never
clippy-checked in CI (let 77 errors accumulate, cleaned up 2026-05-30). Todo to add agent clippy to the
build-agent (Pluto) job. So: clippy the agent LOCALLY before committing.
**How to apply:** when a Coding Agent works on GuruConnect Rust, have it self-verify with the local toolchain
(set PROTOC, run the four gates, iterate to green) and commit CI-green code — don't delegate fmt/clippy to the
build host. See [[project_guruconnect_v2_direction]].