Skip to content

Fix CI KeyError from missing jsonschema format checkers - #22

Merged
fraware merged 1 commit into
mainfrom
fix-ci-after-phase-0-7
Jul 23, 2026
Merged

Fix CI KeyError from missing jsonschema format checkers#22
fraware merged 1 commit into
mainfrom
fix-ci-after-phase-0-7

Conversation

@fraware

@fraware fraware commented Jul 23, 2026

Copy link
Copy Markdown
Member

Summary

  • python, lean, and validate-release-chain failed on main after PR Phase 0-7: correctness, protocol hardening, and release-quality gates #6 because pcs crashed on import with KeyError: 'date-time' when constructing FormatChecker(formats=ASSERTED_FORMATS).
  • Bare jsonschema only registers those format checkers when optional format extras are installed; CI installs did not include them.
  • Depend on jsonschema[format-nongpl], pin the extras in python/requirements.lock, harden format-checker construction with a clear error, and document the requirement.

Test plan

  • Reproduced KeyError: 'date-time' in a clean venv without format extras
  • pip install -c requirements.lock -e '.[dev]' then pcs capabilities
  • pytest -q (771 passed, 11 skipped)
  • pcs validate-release-chain, pcs schema check, pcs examples check
  • lake build PCS and lake build PFCore
  • Confirm GitHub CI jobs python, lean, and validate-release-chain are green on this PR

Bare jsonschema omits date-time/uri/duration/hostname checkers, so
FormatChecker(formats=ASSERTED_FORMATS) raised KeyError and broke
python, lean, and validate-release-chain jobs. Depend on
jsonschema[format-nongpl], pin the extras in requirements.lock, and
fail with an actionable error if asserted formats are missing.
@fraware
fraware merged commit b4ae0c7 into main Jul 23, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant