speckl/compiler
Scott Scoble 7ffd65f6b3
Some checks failed
Deploy Landing Page to Storj / deploy (push) Failing after 2s
speckl: TypeScript state machine generator + Forgejo issue workflow spec
Adds a first-class TypeScript code generator to speckl-compile that emits:
- Const enum for workflow states (IssueWorkflowState)
- Strongly-typed class with guards, state transitions, decision log
- Proper this. prefixing (state vars only, not local params)
- Enum references instead of string literals for state comparisons
- Clean tsc --noEmit compilation

Also includes:
- specs/forgejo-issue-workflow.speckdl — full workflow with 9 actions,
  8 constraints, 5 temporal verifications
- Generator deduplication of duplicate AST nodes
- Support for init block initialization of state variables

The generator was validated against the Forgejo issue workflow spec,
producing IssueWorkflow.ts that compiles with zero errors.

Refs: heartbeat conversation re: speckl-compile extensibility
2026-05-03 12:23:33 -07:00
..
__tests__ speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
dist speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
node_modules speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
specs speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
src speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
test-output speckl: TypeScript state machine generator + Forgejo issue workflow spec 2026-05-03 12:23:33 -07:00
.gitignore Add .gitignore for compiler dependencies and build artifacts 2026-04-29 15:12:37 -07:00
package-lock.json Add SpeckDL compiler scaffold 2026-04-29 15:12:08 -07:00
package.json fix: support hyphenated speck names + provenance block parsing (v0.3.1) 2026-05-02 23:12:27 -07:00
tsconfig.json Add SpeckDL compiler scaffold 2026-04-29 15:12:08 -07:00