matt
345dfb3e01
perf: improve commander selection speed and fix color identity display
2025-10-19 13:29:47 -07:00
matt
bff64de370
fix: systematically handle numpy arrays from Parquet files across codebase
...
- Add ensure_theme_tags_list() utility to builder_utils for simpler numpy array handling
- Update phase3_creatures.py: 6 locations now use bu.ensure_theme_tags_list()
- Update phase4_spells.py: 9 locations now use bu.ensure_theme_tags_list()
- Update tagger.py: 2 locations use hasattr/list() for numpy compatibility
- Update extract_themes.py: 2 locations use hasattr/list() for numpy compatibility
- Fix build-similarity-cache.yml verification script to handle numpy arrays
- Enhance workflow debug output to show complete row data
Parquet files return numpy.ndarray objects for array columns, not Python lists.
The M4 migration added numpy support to canonical parse_theme_tags() in builder_utils,
but many parts of the codebase still used isinstance(list) checks that fail with arrays.
This commit systematically replaces all 19 instances with proper numpy array handling.
Fixes GitHub Actions workflow 'RuntimeError: No theme tags found' and verification failures.
2025-10-18 22:47:09 -07:00
matt
29b5da4778
fix: correct DataFrame column filtering and enhance debug output
...
- Fix KeyError in generate_theme_catalog.py: use isCommander column correctly
- DataFrame.get() doesn't work like dict.get() - use column name directly
- Enhanced debug step to print full row data for better diagnostics
2025-10-18 22:32:54 -07:00
matt
a689400c47
fix: add Path wrapper in workflow debug step
2025-10-18 22:27:13 -07:00
matt
30dfca0b67
fix: remove CSV fallback from theme catalog generation, add Parquet debug step
...
- Remove CSV fallback logic (Parquet-only in M4 migration)
- Add better error messages when Parquet file missing or empty
- Add workflow debug step to inspect Parquet file after tagging
- Simplify build_theme_catalog function signature
2025-10-18 22:22:35 -07:00
matt
0e19824372
fix: use generate_theme_catalog script instead of non-existent function
2025-10-18 22:07:48 -07:00
matt
3694a5382d
fix: ensure theme catalog is generated before similarity cache build
2025-10-18 21:57:45 -07:00
matt
8e8b788091
fix: add detailed tag validation to CI workflow
2025-10-18 21:56:23 -07:00
mwisnowski
74eb47e670
Change tagging step to run in parallel
2025-10-18 21:37:07 -07:00
matt
8435312c8f
feat: migrate to unified Parquet format with instant GitHub setup and 4x faster tagging
2025-10-18 21:32:12 -07:00
matt
0cf7598400
fix: remove cache build dependency from dockerhub publish
...
Docker builds don't need to wait for cache building.
Cache is downloaded if available, skipped if not.
2025-10-17 17:20:17 -07:00
matt
86752b351b
feat: optimize cache workflow with orphan branch and age check
...
- Create/use orphan branch 'similarity-cache-data' for cache distribution
- Add age check to dockerhub-publish: only rebuild if cache >7 days old
- Use git add -f to force-add cache files (keeps .gitignore clean)
- Weekly scheduled builds will keep cache fresh automatically
This avoids rebuilding cache on every Docker publish while ensuring
cache is always reasonably fresh (<7 days old).
2025-10-17 17:11:04 -07:00
matt
fc911b818e
fix: correct module path for all_cards.parquet generation in CI
...
Changed from non-existent code.web.services.card_loader to correct
code.file_setup.card_aggregator.CardAggregator module.
Fixes ModuleNotFoundError in build-similarity-cache workflow.
2025-10-17 16:41:44 -07:00
matt
c2960c808e
Add card browser with similar cards and performance optimizations
2025-10-17 16:17:36 -07:00
matt
32638b9ec3
fix: use versioned release notes in GitHub release workflow
2025-10-14 17:04:22 -07:00
matt
db84c4d15d
chore: prepare release 2.6.0
2025-10-13 10:26:29 -07:00
matt
bac509741e
bugfix: continued further testing/fixing CI task
2025-10-06 10:01:22 -07:00
matt
d938439bbd
bugfix: continued further testing/fixing CI task
2025-10-06 09:59:00 -07:00
matt
7679176414
bugfix: update editorial_governance to use small smaple set of themes instead of looking for the full library
2025-10-06 09:50:56 -07:00
matt
f68f8949e8
chore: fix imports in editorial_governance CI task causing it to fail from missing pytest
2025-10-06 09:26:49 -07:00
matt
fad6ceb13b
ci: retire preview perf workflow
2025-09-30 16:20:05 -07:00
matt
cf66c1eab1
bugfix: added requirements_dev.txt to editorial_governance ci task to ensure pytest is installed for the task to run
2025-09-29 21:41:15 -07:00
matt
eb5281623a
fix(ci): install httpx and run pytest via python -m
2025-09-27 16:01:44 -07:00
matt
a029d430c5
feat(web): Core Refactor Phase A — extract sampling and cache modules; add adaptive TTL + eviction heuristics, Redis PoC, and metrics wiring. Tests added for TTL, eviction, exports, splash-adaptive, card index, and service worker. Docs+roadmap updated.
2025-09-24 13:57:23 -07:00
matt
c4a7fc48ea
feat(preview): sampling, metrics, governance, server mana data
...
Preview endpoint + fast caches; curated pins + role quotas + rarity/overlap tuning; catalog+preview metrics; governance enforcement flags; server mana/color identity fields; docs/tests/scripts updated.
2025-09-23 09:19:23 -07:00
matt
6d6243d6be
feat(tagging+archetypes): add Pillowfort/Politics/Midrange/Toolbox tagging and unify archetype presence skip logic
2025-09-19 11:53:52 -07:00
matt
f2a76d2ffc
feat(editorial): Phase D synergy commander enrichment, augmentation, lint & docs\n\nAdds Phase D editorial tooling: synergy-based commander selection with 3/2/1 pattern, duplicate filtering, annotated synergy_commanders, promotion to minimum examples, and augmentation heuristics (e.g. Counters Matter/Proliferate injection). Includes new scripts (generate_theme_editorial_suggestions, lint, validate, catalog build/apply), updates orchestrator & web routes, expands CI workflow, and documents usage & non-determinism policies. Updates lint rules, type definitions, and docker configs.
2025-09-18 10:59:20 -07:00
matt
16261bbf09
feat(themes): whitelist governance, synergy cap, docs + tests; feat(random): laid roadwork for random implementation, testing in headless confirmed
2025-09-17 13:23:27 -07:00
matt
07a92eb47f
chore(release): v2.2.9 misc land variety, land alternatives randomization, scroll flicker fix
2025-09-10 16:20:38 -07:00
matt
a9a9350aa0
chore(release): v2.2.8 version bump and changelog scaffold
2025-09-10 09:47:38 -07:00
matt
73d48567b6
fix(docker): seed all default card list JSONs & brackets.yml; update changelog
2025-09-10 08:53:00 -07:00
matt
2bc23cda4a
chore(ci): exclude latest-* arch suffix tags from per-arch pushes
2025-09-10 08:32:59 -07:00
matt
45658d0b72
chore(release): v2.2.7
2025-09-10 08:01:51 -07:00
mwisnowski
014bcc37b7
web: DRY Step 5 and alternatives (partial+macro), centralize start_ctx/owned_set, adopt builder_*
2025-09-02 11:39:14 -07:00
matt
be672ac5d2
release: default to Web UI in Docker image, add HEALTHCHECK and APP_VERSION; CI smoke test; compose docs and dockerhub compose file
2025-08-28 20:40:19 -07:00
mwisnowski
8fa040a05a
build(windows): fix PyInstaller packaging\n\n- Add spec file with hiddenimports and data dirs\n- Use spec in release workflow; fallback to --paths code\n- Insert ./code into sys.path when frozen to resolve local imports
2025-08-25 09:57:02 -07:00
mwisnowski
acfb29cafb
feat(owned-cards): add owned-only workflow, multi-file parsing, and recommendations export\n\n- Prompt to use only owned cards (gated by presence of lists)\n- Support .txt/.csv owned lists, multi-select; commander exempt\n- Owned-only filtering + add guard; recommendations CSV/TXT when incomplete\n- CSV Owned column when not owned-only\n- Docs and Docker updated (owned_cards + config mounts)\n- CI: Windows EXE on tag; Docker Hub tag fix (no major.minor)\n- Changelog added; RELEASE_NOTES.md ignored
2025-08-25 09:48:05 -07:00
matt
5f922835a6
chore(release): v1.1.2 bump, notes/template + README updates, Docker Hub description updater, headless/docs tweaks
2025-08-23 15:29:45 -07:00
matt
fd2530cea3
Release v1.1.1: headless README flags + DockerHub notes auto from template
2025-08-22 16:46:44 -07:00
matt
99005c19f8
Release v1.1.0: headless runner + tagging updates (Discard Matters, Freerunning, Craft, Spree, Explore/Map, Rad, Energy/Resource Engine, Spawn/Scion)
2025-08-22 16:32:39 -07:00
matt
36abbaa1dd
include workflow
2025-08-21 17:01:36 -07:00
matt
cb710d37ed
feat!: auto-setup/tagging; direct builder + rerun prompt; fix(type-summary, .txt dup); refactor(export filenames); ci(DockerHub+GH releases); docs(minimal Windows guide, release notes template)
2025-08-21 17:01:21 -07:00