Commit graph

28 commits

Author SHA1 Message Date
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
db0b0ccfdb fix: handle numpy arrays in parse_theme_tags
Parquet files return numpy arrays, not Python lists. Added conversion
from ndarray to list before processing theme tags.
2025-10-18 22:39:53 -07:00
matt
7a94e195b7 fix: remove incorrect import inside loop - functions are in same file 2025-10-18 22:36:45 -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
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
9e6c3e66e9 fix: update generate_theme_catalog to use processed/ directory 2025-10-18 22:11:46 -07:00
matt
e92f2ccfb4 fix: handle themeTags as list in similarity cache builder 2025-10-18 21:50:12 -07:00
matt
b92918581e fix: use correct processed/ path for similarity cache building 2025-10-18 21:43:04 -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
c2960c808e Add card browser with similar cards and performance optimizations 2025-10-17 16:17:36 -07:00
matt
a8dc1835eb feat(card-browser): advanced filters, keyboard shortcuts, and responsive design 2025-10-16 19:02:33 -07:00
matt
9e6c68f559 feat: theme catalog optimization with tag search and faster enrichment 2025-10-15 17:17:46 -07:00
matt
f70ffca23e feat: consolidate card data into optimized format for faster queries and reduced file sizes 2025-10-15 11:04:49 -07:00
matt
4a8d71b16b feature: add non-basic land types to tagging mechanics 2025-10-13 15:07:31 -07:00
matt
06d8796316 feat: add keyword normalization and protection grant detection, fix template syntax and polling issues 2025-10-08 21:06:29 -07:00
matt
d416c9b238 feat: Added Partners, Backgrounds, and related variation selections to commander building. 2025-10-06 09:17:59 -07:00
matt
9428e09cef feat: add supplemental theme catalog tooling, additional theme selection, and custom theme selection 2025-10-03 10:43:24 -07:00
matt
88cf832bf2 Finalize MDFC follow-ups, docs, and diagnostics tooling
document deck summary DFC badges, exporter annotations, and per-face metadata across README/DOCKER/release notes

record completion of all MDFC roadmap follow-ups and add the authoring guide for multi-face CSV entries

wire in optional DFC_PER_FACE_SNAPSHOT env support, exporter regression tests, and diagnostics updates noted in the changelog
2025-10-02 15:31:05 -07:00
matt
0abae06a6e build(ci): harden preview perf gate startup 2025-09-30 16:12:04 -07:00
matt
2888d97883 build(ci): harden preview perf gate 2025-09-30 16:01:51 -07:00
matt
3b4ae36a11 fix: allow empty synergies in fast path validator 2025-09-27 16:17:42 -07:00
matt
33570399f0 feat: refresh theme catalog metadata 2025-09-27 15:19:32 -07:00
matt
49f1f8b2eb feat(random): finalize multi-theme telemetry and polish
Some checks failed
Editorial Lint / lint-editorial (push) Has been cancelled
- document random theme exclusions, perf guard tooling, and roadmap completion

- tighten random reroll UX: strict theme persistence, throttle handling, export parity, diagnostics updates

- add regression coverage for telemetry counters, multi-theme flows, and locked rerolls; refresh README and notes

Tests: pytest -q (fast random + telemetry suites)
2025-09-26 18:15:52 -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