0.7.1 (2026-06-16)
- add defend_tool_results_async for npm batch parity (a05783c)
- Python parity with @stackone/defender 0.7.1 (Tier 3) (c58a17c)
- Tier 3 provider interface and cascade orchestration (TS 0.7.1 parity) (f2b4109)
- address Copilot PR review on Tier 3 orchestration (570f567)
- tighten Tier3ClassifyResult type and batch doc wording (2515772)
0.7.0 (2026-05-29)
- The default ONNX model directory changed from minilm-full-aug to minilm-multihead-v5. Custom code that hardcoded the old path will no longer load.
- parity with TS defender 0.7.0 (75d046a)
0.6.3 (2026-05-26)
- When
tier2_fieldsis unset, Tier 2 scans all strings (no fallback to Tier 1 risky_field_names).
- align Python package with @stackone/defender 0.6.3 (a91a904)
- ENG-269: Python parity with @stackone/defender 0.6.3 (7c312f1)
0.6.2 (2026-04-22)
- Drop ToolSanitizationRule, config/sanitizer tool_rules, use_default_tool_rules, and get_tool_rule/should_skip_field. Matches @stackone/defender post ENG-12594.
- add missing functions for full TS API parity (aec0c5b)
- add PyPI publishing setup with Release Please CI (2e28373)
- add tier2_fields filter and export ToolSanitizationRule (cb7fd93)
- align Python defender with Node (Tier 2 scoping, ONNX cache) (482bfdd)
- ENG-12402: add PyPI publishing setup with Release Please CI (f979748)
- ENG-12699: TypeScript parity and synced ONNX bundle (0449800)
- port stackone-defender from TypeScript to Python (e3ff70d)
- remove tool rules; batch Tier2 ONNX; lock ONNX load (26c95c2)
- sanitizer: remove dead use_tier2_classification from ToolResultSanitizer (4646179)
- sync Python package with TypeScript parity (e1836dd)
- upgrade ML classifier to jbv2 model (AgentShield 73.7 → 79.8) (bcd27f8)
- upgrade ML classifier to jbv5 (AgentShield 79.8 → 81.1) (781dd10)
- address Copilot/cubic review (Tier2 scope, tokens, SFE, thresholds) (bf173ac)
- ci: avoid fasttext-wheel on Python 3.13 (a6cda76)
- classifier: surface classification errors in classify_by_sentence skip_reason (bd94639)
- default enable_tier2 to True to match TypeScript SDK behaviour (d66773b)
- defender: fix _extract_strings filtering, None checks, and cache ONNX load failure (bf4ce99)
- defender: sync hasThreats blocking logic and tool rules precedence from JS package (a217c3e)
- enable tier2 by default to match TypeScript package (f1fe990)
- sync Python with TypeScript parity (cec0813)
- tier2: apply max_text_length truncation in classify_by_sentence (a67d2c6)
- upgrade ML classifier to jbv2 (AgentShield 73.7 → 79.8) (b452b39)
- upgrade ML classifier to jbv2 (AgentShield 73.7 → 79.8) (ccb1204)
- use uv instead of pip in README installation instructions (519759f)
- sfe: switch optional FastText bindings to fasttext-ng (bc9cc28)
- add README adapted from TypeScript package (a03c757)
- update README — enable_tier2 defaults to True (af0d059)
- update README to reflect changes in package name and Python version (d2fc2ca)
- prepare patch release 0.6.2 (7b3c105)
0.6.1 (2026-04-21)
- align Python package behavior with
@stackone/defender0.6.1 - add SFE preprocessing support (
use_sfe) with fail-open optional runtime loading - add packed-chunk Tier 2 batching and density-adjusted scoring
- add dangerous-key traversal hardening (
__proto__,constructor,prototype) - add cumulative-risk fractional thresholds to reduce list-response false positives
- use
fasttext-nginstead offasttext-wheelfor the[sfe]extra and dev tests so Python 3.13 CI can install maintained FastText bindings (NumPy 2.3+).
- Python package version jumps from
0.1.2to0.6.1to align release train with TypeScript parity. DefenseResultnow includesfields_droppedandtruncated_at_depth.
0.1.2 (2026-04-08)
- upgrade ML classifier to jbv2 (AgentShield 73.7 → 79.8) (b452b39)
- update README to reflect changes in package name and Python version (d2fc2ca)
0.1.1 (2026-04-08)
- add missing functions for full TS API parity (aec0c5b)
- add PyPI publishing setup with Release Please CI (2e28373)
- add tier2_fields filter and export ToolSanitizationRule (cb7fd93)
- ENG-12402: add PyPI publishing setup with Release Please CI (f979748)
- port stackone-defender from TypeScript to Python (e3ff70d)
- sanitizer: remove dead use_tier2_classification from ToolResultSanitizer (4646179)
- sync Python package with TypeScript parity (e1836dd)
- classifier: surface classification errors in classify_by_sentence skip_reason (bd94639)
- defender: fix _extract_strings filtering, None checks, and cache ONNX load failure (bf4ce99)
- defender: sync hasThreats blocking logic and tool rules precedence from JS package (a217c3e)
- enable tier2 by default to match TypeScript package (f1fe990)
- sync Python with TypeScript parity (cec0813)
- use uv instead of pip in README installation instructions (519759f)
- add README adapted from TypeScript package (a03c757)