Intract składa się z kilku warstw.
Pliki:
src/intract/models.pysrc/intract/parser.pysrc/intract/signature.pysrc/intract/validation.pysrc/intract/normalizer.pyOdpowiedzialności:
contract line / manifest
-> Contract
-> ContractRecord
-> ContractSignature
-> ValidationResult
Plik:
Komendy:
scan
validate
check
check-manifest
coverage
duplicates
graph
watch
tickets
artifact
engine
Plik:
Działa przez polling i hash plików.
snapshot A
-> zmiana pliku
snapshot B
-> diff snapshots
-> validate
Folder:
Moduły:
scanner.py -> zbiera pliki źródłowe
analyzer.py -> wykrywa fragmenty logiczne
assigner.py -> sugeruje kontrakty
drift.py -> wykrywa zmianę logiki
monitor.py -> scala scan/suggest/drift/validate
Folder:
Typy pluginów:
ParserPlugin
ValidatorPlugin
ReporterPlugin
IntegrationPlugin
Folder:
Obecnie:
planfile-compatible ticket export
Folder:
Obecnie:
SARIF
JSON przez CLI
Plik:
Obsługuje:
OpenAPI x-intract
Dockerfile
GitHub Actions
Kubernetes YAML