fakeflacfinder 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- fakeflacfinder-0.1.0/.gitignore +22 -0
- fakeflacfinder-0.1.0/CONTRIBUTING.md +37 -0
- fakeflacfinder-0.1.0/LICENSE +674 -0
- fakeflacfinder-0.1.0/PKG-INFO +222 -0
- fakeflacfinder-0.1.0/README.md +194 -0
- fakeflacfinder-0.1.0/SECURITY.md +32 -0
- fakeflacfinder-0.1.0/docs/architecture.md +370 -0
- fakeflacfinder-0.1.0/docs/lossy-evidence-scoring.md +405 -0
- fakeflacfinder-0.1.0/docs/research-and-validation.md +354 -0
- fakeflacfinder-0.1.0/fakeflacfinder/__init__.py +5 -0
- fakeflacfinder-0.1.0/fakeflacfinder/__main__.py +6 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_report_output.py +108 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_reporting_core.py +69 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_reporting_human.py +188 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_reporting_json.py +157 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_spectral/__init__.py +1 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_spectral/dsp.py +135 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_spectral/features.py +297 -0
- fakeflacfinder-0.1.0/fakeflacfinder/_spectral/passes.py +241 -0
- fakeflacfinder-0.1.0/fakeflacfinder/cancellation.py +50 -0
- fakeflacfinder-0.1.0/fakeflacfinder/cli.py +153 -0
- fakeflacfinder-0.1.0/fakeflacfinder/constants.py +43 -0
- fakeflacfinder-0.1.0/fakeflacfinder/discovery.py +355 -0
- fakeflacfinder-0.1.0/fakeflacfinder/file_analysis.py +348 -0
- fakeflacfinder-0.1.0/fakeflacfinder/integrity.py +494 -0
- fakeflacfinder-0.1.0/fakeflacfinder/integrity_results.py +189 -0
- fakeflacfinder-0.1.0/fakeflacfinder/metadata.py +496 -0
- fakeflacfinder-0.1.0/fakeflacfinder/models.py +232 -0
- fakeflacfinder-0.1.0/fakeflacfinder/native.py +130 -0
- fakeflacfinder-0.1.0/fakeflacfinder/pcm_decode.py +80 -0
- fakeflacfinder-0.1.0/fakeflacfinder/progress.py +194 -0
- fakeflacfinder-0.1.0/fakeflacfinder/reporting.py +60 -0
- fakeflacfinder-0.1.0/fakeflacfinder/scan_output.py +154 -0
- fakeflacfinder-0.1.0/fakeflacfinder/scanner.py +553 -0
- fakeflacfinder-0.1.0/fakeflacfinder/schema/scan-report-v1.json +388 -0
- fakeflacfinder-0.1.0/fakeflacfinder/scoring.py +404 -0
- fakeflacfinder-0.1.0/fakeflacfinder/spectral.py +384 -0
- fakeflacfinder-0.1.0/fakeflacfinder/worker_runtime.py +116 -0
- fakeflacfinder-0.1.0/pyproject.toml +83 -0
- fakeflacfinder-0.1.0/tests/conftest.py +34 -0
- fakeflacfinder-0.1.0/tests/fixtures/ietf-flac/README.md +23 -0
- fakeflacfinder-0.1.0/tests/fixtures/ietf-flac/manifest.json +85 -0
- fakeflacfinder-0.1.0/tests/fixtures/smoke/not-flac.flac +1 -0
- fakeflacfinder-0.1.0/tests/integration/test_cli_release.py +419 -0
- fakeflacfinder-0.1.0/tests/integration/test_ietf_vectors.py +79 -0
- fakeflacfinder-0.1.0/tests/integration/test_memory_gate.py +114 -0
- fakeflacfinder-0.1.0/tests/integration/test_native_flac.py +61 -0
- fakeflacfinder-0.1.0/tests/unit/test_cancellation.py +129 -0
- fakeflacfinder-0.1.0/tests/unit/test_cli.py +99 -0
- fakeflacfinder-0.1.0/tests/unit/test_discovery.py +255 -0
- fakeflacfinder-0.1.0/tests/unit/test_file_analysis.py +140 -0
- fakeflacfinder-0.1.0/tests/unit/test_integrity.py +267 -0
- fakeflacfinder-0.1.0/tests/unit/test_metadata.py +210 -0
- fakeflacfinder-0.1.0/tests/unit/test_models.py +81 -0
- fakeflacfinder-0.1.0/tests/unit/test_native.py +97 -0
- fakeflacfinder-0.1.0/tests/unit/test_reporting.py +499 -0
- fakeflacfinder-0.1.0/tests/unit/test_scan_output.py +23 -0
- fakeflacfinder-0.1.0/tests/unit/test_scanner.py +1354 -0
- fakeflacfinder-0.1.0/tests/unit/test_schema.py +131 -0
- fakeflacfinder-0.1.0/tests/unit/test_scoring.py +211 -0
- fakeflacfinder-0.1.0/tests/unit/test_spectral.py +365 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
.venv/
|
|
2
|
+
.pytest_cache/
|
|
3
|
+
.ruff_cache/
|
|
4
|
+
.coverage
|
|
5
|
+
coverage.xml
|
|
6
|
+
htmlcov/
|
|
7
|
+
dist/
|
|
8
|
+
build/
|
|
9
|
+
*.egg-info/
|
|
10
|
+
__pycache__/
|
|
11
|
+
*.py[cod]
|
|
12
|
+
.DS_Store
|
|
13
|
+
|
|
14
|
+
/fakeflacfinder-report.*
|
|
15
|
+
|
|
16
|
+
# Local environment files may contain credentials or machine-specific settings.
|
|
17
|
+
.env
|
|
18
|
+
.env.*
|
|
19
|
+
!.env.example
|
|
20
|
+
|
|
21
|
+
# Optional public integration vectors are verified from the pinned manifest.
|
|
22
|
+
/tests/fixtures/ietf-flac/files/
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Thanks for helping improve FakeFlacFinder. The project is in alpha and favors
|
|
4
|
+
small, testable changes with explicit assumptions.
|
|
5
|
+
|
|
6
|
+
## Development setup
|
|
7
|
+
|
|
8
|
+
Install CPython 3.11 through 3.14 and uv 0.11.28 or a newer 0.11.x release, then
|
|
9
|
+
run:
|
|
10
|
+
|
|
11
|
+
```console
|
|
12
|
+
uv sync --locked
|
|
13
|
+
uv run --locked ruff check .
|
|
14
|
+
uv run --locked ruff format --check .
|
|
15
|
+
uv run --locked pytest
|
|
16
|
+
uv build
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Do not update `uv.lock` unless the dependency inputs intentionally changed.
|
|
20
|
+
|
|
21
|
+
## Changes and tests
|
|
22
|
+
|
|
23
|
+
- Add focused tests for behavior changes and regressions.
|
|
24
|
+
- Keep scans read-only and preserve deterministic report ordering.
|
|
25
|
+
- Update the report schema and its version when changing structured output.
|
|
26
|
+
- Document scoring changes and avoid presenting scores as probabilities.
|
|
27
|
+
- Support scientific claims with reproducible, labelled validation data.
|
|
28
|
+
|
|
29
|
+
## Privacy and security
|
|
30
|
+
|
|
31
|
+
Do not commit music files, generated scan reports, credentials, private paths,
|
|
32
|
+
or identifying metadata. Use synthetic fixtures or redistributable public test
|
|
33
|
+
vectors and record their provenance. Redact paths, filenames, and tags from bug
|
|
34
|
+
reports.
|
|
35
|
+
|
|
36
|
+
Report vulnerabilities according to [`SECURITY.md`](SECURITY.md), without
|
|
37
|
+
posting sensitive details publicly.
|