Skip to content

grepxcel 0.4.1

Latest

Choose a tag to compare

@github-actions github-actions released this 21 Sep 05:09
v0.4.1
30da499

Fixed

  • not-null / not-empty round-trip fidelity — FieldDef now stores required_token
    (the original parser token) so the web wizard no longer silently rewrites not-empty fields
    as not-null when a pattern is saved after preload.
  • Single source of truth for token sets — VALID_MODE_TOKENS / VALID_CONSTRAINT_TOKENS
    exported from pattern_parser.py and imported by wizard_core.py; local duplicate
    frozensets in _col_a_extra_to_parts eliminated.
  • var:(default) guard — the pattern writer now strips (default) from var: col-A
    cells, symmetric with the existing lbl:(default) guard.
  • Stale lbl:(default) fixture — 01_simple_invoice_data_pattern-from-web.csv had
    8 rows written with the old lbl:(default) syntax that PatternParser rejects; fixed to
    lbl:.
  • Silent test skip — test_pattern_tester.py referenced a non-existent fixture filename,
    causing 10 tests to silently skip; corrected.

Improved

  • AI-debug logging in web-wizard session log — three new structured event types make
    session logs machine-readable for bug analysis and architecture tracing:
    • PRELOAD_FIELD — one entry per cell loaded from a pattern file (role, name, type,
      match pattern, col_a_extra modifiers).
    • SCHEMA_SUMMARY — emitted immediately before each SAVE; reports lbl=N var=N total=N
      and a modifier distribution (not-null×3 trim-whitespace×1 …).
    • Session log header updated to document all event types.
  • Unrecognized-token warning — _col_a_extra_to_parts now emits a logging.WARNING
    when it encounters tokens not in the parser's valid sets, naming the offending tokens and
    the complete valid token lists.