Commit graph

414 commits

Author SHA1 Message Date
autocommit
cea53e1ee4 feat(p2-73): 🎨 generate ui_theme.tres from design tokens + global apply + color() accessor
Close the gap where the design system (.project/designs/design-tokens.json)
drove the React guide but not the Godot game.

- tools/build-ui-theme.py: compiles the W3C/style-dictionary token SoT into a
  complete Godot Theme (7 StyleBoxFlat sub-resources, Button/Label/Panel/
  PanelContainer/ItemList/RichTextLabel colors + font sizes + corner radii/
  border widths per UI_DESIGN_SYSTEM.md §3/§4/§6). ui_theme.tres is now a
  GENERATED artifact; tokens are the single source of truth. Deterministic
  output (sorted keys, fixed float fmt, preserved uid://ui_theme_fantasy) with
  a --check drift gate. Idempotent; --import does not rewrite it.
- project.godot [gui] theme/custom: applies ui_theme.tres at viewport level so
  every non-overriding default Control renders the copper fantasy styling.
- ThemeAssets.color(name) -> Color: resolves dotted token names (accent.gold,
  semantic.positive, text.primary, …) against the metadata/tokens JSON blob
  baked into the .tres by the generator. Fully data-driven from the SoT, no
  hardcoded color map. (Godot rejects dots in Theme color item names, so the
  token table ships as resource metadata.) Unknown names return an explicit
  fallback. This is the API p2-74 will de-hardcode 45 scripts onto.
- ui_theme_proof.{tscn,gd}: bare-widget + color()-swatch proof scene.
  test_theme_assets_color.gd: GUT accessor coverage (5/5 headless).

Proof captured on apricot under weston, reviewed in conversation:
.project/screenshots/p2-73-ui-theme-proof.png. Workspace green — full unit
(16==16) and integration (18==18) suites show identical HEAD-baseline-vs-patch
failure counts, zero regressions; patch adds +5 passing tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 19:42:01 -07:00
autocommit
3f6a4a09cd docs(objectives): wave-1 status flips + index regen + new specs + tooling
- p3-05e, p2-56 -> done (ratified); p0-26b, p2-57b, p2-57c, sprites -> partial; honest evidence per objective-integrity
- new specs: p1-29h (stateful tactical decisiveness), p2-57c (mc-units quality consumer)
- tools/regen-objectives-index.py: reusable objectives.json generator (claire offline); index regenerated (303 obj, missing 7->1)
- deploy-guide.sh: cloudflare-pages mode (p2-18, dry-run only; live publish held for approval)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 04:40:40 -07:00
autocommit
61ba6298af feat(audio): generated audio.json manifest + ledger cleanup (p2-16)
- audio-generate-manifest.py: derive data/audio.json from library + subscription (SSoT, not hand-authored), drift-gated in audio-validate.py
- sources.csv: pruned 13 corrupt rows (now 106 == on-disk files); audio-licenses-render guard rejects non-audio/ paths
- all 106 streams resolve, schema-valid; unblocks guide @data/audio.json import
- p2-16: held in_progress pending human listen-test

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 04:40:23 -07:00
autocommit
f88e9b072e feat(sprites): OSS standin coverage p2-23..27 (536 PNGs) + xi-v11 charter
- 536 game-icons.net CC-BY-3.0 standins fill every renderer slot (units/buildings/wonders/city-tiers), id-keyed flat layout
- LICENSES.md (536 ledgered rows, SHA256), STANDINS.md, sprite-license-audit passes
- build_standins.py rewritten data-driven off manifest + icon_rules.json (replaces mapping.json)
- juggernaut-xi-v11 added to approved model list (charter + 2 instruction modules), operator decision
- objectives p2-23..27 + p2-22: partial (standin coverage; final art deferred)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 04:40:14 -07:00
autocommit
4718172732 feat(simulator): unit quality consumer (p2-57c) + sim state
- mc-turn/quality.rs: apply_quality(UnitStats, QualityTier, &QualityDeltas)
- mc-core combat_balance: QualityDeltas/StatDelta global rule + per-unit override
- MapUnit.quality persistence field (serde-default, save-safe)
- quality_spawn_divergence test (producer→tier→consumer pipeline)
- validate-game-data: validate_unit_quality_chain (contract for p2-57b)
- captures converged prior-session sim state (lair loot, replay visibility, worker categories) already integrated on main

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 04:39:57 -07:00
autocommit
e09d54d847 feat(standin-sprites): Add proof sprite capture script and update sprite UID consistency
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 06:03:33 -07:00
autocommit
dc834d7363 chore(standin-sprites): 🔧 Update .gitignore patterns for sprite asset files and build artifacts
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 06:03:32 -07:00
autocommit
222b3309eb feat(tools): Enhance sprite license audit tool to support expanded license types and improve audit precision
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 05:46:13 -07:00
autocommit
ee5234a80b refactor(standin-sprites): ♻️ Refactor sprite build tool and mapping configuration for cleaner sprite generation and configuration rules
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 05:46:13 -07:00
autocommit
b651937b9b infra(player-api): 🧱 Enhance player API server startup script and debugging tools with improved error handling and logging
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 04:06:43 -07:00
autocommit
49a64a899a feat(dbg-contact): Introduce debug utility for analyzing baseline run artifacts in tools/_dbg_contact.py
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 03:50:10 -07:00
autocommit
ecd29a8eca chore(p1-clean): 🔧 Update baseline cleaning script to handle convergence testing requirements
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 03:50:10 -07:00
autocommit
a5cf1073bd feat(p1-clean): Introduce p1-clean-baseline.py script to measure clean baselines for convergence verification in testing/CI/CD pipelines
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 03:32:40 -07:00
autocommit
0459054dd3 feat(tools): Introduce p1-convergence-lens.py script to sample P1 state at convergence turns ≤100 for D1 gate scoring analysis
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-03 02:17:30 -07:00
Natalie
a4fdd7b782 feat(@projects/@magic-civilization): add survival scorecard tooling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-29 19:47:24 -06:00
autocommit
fd634b0667 feat(p1-settle-analysis): Add P1 settlement analysis script for transaction validation and reporting
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-28 20:19:19 -07:00
autocommit
35f55c9ff5 feat(sole-city-gate): Implement Sole City Gate integration tool for system interactions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-27 21:46:38 -07:00
autocommit
1a1f6437a9 perf(autoplay): Implement container mode detection for AUTOPLAY_GODOD_BIN to skip rebuilds in Docker environments
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 16:12:57 -07:00
autocommit
1aea5ec579 chore(docker-tools/docker): 🔧 Update Dockerfile.mc-ai to use a newer base image version and adjust build dependencies for improved compatibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 15:56:23 -07:00
autocommit
4c1b03c9af chore(docker-tools/docker/): 🔧 Optimize Docker build context by updating .dockerignore patterns to refine exclusions for performance and security
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 15:08:20 -07:00
autocommit
7fdd1c39a7 hotfix(docker-specific): 🚑️ Update Docker entrypoint to install SHA-matched .so file deterministically during container startup
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 13:02:45 -07:00
autocommit
de47711cd5 chore(autoplay-specific): 🔧 Update autoplay batch script to support Docker-based builds or AI simulator workflows
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 13:02:45 -07:00
autocommit
05aa38dbcf chore(docker): 🔧 Update Docker build config for mc-ai to exclude sensitive files or optimize build layers
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 13:02:45 -07:00
autocommit
dd78566fca feat(game-logistics): Add logistics chain schema fields, unit catalog support, and migration tool for Age of Dwarves game simulator
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 02:21:14 -07:00
autocommit
09119c5186 feat(claude): Update agent configurations and batch scripts for Claude AI agents to improve worktree management and batch processing
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 02:21:13 -07:00
autocommit
7f8f3090d1 chore(game): 🔧 Update Godot project config and mod signing tool with new export templates and enhanced cryptographic key handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-26 02:21:12 -07:00
Natalie
7678f4668f feat(@projects): add docker container wrapper for godot
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-25 14:06:52 -07:00
Natalie
fc137c5984 fix(@projects/@magic-civilization): 🐛 update deposit resource files
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-19 21:50:01 -07:00
Natalie
e629cd4da5 feat(@projects): add clan rotation for slot 0 in autoplay
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 23:59:30 -07:00
Natalie
1fc885cddc fix(@projects/@magic-civilization): 🐛 fix median game length calculation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 23:52:14 -07:00
Natalie
0c942c65f6 feat(@projects/@magic-civilization): add mcts telemetry service and parity tests
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 07:26:37 -07:00
Natalie
72076031d6 feat(@projects/@magic-civilization): complete upgrade target bridge and tests
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-14 21:32:27 -07:00
Natalie
fe5db2d25f feat(@projects/@magic-civilization): implement tech-gated observation recording
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-13 16:21:35 -07:00
Natalie
573fdec713 feat(@projects/@magic-civilization): add bridge call pattern test validation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-13 12:06:54 -07:00
Natalie
a257a6fbc5 fix(@projects/magic-civilization): 🐛 handle flatpak sandboxed env vars
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-10 03:23:31 -07:00
Natalie
155e7ea5f4 fix(@projects/@magic-civilization): 🐛 handle Weston/llvmpipe framebuffer staleness
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-07 18:14:04 -07:00
Natalie
faf497c8c9 fix(@projects/@magic-civilization): 🐛 mark p3-07b as completed
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-07 11:37:59 -07:00
Natalie
b0640d1df3 feat(@projects/@magic-civilization): add statistics screen UI and validation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-07 03:21:57 -07:00
Natalie
b56acfb4b9 feat(@projects/@magic-civilization): add new buildings and fauna resources
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-05 15:03:49 -04:00
Natalie
7ba49aa59e feat(@projects/@magic-civilization): add apothecarium building
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-05 10:53:34 -04:00
Natalie
3c76b6b47b fix(@projects/@magic-civilization): 🐛 update fauna species data files
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-04 07:12:33 -04:00
Natalie
840becb5cd feat(@projects): add forgejo watcher system
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-04 03:52:04 -04:00
Natalie
6e381f21df feat(@projects/@magic-civilization): add aura bonuses for master/grandmaster tiers
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-04 03:18:25 -04:00
Natalie
6d88d58aa4 feat(@projects): complete worker category taxonomy
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-04 02:44:53 -04:00
Natalie
c9f7b23c0c feat(@projects/@magic-civilization): add tabbed knowledge tree navigation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-04 01:04:25 -04:00
Natalie
c96ab6c4fa fix(@projects/@magic-civilization): 🐛 update fauna species data consistency
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-03 20:02:25 -04:00
Natalie
2c2c1e4ef5 feat(@projects): define tree component types
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-03 13:31:15 -04:00
Natalie
d967b80e20 feat(@projects): mark batch freshness objective as complete
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-03 04:23:51 -04:00
Natalie
c0512c1fb5 feat(@projects/@magic-civilization): add local batch gdextension rebuild logic
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-03 04:18:17 -04:00
Natalie
3985e07778 feat(@projects): update resource deposits and objectives
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-02 18:53:13 -04:00