Skip to content

Remove repository examples - #161

Merged
SandroMaglione merged 1 commit into
mainfrom
codex/remove-examples
Aug 22, 2026
Merged

Remove repository examples#161
SandroMaglione merged 1 commit into
mainfrom
codex/remove-examples

Conversation

@SandroMaglione

Copy link
Copy Markdown
Member

Summary

  • remove the platformer, playground, and Pokémon example packages
  • remove example discovery and checks from CI and simplify the change classifier
  • remove example links and maintenance instructions
  • retain the stronger core coverage already exercising the examples’ statechart, runtime, testing, reactivity, and lifecycle semantics

Changeset

  • Added or updated for a library or package-metadata change
  • Not required because this PR does not change src/ or package.json

Validation

  • pnpm check
  • Automated type-performance measurement passed
  • Automated runtime- and memory-performance measurement passed

@github-actions

Copy link
Copy Markdown
Contributor

Type performance

Measured with TypeScript 6.0.3 and skipLibCheck=true.

Scenario Base PR Difference
Effect only 55 55 0 (0.0%)
Import effect-machine 55 55 0 (0.0%)
Machine.states (3 states) 3,039 3,039 0 (0.0%)
Machine.make (3 states, 2 events) 10,759 10,759 0 (0.0%)
machine.handle (3 states, 2 transitions) 28,192 28,192 0 (0.0%)
fluent transition (10 named branches) 106,006 106,006 0 (0.0%)
fluent invocation (state-dependent Effect) 92,756 92,756 0 (0.0%)
machine.handle (depth 24) 192,588 192,588 0 (0.0%)
machine.handle (wide depth 16) 220,950 220,950 0 (0.0%)
machine.handle (parallel/history/choice) 128,393 128,393 0 (0.0%)
machine definition (3 independent implementations) 127,346 127,346 0 (0.0%)
machine exact input/output/error/services 113,924 113,924 0 (0.0%)
execution adapter readiness 120,586 120,586 0 (0.0%)

Marginal instantiations are measured against the matching setup without that API call:

Scenario Base PR Difference
Import effect-machine 0 0 0
Machine.states (3 states) 2,984 2,984 0 (0.0%)
Machine.make (3 states, 2 events) 7,712 7,712 0 (0.0%)
machine.handle (3 states, 2 transitions) 17,433 17,433 0 (0.0%)
fluent transition (10 named branches) 95,757 95,757 0 (0.0%)
fluent invocation (state-dependent Effect) 83,491 83,491 0 (0.0%)
machine.handle (depth 24) 171,892 171,892 0 (0.0%)
machine.handle (wide depth 16) 201,461 201,461 0 (0.0%)
machine.handle (parallel/history/choice) 108,130 108,130 0 (0.0%)
machine definition (3 independent implementations) 111,377 111,377 0 (0.0%)
machine exact input/output/error/services 99,413 99,413 0 (0.0%)
execution adapter readiness 90,770 90,770 0 (0.0%)
Check times (informational)
Scenario Base PR
Effect only 0.03s 0.05s
Import effect-machine 0.03s 0.03s
Machine.states (3 states) 0.11s 0.10s
Machine.make (3 states, 2 events) 0.17s 0.19s
machine.handle (3 states, 2 transitions) 0.26s 0.26s
fluent transition (10 named branches) 0.55s 0.52s
fluent invocation (state-dependent Effect) 0.50s 0.50s
machine.handle (depth 24) 0.79s 0.83s
machine.handle (wide depth 16) 0.82s 0.83s
machine.handle (parallel/history/choice) 0.65s 0.64s
machine definition (3 independent implementations) 0.65s 0.64s
machine exact input/output/error/services 0.59s 0.60s
execution adapter readiness 0.59s 0.60s

Type instantiations are the comparison metric. Check time varies with runner load and is informational only.

@github-actions

Copy link
Copy Markdown
Contributor

Runtime performance

Median of 5 independent benchmark processes on AMD EPYC 9V74 80-Core Processor with Node v24.19.0.

Pull request baseline

Scenario Effect Machine
Plan counter transitions 113,639 transitions/s
Drain burst with terminal fence 333,026 increments/s
Drain burst with a change observer 312,329 increments/s
Lookup and send to one child 281,884 increments/s
Start and stop a machine 138,485 machines/s
Start and stop a parent with one child 41,345 families/s
Plan transitions through a compound state 98,855 transitions/s
Plan transitions through parallel regions 81,890 transitions/s
Drain burst through a compound state 275,266 events/s
Drain burst through two parallel regions 281,887 events/s
Drain a compound-state burst with a change observer 262,556 events/s

Process runtime reference points

Scenario Effect Machine
Start and stop a raw generic process 26,325 processes/s
Start and stop a raw compiled process 65,950 processes/s
Memory profile Effect Machine
Idle machine 1.8 KiB
Raw generic managed process 13.9 KiB
Raw compiled process 3.2 KiB
Two independent idle machines 3.4 KiB
Idle parent with one child 5.8 KiB
Parent with observed child registry 10.0 KiB
Parent with observed invoked child snapshots 6.3 KiB

Effect Machine change from base

Metric Base Base variability PR PR variability Difference
Plan counter transitions 114,082 transitions/s 1.2% MAD 113,639 transitions/s 0.6% MAD -0.4%
Drain burst with terminal fence 334,216 increments/s 0.8% MAD 333,026 increments/s 0.1% MAD -0.4%
Drain burst with a change observer 313,187 increments/s 0.1% MAD 312,329 increments/s 0.3% MAD -0.3%
Lookup and send to one child 287,807 increments/s 1.5% MAD 281,884 increments/s 0.5% MAD -2.1%
Start and stop a machine 139,063 machines/s 0.6% MAD 138,485 machines/s 0.4% MAD -0.4%
Start and stop a parent with one child 41,261 families/s 0.5% MAD 41,345 families/s 0.8% MAD +0.2%
Plan transitions through a compound state 99,966 transitions/s 0.1% MAD 98,855 transitions/s 1.2% MAD -1.1%
Plan transitions through parallel regions 83,280 transitions/s 1.1% MAD 81,890 transitions/s 0.8% MAD -1.7%
Drain burst through a compound state 275,762 events/s 0.7% MAD 275,266 events/s 0.3% MAD -0.2%
Drain burst through two parallel regions 282,836 events/s 0.5% MAD 281,887 events/s 0.4% MAD -0.3%
Drain a compound-state burst with a change observer 263,429 events/s 1.6% MAD 262,556 events/s 1.5% MAD -0.3%
Idle machine heap per unit 1.8 KiB 0.1% MAD 1.8 KiB 0.0% MAD -0.1%
Raw generic managed process heap per unit 13.9 KiB 0.0% MAD 13.9 KiB 0.0% MAD +0.0%
Raw compiled process heap per unit 3.2 KiB 0.3% MAD 3.2 KiB 0.1% MAD +0.0%
Two independent idle machines heap per unit 3.4 KiB 0.1% MAD 3.4 KiB 0.1% MAD -0.5%
Idle parent with one child heap per unit 5.8 KiB 0.0% MAD 5.8 KiB 0.0% MAD +0.0%
Parent with observed child registry heap per unit 10.0 KiB 0.0% MAD 10.0 KiB 0.0% MAD -0.0%
Parent with observed invoked child snapshots heap per unit 6.3 KiB 0.0% MAD 6.3 KiB 0.0% MAD +0.0%

Process runtime reference change from base

Metric Base Base variability PR PR variability Difference
Start and stop a raw generic process 26,791 processes/s 0.6% MAD 26,325 processes/s 1.4% MAD -1.7%
Start and stop a raw compiled process 67,011 processes/s 0.1% MAD 65,950 processes/s 0.6% MAD -1.6%

Regression guard

No large, noise-adjusted throughput or heap regressions detected.

Versions and interpretation
  • Effect Machine: 0.19.1

Higher throughput is better; lower heap is better. Variability is the median absolute deviation across independent processes, relative to their median. Small differences on shared GitHub-hosted hardware remain informational; the required guard rejects only large changes beyond the measured noise allowance.

@SandroMaglione
SandroMaglione merged commit a2c8891 into main Aug 22, 2026
8 checks passed
@SandroMaglione
SandroMaglione deleted the codex/remove-examples branch August 22, 2026 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant