Skip to content

v0.5.2 - Security & logic defect fixes + CI fix

Choose a tag to compare

@jiangjunw15-web jiangjunw15-web released this 25 Oct 08:54
· 5 commits to main since this release

What Changed

Five audited defects are closed in this patch release, with 18 regression tests guarding them.

Fixes

# Priority Problem Fix
1 High Custom profile directory could be recursively deleted _copy_profile now refuses when src/dst overlap or target lacks Local State
2 High Password values echoed back inconsistently fill(), snapshot, and batch extract all mask password fields as ....
3 High Submit gate had two opposite bugs (empty list passed 0==0; answered-only items unbalanced) Empty question list now refuses submit; previously-answered objectives counted in total
4 Medium patrol(submit=True) had no effect auto_answer+submit now wired through rule_based_answer with full-coverage gate
5 Medium Unknown course ID widened query to all courses Unknown/expired course ID now raises UplusError instead of falling back

Regression Tests

tests/test_fixes.py - 18 tests covering all five fixes (positive + negative cases), all passing.

CI Fix

  • pom.xml: replaced hardcoded 0.5.0 filenames with ${project.version} so artifact paths follow the version bump automatically
  • publish-packages.yml: rm -rf maven-package/artifacts before copy to prevent stale files from previous releases

Full Changelog: v0.5.0...v0.5.2