CHANGELOG.md
LICENSE
MANIFEST.in
README.md
pyproject.toml
docs/00-five-whys.md
docs/01-span-contract.md
docs/02-first-principles.md
docs/03-ai-engineering.md
docs/04-research-landscape.md
docs/05-model-catalog.md
docs/06-library-api.md
docs/07-architecture.md
docs/08-implementation-plan.md
docs/09-evaluation.md
docs/10-taxonomy.md
docs/11-examples.md
docs/12-public-corpora.md
docs/13-first-public-score.md
docs/14-assessment-2026-11.md
docs/15-research-update-2026-11.md
docs/16-grounded-improvement-plan.md
docs/17-next-stage-ai-engineering.md
docs/18-protection-and-model-results.md
docs/19-release-0.4.0.md
docs/20-improvement-research-2026-11.md
docs/21-protection-readiness.md
docs/README.md
docs/glossary.md
docs/adr/0001-locate-spans.md
docs/adr/0002-two-default-lanes.md
docs/adr/0003-local-weights.md
docs/adr/0004-secrets-irreversible.md
docs/adr/0005-overlap-and-coverage.md
docs/adr/0006-protection-plan.md
docs/e2e/README.md
docs/eval/gretel-finance-en__en-closed-400.json
docs/eval/gretel-finance-en__rules-full.json
docs/eval/nemotron-pii__en-closed-500.json
docs/eval/nemotron-pii__rules-2000.json
docs/eval/modal/spy-legal__en-closed-50.json
docs/eval/modal/spy-legal__multi-open-50.json
docs/eval/modal/spy-legal__rules-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__en-closed-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__multi-boundary-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__multi-encoder-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__multi-open-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__opf-native-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/gretel-finance-en__rules-50.json
docs/eval/modal/gretel-finance-en-50-86e9aa29/run.json
docs/eval/modal/gretel-finance-en-50-9418dddc/gretel-finance-en__ettin-native-50.json
docs/eval/modal/gretel-finance-en-50-9418dddc/gretel-finance-en__horizon-native-50.json
docs/eval/modal/gretel-finance-en-50-9418dddc/gretel-finance-en__masker-mini-native-50.json
docs/eval/modal/gretel-finance-en-50-9418dddc/gretel-finance-en__tracer-native-50.json
docs/eval/modal/gretel-finance-en-50-9418dddc/run.json
docs/eval/modal/gretel-finance-en-50-a1c0ba80/run.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/gretel-finance-en__minilm-native-50.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/gretel-finance-en__multi-encoder-50.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/gretel-finance-en__multi-encoder-base-50.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/gretel-finance-en__multi-open-50.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/gretel-finance-en__tracer-native-50.json
docs/eval/modal/gretel-finance-en-50-eceb01f7/run.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__en-closed-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__multi-boundary-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__multi-encoder-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__multi-open-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__opf-native-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/nemotron-pii__rules-25.json
docs/eval/modal/nemotron-pii-25-a9d52b9f/run.json
docs/eval/modal/spy-legal-50-0e100240/run.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__en-closed-50.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__multi-boundary-50.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__multi-encoder-50.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__multi-open-50.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__opf-native-50.json
docs/eval/modal/spy-legal-50-0e100240/spy-legal__rules-50.json
docs/eval/modal/spy-legal-50-5fdf7be4/run.json
docs/eval/modal/spy-legal-50-5fdf7be4/spy-legal__ettin-native-50.json
docs/eval/modal/spy-legal-50-5fdf7be4/spy-legal__horizon-native-50.json
docs/eval/modal/spy-legal-50-5fdf7be4/spy-legal__masker-mini-native-50.json
docs/eval/modal/spy-legal-50-5fdf7be4/spy-legal__tracer-native-50.json
docs/eval/modal/spy-legal-50-835c8e36/run.json
docs/eval/modal/spy-legal-50-835c8e36/spy-legal__multi-encoder-50.json
docs/eval/modal/spy-legal-50-9cbb4e97/run.json
docs/eval/modal/spy-legal-50-9cbb4e97/spy-legal__en-closed-50.json
docs/eval/modal/spy-legal-50-9cbb4e97/spy-legal__minilm-native-50.json
docs/eval/modal/spy-legal-50-9cbb4e97/spy-legal__multi-encoder-50.json
docs/eval/modal/spy-legal-50-9cbb4e97/spy-legal__multi-encoder-base-50.json
docs/eval/modal/spy-legal-50-9cbb4e97/spy-legal__tracer-native-50.json
docs/eval/modal/spy-legal-50-e29f487e/run.json
docs/eval/modal/spy-legal-50-e29f487e/spy-legal__en-closed-50.json
docs/eval/modal/spy-legal-50-e29f487e/spy-legal__multi-boundary-50.json
docs/eval/modal/spy-legal-50-e29f487e/spy-legal__multi-encoder-50.json
docs/eval/modal/spy-legal-50-e29f487e/spy-legal__multi-open-50.json
docs/eval/modal/spy-legal-50-e29f487e/spy-legal__rules-50.json
docs/eval/modal/spy-medical-50-2a6ed546/run.json
docs/eval/modal/spy-medical-50-2a6ed546/spy-medical__multi-encoder-50.json
docs/eval/modal/spy-medical-50-55290bac/run.json
docs/eval/modal/spy-medical-50-55290bac/spy-medical__ettin-native-50.json
docs/eval/modal/spy-medical-50-55290bac/spy-medical__horizon-native-50.json
docs/eval/modal/spy-medical-50-55290bac/spy-medical__masker-mini-native-50.json
docs/eval/modal/spy-medical-50-55290bac/spy-medical__tracer-native-50.json
docs/eval/modal/spy-medical-50-733d5cc0/run.json
docs/eval/modal/spy-medical-50-733d5cc0/spy-medical__ettin-native-50.json
docs/eval/modal/spy-medical-50-733d5cc0/spy-medical__horizon-native-50.json
docs/eval/modal/spy-medical-50-733d5cc0/spy-medical__masker-int4-native-50.json
docs/eval/modal/spy-medical-50-733d5cc0/spy-medical__masker-mini-native-50.json
docs/eval/modal/spy-medical-50-7515b1aa/run.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__en-closed-50.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__minilm-native-50.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__multi-encoder-50.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__multi-encoder-base-50.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__multi-encoder-us-50.json
docs/eval/modal/spy-medical-50-7515b1aa/spy-medical__tracer-native-50.json
docs/eval/modal/spy-medical-50-e42b5910/run.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__en-closed-50.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__multi-boundary-50.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__multi-encoder-50.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__multi-open-50.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__opf-native-50.json
docs/eval/modal/spy-medical-50-e42b5910/spy-medical__rules-50.json
docs/eval/paired/gretel-finance-en-50-complementarity-bcd3f281.json
docs/eval/paired/gretel-finance-en-50-quantized-449da1bc.json
docs/eval/paired/spy-medical-50-complementarity-2f132a4b.json
docs/eval/paired/spy-medical-50-quantized-f59f4ca4.json
docs/eval/releases/edgepii-0.4.0.json
docs/eval/stages/spy-legal-en-closed-50-66c2f279.json
docs/eval/stages/spy-legal-multi-encoder-50-a6d83bcf.json
docs/eval/stages/spy-medical-multi-encoder-50-0bea79b7.json
docs/eval/validation/2026-11-05-compact-final/validation.json
docs/eval/validation/2026-11-05-compact-research/validation.json
docs/eval/validation/2026-11-05-compact-site-final/validation.json
docs/eval/validation/2026-11-05-final/validation.json
docs/eval/validation/2026-11-05-next-stage-site/validation.json
docs/eval/validation/2026-11-05-protection-final/validation.json
docs/eval/validation/2026-11-05-protection-full/validation.json
docs/eval/validation/2026-11-05-protection-gates-050/validation.json
docs/eval/validation/2026-11-05-protection-release/validation.json
docs/eval/validation/2026-11-05-protection-site-release/validation.json
docs/eval/validation/2026-11-05-pypi-0-4-0/validation.json
docs/eval/validation/2026-11-05-pypi-site-published/validation.json
docs/eval/validation/2026-11-05-site-final/validation.json
docs/eval/validation/c4fac454/validation.json
docs/eval/validation/e5f6eb1a/validation.json
docs/eval/validation/pypi-0-4-0/validation.json
docs/research/compact-launch-attempts-2026-11-05.json
docs/research/compact-model-manifest-2026-11-05.json
docs/research/compact-results-summary-2026-11-05.json
docs/research/compact-runtime-precision-2026-11-05.json
docs/research/compact-runtime-precision-cpu-2026-11-05.json
docs/research/model-manifest-2026-11-05.json
docs/research/model-manifest-phase2-2026-11-05.json
docs/research/phase2-baseline-analysis-2026-11-05.json
docs/research/protection-readiness-summary-2026-11-05.json
src/edgepii/__init__.py
src/edgepii/_version.py
src/edgepii/check.py
src/edgepii/errors.py
src/edgepii/labelmap.py
src/edgepii/locator.py
src/edgepii/merge.py
src/edgepii/normalize.py
src/edgepii/presets.py
src/edgepii/protection.py
src/edgepii/protocol.py
src/edgepii/py.typed
src/edgepii/quasi.py
src/edgepii/redact.py
src/edgepii/restore.py
src/edgepii/span.py
src/edgepii/toolcall.py
src/edgepii/windows.py
src/edgepii.egg-info/PKG-INFO
src/edgepii.egg-info/SOURCES.txt
src/edgepii.egg-info/dependency_links.txt
src/edgepii.egg-info/requires.txt
src/edgepii.egg-info/top_level.txt
src/edgepii/bridges/__init__.py
src/edgepii/bridges/presidio.py
src/edgepii/detectors/__init__.py
src/edgepii/detectors/gliner.py
src/edgepii/detectors/gliner2.py
src/edgepii/detectors/hf_token.py
src/edgepii/detectors/rules.py
src/edgepii/detectors/uie.py
src/edgepii/eval/__init__.py
src/edgepii/eval/cli.py
src/edgepii/eval/corpora.py
src/edgepii/eval/corpora.yaml
src/edgepii/eval/coverage.py
src/edgepii/eval/gates.py
src/edgepii/eval/runner.py
src/edgepii/eval/score.py
src/edgepii/taxonomies/2026.11.yaml
tests/test_acceptance.py
tests/test_compact_candidates.py
tests/test_country_profile.py
tests/test_demo_api.py
tests/test_demo_e2e.py
tests/test_eval_corpora.py
tests/test_eval_gates.py
tests/test_first_principles.py
tests/test_hardening.py
tests/test_model_runtime.py
tests/test_native_candidates.py
tests/test_paired_research.py
tests/test_principles.py
tests/test_protection.py
tests/test_protection_gates.py
tests/test_quasi.py
tests/test_restore.py
tests/test_site.py
tests/test_site_e2e.py
tests/test_stage_audit.py