- typescript-state-machine.ts: replace TODO stub at L557-559 with real
if/else TypeScript codegen from SpeckDL ifblock AST nodes
- parser.ts: fix require-continuation loop at L1213 that was consuming
'if (...)' lines as require args; added nextLine.startsWith('if ')
to the stop conditions so ifblocks parse correctly
- examples/ConditionalToggle.speck: new test fixture exercising if/else
- compiler.test.ts: new describe block for ifblock code generation
(asserts real 'if (' + brace block + 'else', no TODO stub)
Tests: 71/71 green (53 parser + 18 compiler incl. new ifblock test).
74 lines
No EOL
1.6 KiB
JSON
74 lines
No EOL
1.6 KiB
JSON
{
|
|
"bomFormat": "CycloneDX",
|
|
"specVersion": "1.6",
|
|
"components": [],
|
|
"metadata": {
|
|
"tools": [],
|
|
"component": {
|
|
"type": "application",
|
|
"name": "RetryHandler",
|
|
"version": "0.2.0",
|
|
"properties": [
|
|
{
|
|
"name": "speckl:derivesFrom",
|
|
"value": "FaultHandler"
|
|
},
|
|
{
|
|
"name": "speckl:satisfies",
|
|
"value": "RESILIENCE-REQ-01 clause 3.1.2"
|
|
},
|
|
{
|
|
"name": "speckl:satisfies",
|
|
"value": "RESILIENCE-REQ-02"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"annotations": [
|
|
{
|
|
"subject": "speck:RetryHandler",
|
|
"annotations": [
|
|
{
|
|
"type": "tag",
|
|
"value": "provenanceType",
|
|
"text": "author"
|
|
}
|
|
],
|
|
"author": {
|
|
"name": "Scott Scoble",
|
|
"email": "scott@scoble.me"
|
|
},
|
|
"timestamp": "2026-07-19T08:31:16.458Z"
|
|
},
|
|
{
|
|
"subject": "speck:RetryHandler",
|
|
"annotations": [
|
|
{
|
|
"type": "tag",
|
|
"value": "provenanceType",
|
|
"text": "source"
|
|
}
|
|
],
|
|
"author": {
|
|
"name": "Speckl Compiler",
|
|
"email": "compiler@speckl.scoble.me"
|
|
},
|
|
"timestamp": "2026-07-19T08:31:16.458Z"
|
|
},
|
|
{
|
|
"subject": "speck:RetryHandler",
|
|
"annotations": [
|
|
{
|
|
"type": "tag",
|
|
"value": "reviewType",
|
|
"text": "manual"
|
|
}
|
|
],
|
|
"author": {
|
|
"name": "Speckl Compiler",
|
|
"email": "compiler@speckl.scoble.me"
|
|
},
|
|
"timestamp": "2026-07-19T08:31:16.458Z"
|
|
}
|
|
]
|
|
} |