• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

forst-lang / forst / 24054577467
76%

Build:
DEFAULT BRANCH: main
Ran 06 Apr 2026 10:37PM UTC
Jobs 1
Files 180
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Apr 2026 10:34PM UTC coverage: 61.831% (+0.2%) from 61.624%
24054577467

push

github

haveyaseen
feat(tictactoe): colocate wire types and finish ApplyMove rules

Merge domain types into engine.ft (remove types.ft), add ValidBoard
(Min/Max on cells), reject moves when the game is no longer playing,
and derive terminal status (win/draw) after each move.

fix(typechecker): compound ensure subjects and field-path hover narrowing

Stop setting ensure assertion BaseType from the root variable when the
subject is a dotted path (e.g. req.state). Register ensure/if narrowing
for full field identifiers, prefer them in lookup, and persist predicate
metadata by identifier so hovers on later lines still show guards.
Record VariableTypes for function and type-guard parameters for field
hover receivers.

fix(lsp): pass dotted span into FieldHoverMarkdown for narrowing display

test: add LSP and typechecker coverage; replace tictactoe fixture in
generate cross-file test with an in-memory synthetic multi-file package

fix(generate): align client index expectation with `export type * from './types.d.ts'`

feat(transformer): extend ensure builtins coverage (ensure_builtins + tests)

Example:

```forst
func ApplyMove(req MoveRequest): (MoveResponse, Error) {
	ensure req.state is ValidBoard()
	if req.state.status != "playing" {
		return { ok: false, message: "game already finished", state: req.state }, invalidMove("game already finished")
	}
	// ...
}
```

78 of 136 new or added lines in 9 files covered. (57.35%)

15522 of 25104 relevant lines covered (61.83%)

16.19 hits per line

Uncovered Changes

Lines Coverage ∆ File
58
26.46
-0.16% forst/internal/transformer/go/ensure_builtins.go
Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/179849281 24054577467.1 06 Apr 2026 10:37PM UTC 180
61.83
GitHub Action Run
Source Files on build 24054577467
  • Tree
  • List 180
  • Changed 12
  • Source Changed 0
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 50bba0d0 on github
  • Prev Build on main (#24049134224)
  • Next Build on main (#24308153024)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc