12 Commits
Author SHA1 Message Date
adminandGitHub bd51acb6a2 Add Bazel platform toolchain error messages (#7154) 2026-06-12 08:51:17 -07:00
adminandGitHub 71f0f47da2 Clean up C++ test warnings (#7065)
* Clean up C++ test warnings

* Keep player setup expected map size readable

* Declare direct Bazel module dependencies (#7069)

* Check Shardok map proto parse results

* Prepare Apple and protobuf module resolution

* Declare direct Bazel module dependencies
2026-06-11 07:39:57 -07:00
7ab8fc796b Add BUILD.bazel dependency linting (#5437)
* Add BUILD.bazel dependency linting

Adds tooling to enforce architectural boundaries in the codebase:

1. Shell script `scripts/check_build_deps.sh` with multiple modes:
   - Default: runs all checks and shows dependency counts
   - --ci: fails only on hard violations (src/main depends on src/test)
   - --strict: also fails if proto deps in library/ increase from baseline
   - --count: just show current dependency counts
   - --update-baseline: update the baseline file for tracking

2. Bazel test `//:build_deps_test` for integration with test suite

3. Baseline file `scripts/build_deps_baseline.txt` tracking proto dep count

Current enforced rules:
- src/main must not depend on src/test (enforced now)
- library/ proto dependencies tracked (167 currently, deproto in progress)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Update DEPROTO_PLAN.md with accurate proto import inventory

The previous status was inaccurate. This update:

- Corrects summary table: Availability, Command Choice Helpers,
  and other utilities still have Hostility proto imports
- Adds Phase 8b documenting Hostility proto migration (4 files)
- Updates detailed inventory showing actual 13 files with direct
  proto imports (vs 167 transitive deps from bazel query)
- Corrects success criteria checkboxes to reflect actual status
- Documents the grep command used to verify imports

The 167 proto deps from bazel query are transitive dependencies.
Only 13 files have direct proto imports:
- 5 boundary files (expected to keep proto)
- 4 files using Hostility proto (Phase 8b)
- 4 LLM prompt generator files (Phase 8)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 07:28:58 -08:00
584ccbadcb Add ARM64 Linux build infrastructure for Shardok (#4990)
* Add ARM64 Linux build infrastructure for Shardok

Infrastructure to support cross-compiling Shardok for ARM64 Linux,
enabling deployment to Hetzner ARM instances (CAX41) for on-demand
compute.

Changes:
- Add linux_arm64 platform definition
- Add LLVM toolchain for ARM64 cross-compilation
- Add ARM64 sysroot placeholder (needs workflow run to populate)
- Add ARM64 busybox for container health checks
- Add Ubuntu 24.04 ARM64 base image
- Add Shardok ARM64 container image targets
- Update sysroot build workflow to support ARM64

Next steps:
1. Run "Build Linux Sysroot" workflow with architecture=arm64
2. Update MODULE.bazel with generated sysroot SHA
3. Build and push ARM64 container

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Update ARM64 sysroot SHA from workflow build

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Fix ARM64 container build issues

- Use linux/arm64/v8 platform string (rules_oci requires variant suffix)
- Remove busybox_layer_arm64 due to busybox.net SSL certificate issues
- Health checks can be added later using an alternative busybox source

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add GitHub Actions workflow for ARM64 Shardok build

Builds and pushes ARM64 container image to GitHub Container Registry
for deployment on Hetzner ARM instances (CAX41).

Triggered on:
- Push to main (when Shardok-related files change)
- Manual workflow_dispatch

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 15:08:51 -08:00
844e2b0407 Add cross-compilation support for Shardok Docker builds (#4772)
* Add cross-compilation support for Shardok Docker builds

This enables building Shardok on the self-hosted Mac runner while
targeting Linux x86_64, avoiding the need for slow GitHub-hosted
Ubuntu runners.

Changes:
- Add Ubuntu 24.04 (Noble) sysroot generation scripts
- Add GitHub Actions workflow to build and release the sysroot
- Configure toolchains_llvm for cross-compilation with sysroot
- Update docker_build.yml to use cross-compilation
- Add linux_x86_64 platform definition

The sysroot contains libstdc++-13 which provides C++23 support
needed by the codebase.

To complete setup:
1. Run the "Build Linux Sysroot" workflow to create the sysroot
2. Update MODULE.bazel with the actual sha256 from the release

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Temporarily disable Shardok build until sysroot is ready

The cross-compilation sysroot needs to be built and uploaded before
Shardok can be built. Steps to re-enable:
1. Run "Build Linux Sysroot" workflow
2. Update sha256 in MODULE.bazel
3. Uncomment build-shardok job

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-23 06:58:23 -08:00
adminandGitHub 9df5a45f2f TruceResolutionHelpers goes full protoless (#4029)
* truce resolution full protoless

* tests pass

* fix caller

* all tests pass
2025-03-03 19:44:25 -08:00
adminandGitHub 6ae6951174 Rewrite the settings build file generators for the dlSettings.sh script in golang (#3896)
* oh it's the importpath

* separate package

* set import path

* call the go version

* start the impl

* build file equivalent

* write the loader file too

* write the loader file too

* ignore bazelbsp
2025-01-11 07:51:05 -08:00
adminandGitHub 44719feab2 reenable protobuf gazelle support with "gazelle proto:file" (#3820)
* build one go_proto_library per file

* missing dep
2024-11-30 12:20:49 -08:00
adminandGitHub d572d2e8e5 Reenable go support, but with protobuf disabled (#3815)
* Revert "Revert "Go support (#3807)" (#3810)"

This reverts commit b1183e5e08.

* disable protos

* add a comment
2024-11-30 07:32:58 -08:00
adminandGitHub b1183e5e08 Revert "Go support (#3807)" (#3810)
This reverts commit a740291b40.
2024-11-29 14:42:04 -08:00
adminandGitHub a740291b40 Go support (#3807)
* what are these changes for

* add Golang support and run gazelle

* add a go binary

* still trying

* builds without nogo
2024-11-29 09:25:22 -08:00
adminandGitHub b47f91c294 rename ai/BUILD to ai/BUILD.bazel (#2755)
* rename ai/BUILD to ai/BUILD.bazel

* rename all BUILD to BUILD.bazel

* rename all BUILD to BUILD.bazel
2023-06-19 18:58:22 -07:00