- New generator: compiler/src/generators/z3.ts (1,034 lines) - Translates SpeckDL state → Z3 sort declarations - Translates invariants → Z3 define-fun returning Bool - Translates actions → Z3 transition predicates (enabled + step) - BMC unrolling with --verify-depth=N (default: 10) - CLI: --target=z3 or --target=all - ToggleSwitch and TigerBeetleLedger generate valid SMT-LIB2 - KafkaKRaft spec generates valid SMT-LIB2 structure - Complex forall/set expressions emit 'true' as placeholders (to be improved) - All 41 existing tests still pass This unblocks M1.2 (KRaft verification), M3.2 (Show HN), and M4.3 (OAuth verification).
69 lines
No EOL
1.6 KiB
JSON
69 lines
No EOL
1.6 KiB
JSON
{
|
|
"@context": [
|
|
"https://spdx.github.io/spdx-v3/spdx-context.jsonld",
|
|
{
|
|
"speckl": "https://speckl.scoble.me/ns/v0.2#"
|
|
}
|
|
],
|
|
"@type": "spdx:Document",
|
|
"spdx": {
|
|
"@id": "spdx:KafkaKRaft",
|
|
"@type": "spdx:Snippet",
|
|
"name": "KafkaKRaft",
|
|
"spdxVersion": "3.0.1",
|
|
"dataLicense": "CC0-1.0",
|
|
"creationInfo": {
|
|
"created": "2026-05-10T05:28:26.210Z",
|
|
"createdBy": [
|
|
"Organization: Speckl",
|
|
"tool: speckl-compile-0.2.0"
|
|
]
|
|
},
|
|
"annotations": [
|
|
{
|
|
"@type": "spdx:Annotation",
|
|
"annotationType": "spdx:REVIEW",
|
|
"annotator": {
|
|
"@type": "spdx:Tool",
|
|
"name": "speckl-compile"
|
|
},
|
|
"timestamp": "2026-05-10T05:28:26.210Z",
|
|
"comment": "Review type: hybrid"
|
|
}
|
|
]
|
|
},
|
|
"builtBy": [],
|
|
"relationships": [
|
|
{
|
|
"from": {
|
|
"@id": "spdx:KafkaKRaft"
|
|
},
|
|
"to": {
|
|
"@id": "spdx:agent:Speckl Compiler v0.3"
|
|
},
|
|
"relationshipType": "spdx:wasAttributedTo"
|
|
},
|
|
{
|
|
"from": {
|
|
"@id": "spdx:KafkaKRaft"
|
|
},
|
|
"to": {
|
|
"@id": "spdx:source:architecture_review:KRaft-Core-Consensus"
|
|
},
|
|
"relationshipType": "spdx:wasInformedBy"
|
|
}
|
|
],
|
|
"elements": [
|
|
{
|
|
"@type": "spdx:Person",
|
|
"@id": "spdx:agent:Speckl Compiler v0.3",
|
|
"name": "Speckl Compiler v0.3"
|
|
},
|
|
{
|
|
"@type": "spdx:Activity",
|
|
"@id": "spdx:source:architecture_review:KRaft-Core-Consensus",
|
|
"name": "architecture_review - KRaft-Core-Consensus",
|
|
"type": "architecture_review"
|
|
}
|
|
]
|
|
} |