@dreamboard-games/cli 0.1.30-alpha.19 → 0.1.30-alpha.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -102
- package/dist/agent-verifier/agent-workspace-verifier.mjs +1508 -55
- package/dist/agent-verifier/agent-workspace-verifier.mjs.map +1 -1
- package/dist/agent-verifier/{chunk-V7ABTZXW.mjs → chunk-4I2WWAPK.mjs} +26 -7
- package/dist/agent-verifier/chunk-4I2WWAPK.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-7LFDFXLS.mjs → chunk-BWBN2TDJ.mjs} +338 -133
- package/dist/agent-verifier/chunk-BWBN2TDJ.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-AWZ4M4NS.mjs → chunk-DQUYBIGQ.mjs} +5 -6
- package/dist/agent-verifier/chunk-DQUYBIGQ.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-H5L4KK4Y.mjs → chunk-GCFGAFYC.mjs} +7 -7
- package/dist/agent-verifier/chunk-GCFGAFYC.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-TAEQKBJB.mjs → chunk-GWRZRWCF.mjs} +1 -1
- package/dist/agent-verifier/chunk-GWRZRWCF.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-6AKXIY37.mjs → chunk-IWB4L2HV.mjs} +3 -3
- package/dist/agent-verifier/chunk-IWB4L2HV.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-334H4LE4.mjs → chunk-KDAQ4CZY.mjs} +3 -3
- package/dist/agent-verifier/{chunk-WSIYUUSD.mjs → chunk-TIDX3YLW.mjs} +2 -2
- package/dist/agent-verifier/{chunk-WSIYUUSD.mjs.map → chunk-TIDX3YLW.mjs.map} +1 -1
- package/dist/agent-verifier/{chunk-UMW24KZI.mjs → chunk-UXGTT25Q.mjs} +3 -3
- package/dist/agent-verifier/{global-config-SXR6X3OZ.mjs → global-config-IXZLY4BS.mjs} +4 -4
- package/dist/agent-verifier/{local-files-DAFIR7SN.mjs → local-files-OF4QFISU.mjs} +4 -4
- package/dist/agent-verifier/{chunk-POBFNXD4.mjs → local-typecheck-DHVLM37Z.mjs} +3 -3
- package/dist/agent-verifier/local-typecheck-DHVLM37Z.mjs.map +1 -0
- package/dist/agent-verifier/{materialize-workspace-PWNT6HQK.mjs → materialize-workspace-VS5RHSBO.mjs} +7 -7
- package/dist/agent-verifier/{chunk-HLHT57AW.mjs → reducer-bundle-preflight-GLUJKTWU.mjs} +13 -10
- package/dist/agent-verifier/reducer-bundle-preflight-GLUJKTWU.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-INIK6LHK.mjs → reducer-contract-preflight-WVQQPW5F.mjs} +6 -5
- package/dist/agent-verifier/reducer-contract-preflight-WVQQPW5F.mjs.map +1 -0
- package/dist/agent-verifier/{chunk-3Y4FRMTK.mjs → reducer-native-test-harness-H6G6RBRY.mjs} +150 -34
- package/dist/agent-verifier/reducer-native-test-harness-H6G6RBRY.mjs.map +1 -0
- package/dist/agent-verifier/{static-scaffold-HXUQLJVN.mjs → static-scaffold-C36KROJA.mjs} +3 -3
- package/dist/agent-verifier/{workspace-dependencies-ZMHPHVQV.mjs → workspace-dependencies-5HEEKZFP.mjs} +4 -2
- package/dist/authoring-compatibility-internal.js +2 -2
- package/dist/{chunk-R6RB4EKH.js → chunk-5PJWUB6W.js} +179 -210
- package/dist/chunk-5PJWUB6W.js.map +1 -0
- package/dist/{chunk-YRSE5DLH.js → chunk-EJGB3IR7.js} +422 -264
- package/dist/chunk-EJGB3IR7.js.map +1 -0
- package/dist/{chunk-FFO2IJL3.js → chunk-EQNBQVIW.js} +1 -1
- package/dist/chunk-EQNBQVIW.js.map +1 -0
- package/dist/{chunk-VWMKJL4A.js → chunk-UI7NWSYA.js} +3 -3
- package/dist/chunk-UI7NWSYA.js.map +1 -0
- package/dist/{global-config-UHGWFJIK.js → global-config-GK2UC2X6.js} +3 -3
- package/dist/index.js +2691 -3953
- package/dist/index.js.map +1 -1
- package/dist/internal.js +4 -4
- package/package.json +1 -1
- package/release/authoring-release-set.json +2 -2
- package/skills/dreamboard/SKILL.md +30 -28
- package/skills/dreamboard/references/building-your-first-game.md +15 -15
- package/skills/dreamboard/references/cli.md +48 -47
- package/skills/dreamboard/references/quickstart.md +16 -13
- package/skills/dreamboard/references/testing.md +10 -10
- package/dist/agent-verifier/chunk-3Y4FRMTK.mjs.map +0 -1
- package/dist/agent-verifier/chunk-5D3OJBDT.mjs +0 -1547
- package/dist/agent-verifier/chunk-5D3OJBDT.mjs.map +0 -1
- package/dist/agent-verifier/chunk-6AKXIY37.mjs.map +0 -1
- package/dist/agent-verifier/chunk-7LFDFXLS.mjs.map +0 -1
- package/dist/agent-verifier/chunk-AWZ4M4NS.mjs.map +0 -1
- package/dist/agent-verifier/chunk-H5L4KK4Y.mjs.map +0 -1
- package/dist/agent-verifier/chunk-HLHT57AW.mjs.map +0 -1
- package/dist/agent-verifier/chunk-INIK6LHK.mjs.map +0 -1
- package/dist/agent-verifier/chunk-LEWM26XR.mjs +0 -618
- package/dist/agent-verifier/chunk-LEWM26XR.mjs.map +0 -1
- package/dist/agent-verifier/chunk-PLXXH5LY.mjs +0 -222
- package/dist/agent-verifier/chunk-PLXXH5LY.mjs.map +0 -1
- package/dist/agent-verifier/chunk-POBFNXD4.mjs.map +0 -1
- package/dist/agent-verifier/chunk-TAEQKBJB.mjs.map +0 -1
- package/dist/agent-verifier/chunk-V7ABTZXW.mjs.map +0 -1
- package/dist/agent-verifier/chunk-ZOR5FTIG.mjs +0 -39
- package/dist/agent-verifier/chunk-ZOR5FTIG.mjs.map +0 -1
- package/dist/agent-verifier/compile-MO2URO5Z.mjs +0 -317
- package/dist/agent-verifier/compile-MO2URO5Z.mjs.map +0 -1
- package/dist/agent-verifier/local-typecheck-3JXL2NMG.mjs +0 -10
- package/dist/agent-verifier/reducer-bundle-preflight-3DSXIELT.mjs +0 -20
- package/dist/agent-verifier/reducer-contract-preflight-FQB7M4PU.mjs +0 -11
- package/dist/agent-verifier/reducer-native-test-harness-X2KQYSCD.mjs +0 -53
- package/dist/agent-verifier/reducer-native-test-harness-X2KQYSCD.mjs.map +0 -1
- package/dist/agent-verifier/static-scaffold-HXUQLJVN.mjs.map +0 -1
- package/dist/agent-verifier/sync-5YM4CSXL.mjs +0 -598
- package/dist/agent-verifier/sync-5YM4CSXL.mjs.map +0 -1
- package/dist/agent-verifier/test-CNNVTFIG.mjs +0 -356
- package/dist/agent-verifier/test-CNNVTFIG.mjs.map +0 -1
- package/dist/agent-verifier/workspace-dependencies-ZMHPHVQV.mjs.map +0 -1
- package/dist/chunk-FFO2IJL3.js.map +0 -1
- package/dist/chunk-R6RB4EKH.js.map +0 -1
- package/dist/chunk-VWMKJL4A.js.map +0 -1
- package/dist/chunk-YRSE5DLH.js.map +0 -1
- package/dist/global-config-UHGWFJIK.js.map +0 -1
- package/skills/dreamboard/scripts/events-extract.mjs +0 -218
- /package/dist/agent-verifier/{chunk-334H4LE4.mjs.map → chunk-KDAQ4CZY.mjs.map} +0 -0
- /package/dist/agent-verifier/{chunk-UMW24KZI.mjs.map → chunk-UXGTT25Q.mjs.map} +0 -0
- /package/dist/agent-verifier/{global-config-SXR6X3OZ.mjs.map → global-config-IXZLY4BS.mjs.map} +0 -0
- /package/dist/agent-verifier/{local-files-DAFIR7SN.mjs.map → local-files-OF4QFISU.mjs.map} +0 -0
- /package/dist/agent-verifier/{materialize-workspace-PWNT6HQK.mjs.map → materialize-workspace-VS5RHSBO.mjs.map} +0 -0
- /package/dist/agent-verifier/{local-typecheck-3JXL2NMG.mjs.map → static-scaffold-C36KROJA.mjs.map} +0 -0
- /package/dist/agent-verifier/{reducer-bundle-preflight-3DSXIELT.mjs.map → workspace-dependencies-5HEEKZFP.mjs.map} +0 -0
- /package/dist/{agent-verifier/reducer-contract-preflight-FQB7M4PU.mjs.map → global-config-GK2UC2X6.js.map} +0 -0
package/dist/internal.js
CHANGED
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
resolveConfig,
|
|
11
11
|
resolveProjectContext,
|
|
12
12
|
shortHash
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-5PJWUB6W.js";
|
|
14
14
|
import {
|
|
15
15
|
applyWorkspaceCodegen,
|
|
16
16
|
loadManifest,
|
|
@@ -19,16 +19,16 @@ import {
|
|
|
19
19
|
setLatestCompileAttempt,
|
|
20
20
|
updateProjectState,
|
|
21
21
|
writeSnapshot
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-EJGB3IR7.js";
|
|
23
23
|
import {
|
|
24
24
|
getStoredSession,
|
|
25
25
|
loadGlobalConfig
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-UI7NWSYA.js";
|
|
27
27
|
import {
|
|
28
28
|
ENVIRONMENT_CONFIGS,
|
|
29
29
|
readJsonFile,
|
|
30
30
|
writeJsonFile
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-EQNBQVIW.js";
|
|
32
32
|
import "./chunk-2H7UOFLK.js";
|
|
33
33
|
export {
|
|
34
34
|
CONFIG_FLAG_ARGS,
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"packages": {
|
|
5
5
|
"cli": {
|
|
6
6
|
"name": "@dreamboard-games/cli",
|
|
7
|
-
"version": "0.1.30-alpha.
|
|
7
|
+
"version": "0.1.30-alpha.20"
|
|
8
8
|
},
|
|
9
9
|
"sdk": {
|
|
10
10
|
"name": "@dreamboard-games/sdk",
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"portable": true
|
|
35
35
|
},
|
|
36
36
|
"packageManager": "pnpm@10.4.1",
|
|
37
|
-
"releaseSetId": "sha256:
|
|
37
|
+
"releaseSetId": "sha256:a587040081f3664b0c55128b9b52af76f53daaee441d69486a61540c7e107bc8"
|
|
38
38
|
}
|
|
@@ -10,14 +10,14 @@ metadata:
|
|
|
10
10
|
|
|
11
11
|
## Goal
|
|
12
12
|
|
|
13
|
-
Create and iterate on a Dreamboard game locally
|
|
14
|
-
|
|
13
|
+
Create and iterate on a Dreamboard game locally with the Git-native Dreamboard
|
|
14
|
+
CLI, then verify exact commits, run tests, and use the local dev host.
|
|
15
15
|
|
|
16
16
|
## Prereqs
|
|
17
17
|
|
|
18
18
|
- Dreamboard CLI installed and available as `dreamboard`
|
|
19
19
|
Install with `npm install -g dreamboard`
|
|
20
|
-
- Authenticated via `dreamboard login`
|
|
20
|
+
- Authenticated via `dreamboard auth login`
|
|
21
21
|
|
|
22
22
|
## Buliding Your First Game
|
|
23
23
|
See [tutorials/building-your-first-game.md](references/building-your-first-game.md)
|
|
@@ -60,18 +60,25 @@ The current scaffold centers on these files:
|
|
|
60
60
|
|
|
61
61
|
Use the commands for different kinds of state:
|
|
62
62
|
|
|
63
|
-
- `dreamboard
|
|
64
|
-
|
|
65
|
-
- `dreamboard
|
|
66
|
-
|
|
67
|
-
- `dreamboard
|
|
68
|
-
|
|
63
|
+
- `dreamboard project create <slug> --description <text>`
|
|
64
|
+
Create a project workspace and configure its Git remote.
|
|
65
|
+
- `dreamboard project clone <project>`
|
|
66
|
+
Clone an existing project repository.
|
|
67
|
+
- `dreamboard project status --commit <rev> [--wait]`
|
|
68
|
+
Read server state for one exact commit.
|
|
69
|
+
- `dreamboard verify --commit <rev>`
|
|
70
|
+
Verify one exact commit from a detached worktree.
|
|
71
|
+
- `dreamboard test`
|
|
72
|
+
Regenerate derived test artifacts as needed and run reducer, remote, or browser tests.
|
|
73
|
+
- `dreamboard dev [--from-scenario <id>]`
|
|
74
|
+
Start the local dev host for browser validation.
|
|
69
75
|
|
|
70
76
|
Quick rule:
|
|
71
77
|
|
|
72
|
-
- edited files locally:
|
|
73
|
-
-
|
|
74
|
-
-
|
|
78
|
+
- edited files locally: commit them with Git and push the branch
|
|
79
|
+
- need server readback: `dreamboard project status --commit <rev> --wait`
|
|
80
|
+
- need exact local proof: `dreamboard verify --commit <rev>`
|
|
81
|
+
- need scenario proof: `dreamboard test`
|
|
75
82
|
|
|
76
83
|
## Workflow
|
|
77
84
|
|
|
@@ -79,23 +86,22 @@ Use this order by default:
|
|
|
79
86
|
|
|
80
87
|
1. Write or revise `rule.md`.
|
|
81
88
|
2. Align `manifest.json` to the rules.
|
|
82
|
-
3.
|
|
83
|
-
4. Implement
|
|
84
|
-
5.
|
|
85
|
-
6. Run `dreamboard
|
|
86
|
-
7.
|
|
87
|
-
8. Run scenarios with `dreamboard test
|
|
88
|
-
9. Validate the local runtime with `dreamboard
|
|
89
|
+
3. Implement reducer state, phases, actions, and views in `app/`.
|
|
90
|
+
4. Implement the playable UI in `ui/App.tsx`.
|
|
91
|
+
5. Commit and push authored changes with Git.
|
|
92
|
+
6. Run `dreamboard project status --commit HEAD --wait`.
|
|
93
|
+
7. Run `dreamboard verify --commit HEAD`.
|
|
94
|
+
8. Run scenarios with `dreamboard test`.
|
|
95
|
+
9. Validate the local runtime with `dreamboard dev`.
|
|
89
96
|
10. For agent-built games, run `dreamboard dev` and verify the browser UI before handoff. Use Playwright to open the dev host, check that the plugin iframe renders without console errors, and click a primary interaction such as selecting a playable hand card. Reducer scenarios alone are not enough when the game has an interactive UI.
|
|
90
97
|
|
|
91
98
|
## Guardrails
|
|
92
99
|
|
|
93
100
|
- `manifest.json` and `rule.md` are the source of truth for scaffolding.
|
|
94
|
-
-
|
|
95
|
-
|
|
96
|
-
- `dreamboard
|
|
97
|
-
-
|
|
98
|
-
- Re-run `dreamboard test generate` after runtime-shape changes in `manifest.json` or `app/`.
|
|
101
|
+
- Use Git for source-control state transitions; Dreamboard does not stage,
|
|
102
|
+
commit, pull, merge, branch, or push for you.
|
|
103
|
+
- Use `dreamboard project status --commit <rev>` for server state, not local Git status.
|
|
104
|
+
- Run `dreamboard test` after runtime-shape changes in `manifest.json` or `app/`; it regenerates derived test artifacts automatically.
|
|
99
105
|
- Keep reducer-owned UI data in views; do not reintroduce the old `shared/ui-args.ts` pattern in new scaffolds.
|
|
100
106
|
- When a game exposes clickable hands, markets, boards, or prompts, prove the same interaction works through `dreamboard dev` in a browser. A direct scenario submission can pass even when the rendered surface does not collect the input.
|
|
101
107
|
- For interactive card hands, render generated surfaces such as `handSurface.Hand` and `handSurface.Card` consistently. Do not swap a surface card for a raw `Card` or custom tile based on `me.canAct`; the surface primitive is responsible for disabling unavailable interactions.
|
|
@@ -124,7 +130,3 @@ Do not edit generated or framework-owned files such as:
|
|
|
124
130
|
|
|
125
131
|
## Offical Documentation
|
|
126
132
|
Visit https://dreamboard.games/docs
|
|
127
|
-
|
|
128
|
-
## Framework Feedback
|
|
129
|
-
|
|
130
|
-
Use `feedback.md` in the game project root to record framework issues, missing features, or workflow friction. Include reproduction steps, expected behavior, and actual behavior when possible.
|
|
@@ -34,12 +34,12 @@ By the end of the tutorial you will have:
|
|
|
34
34
|
## Prerequisites
|
|
35
35
|
|
|
36
36
|
- Dreamboard CLI installed: `npm install -g dreamboard`
|
|
37
|
-
- authenticated with `dreamboard login`
|
|
37
|
+
- authenticated with `dreamboard auth login`
|
|
38
38
|
|
|
39
39
|
## 1. Create the workspace
|
|
40
40
|
|
|
41
41
|
```bash
|
|
42
|
-
dreamboard
|
|
42
|
+
dreamboard project create race-to-ten --description "A tiny scoring game with one shared die"
|
|
43
43
|
cd race-to-ten
|
|
44
44
|
```
|
|
45
45
|
|
|
@@ -138,16 +138,17 @@ This game needs player-count metadata and one shared die.
|
|
|
138
138
|
}
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
Commit and push the authored source with Git, then wait for the server to
|
|
142
|
+
observe and verify the exact commit:
|
|
142
143
|
|
|
143
144
|
```bash
|
|
144
|
-
|
|
145
|
-
|
|
145
|
+
git add .
|
|
146
|
+
git commit -m "Build Race to Ten"
|
|
147
|
+
git push -u origin main
|
|
148
|
+
dreamboard project status --commit HEAD --wait
|
|
149
|
+
dreamboard verify --commit HEAD
|
|
146
150
|
```
|
|
147
151
|
|
|
148
|
-
`dreamboard sync` refreshes generated contracts from authored files.
|
|
149
|
-
`dreamboard compile` builds the current authored head.
|
|
150
|
-
|
|
151
152
|
## 4. Define the reducer contract
|
|
152
153
|
|
|
153
154
|
Open `app/game-contract.ts` and replace the empty schemas with the state the
|
|
@@ -471,23 +472,22 @@ export default defineScenario({
|
|
|
471
472
|
});
|
|
472
473
|
```
|
|
473
474
|
|
|
474
|
-
|
|
475
|
+
Run the test suite:
|
|
475
476
|
|
|
476
477
|
```bash
|
|
477
|
-
dreamboard test
|
|
478
|
-
dreamboard test run
|
|
478
|
+
dreamboard test
|
|
479
479
|
```
|
|
480
480
|
|
|
481
481
|
## 10. Run the game locally
|
|
482
482
|
|
|
483
|
-
Use the local
|
|
483
|
+
Use the local dev host to verify the same flow manually:
|
|
484
484
|
|
|
485
485
|
```bash
|
|
486
|
-
dreamboard
|
|
486
|
+
dreamboard dev
|
|
487
487
|
```
|
|
488
488
|
|
|
489
|
-
If you edit `rule.md` or `manifest.json`,
|
|
490
|
-
|
|
489
|
+
If you edit `rule.md` or `manifest.json`, commit and push the changes before
|
|
490
|
+
running commit-scoped build, preview, release, or remote test commands.
|
|
491
491
|
|
|
492
492
|
## Where to go next
|
|
493
493
|
|
|
@@ -5,21 +5,21 @@
|
|
|
5
5
|
|
|
6
6
|
Reference for Dreamboard CLI workflows and commands.
|
|
7
7
|
|
|
8
|
-
Dreamboard CLI manages the authored workspace loop: authenticate,
|
|
9
|
-
clone a
|
|
8
|
+
Dreamboard CLI manages the Git-native authored workspace loop: authenticate,
|
|
9
|
+
create or clone a project, verify exact commits, build or preview pushed
|
|
10
|
+
commits, run a local dev host, and test reducer scenarios.
|
|
10
11
|
|
|
11
12
|
## Responsibility
|
|
12
13
|
|
|
13
14
|
Use the CLI for:
|
|
14
15
|
|
|
15
16
|
- authenticating the current machine
|
|
16
|
-
- creating or cloning
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- generating and running reducer-native tests
|
|
17
|
+
- creating or cloning project workspaces
|
|
18
|
+
- inspecting server state for an exact commit
|
|
19
|
+
- verifying an exact commit from a detached worktree
|
|
20
|
+
- building, previewing, and publishing pushed commits
|
|
21
|
+
- starting the local dev host
|
|
22
|
+
- running reducer, remote, or browser tests
|
|
23
23
|
|
|
24
24
|
## Install targets
|
|
25
25
|
|
|
@@ -27,73 +27,74 @@ Use the published package for normal game work:
|
|
|
27
27
|
|
|
28
28
|
```bash
|
|
29
29
|
npm install -g dreamboard
|
|
30
|
-
dreamboard login
|
|
30
|
+
dreamboard auth login
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
## Command flow
|
|
34
34
|
|
|
35
35
|
Use this sequence for the normal authored loop:
|
|
36
36
|
|
|
37
|
-
1. `dreamboard login`
|
|
38
|
-
2. `dreamboard
|
|
37
|
+
1. `dreamboard auth login`
|
|
38
|
+
2. `dreamboard project create ...` or `dreamboard project clone ...`
|
|
39
39
|
3. edit `rule.md`, `manifest.json`, and authored source files
|
|
40
|
-
4.
|
|
41
|
-
5. `dreamboard
|
|
42
|
-
6. `dreamboard
|
|
43
|
-
7. `dreamboard test
|
|
44
|
-
8. `dreamboard
|
|
45
|
-
|
|
46
|
-
When the remote authored head moves first, run `dreamboard pull` before the
|
|
47
|
-
next sync or compile. Use `dreamboard status` to decide whether the workspace is
|
|
48
|
-
ahead, behind, or diverged.
|
|
40
|
+
4. commit with Git and push to the configured remote
|
|
41
|
+
5. `dreamboard project status --commit <rev> --wait`
|
|
42
|
+
6. `dreamboard verify --commit <rev>`
|
|
43
|
+
7. `dreamboard test`
|
|
44
|
+
8. `dreamboard build --commit <rev>`
|
|
45
|
+
9. `dreamboard preview --commit <rev>`
|
|
49
46
|
|
|
50
47
|
## Workspace commands
|
|
51
48
|
|
|
52
49
|
| Command | Use it for |
|
|
53
50
|
| --- | --- |
|
|
54
|
-
| `dreamboard login` | Open browser login and store a refreshable session |
|
|
55
|
-
| `dreamboard
|
|
56
|
-
| `dreamboard
|
|
57
|
-
| `dreamboard
|
|
58
|
-
| `dreamboard
|
|
59
|
-
| `dreamboard
|
|
60
|
-
| `dreamboard pull` | Reconcile remote authored changes into the workspace |
|
|
51
|
+
| `dreamboard auth login` | Open browser login and store a refreshable session |
|
|
52
|
+
| `dreamboard auth status` | Show the current authenticated session |
|
|
53
|
+
| `dreamboard project create <slug> --description "..."` | Create a project, scaffold a local workspace, and configure Git |
|
|
54
|
+
| `dreamboard project clone <project>` | Clone an existing project repository |
|
|
55
|
+
| `dreamboard project status --commit <rev>` | Show server state for one exact commit |
|
|
56
|
+
| `dreamboard verify --commit <rev>` | Verify one exact commit in a detached worktree |
|
|
61
57
|
|
|
62
58
|
```bash
|
|
63
|
-
dreamboard
|
|
64
|
-
dreamboard
|
|
65
|
-
|
|
66
|
-
|
|
59
|
+
dreamboard auth login
|
|
60
|
+
dreamboard project create race-to-ten --description "A tiny scoring game"
|
|
61
|
+
git add .
|
|
62
|
+
git commit -m "Create Race to Ten"
|
|
63
|
+
git push -u origin main
|
|
64
|
+
dreamboard project status --commit HEAD --wait
|
|
65
|
+
dreamboard verify --commit HEAD
|
|
67
66
|
```
|
|
68
67
|
|
|
69
|
-
##
|
|
68
|
+
## Commit commands
|
|
70
69
|
|
|
71
|
-
Use
|
|
72
|
-
|
|
70
|
+
Use commit commands after the commit has been pushed to the configured Git
|
|
71
|
+
remote.
|
|
73
72
|
|
|
74
73
|
| Command | Use it for |
|
|
75
74
|
| --- | --- |
|
|
76
|
-
| `dreamboard
|
|
77
|
-
| `dreamboard
|
|
75
|
+
| `dreamboard test` | Run reducer, remote, or browser tests |
|
|
76
|
+
| `dreamboard dev [--from-scenario <id>]` | Start the local project dev host |
|
|
77
|
+
| `dreamboard build --commit <rev>` | Create a server build for a pushed commit |
|
|
78
|
+
| `dreamboard preview --commit <rev>` | Create a preview for a pushed commit |
|
|
79
|
+
| `dreamboard release publish --commit <rev> --yes` | Publish an explicit release |
|
|
80
|
+
| `dreamboard release current` | Show the current release pointer |
|
|
78
81
|
|
|
79
82
|
```bash
|
|
80
|
-
dreamboard
|
|
81
|
-
dreamboard
|
|
82
|
-
dreamboard
|
|
83
|
-
dreamboard
|
|
83
|
+
dreamboard test
|
|
84
|
+
dreamboard dev
|
|
85
|
+
dreamboard build --commit HEAD
|
|
86
|
+
dreamboard preview --commit HEAD
|
|
84
87
|
```
|
|
85
88
|
|
|
86
|
-
`dreamboard run` reuses the previous active session by default. Use
|
|
87
|
-
`--new-session` when you want a fresh session instead.
|
|
88
|
-
|
|
89
89
|
## Test commands
|
|
90
90
|
|
|
91
91
|
Use the scaffolded reducer-native test workspace for repeatable game assertions.
|
|
92
92
|
|
|
93
93
|
```bash
|
|
94
|
-
dreamboard test
|
|
95
|
-
dreamboard test
|
|
96
|
-
dreamboard test
|
|
94
|
+
dreamboard test
|
|
95
|
+
dreamboard test --scenario test/scenarios/player-two-wins.scenario.ts
|
|
96
|
+
dreamboard test --runner browser
|
|
97
|
+
dreamboard test --runner remote --commit HEAD
|
|
97
98
|
```
|
|
98
99
|
|
|
99
100
|
## Start local server
|
|
@@ -14,13 +14,13 @@ npm install -g dreamboard
|
|
|
14
14
|
Log in:
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
|
-
dreamboard login
|
|
17
|
+
dreamboard auth login
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
-
Create a
|
|
20
|
+
Create a project:
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
dreamboard
|
|
23
|
+
dreamboard project create my-game --description "A trick-taking card game"
|
|
24
24
|
cd my-game
|
|
25
25
|
```
|
|
26
26
|
|
|
@@ -30,25 +30,27 @@ Edit `rule.md` and `manifest.json`. Use
|
|
|
30
30
|
[Manifest authoring](./manifest-authoring.md) for the manifest
|
|
31
31
|
schema.
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
Commit and push your authored source with Git:
|
|
34
34
|
|
|
35
35
|
```bash
|
|
36
|
-
|
|
36
|
+
git add .
|
|
37
|
+
git commit -m "Create my game"
|
|
38
|
+
git push -u origin main
|
|
37
39
|
```
|
|
38
40
|
|
|
39
|
-
|
|
41
|
+
Check server state for the pushed commit:
|
|
40
42
|
|
|
41
43
|
```bash
|
|
42
|
-
dreamboard
|
|
44
|
+
dreamboard project status --commit HEAD --wait
|
|
43
45
|
```
|
|
44
46
|
|
|
45
|
-
|
|
47
|
+
Verify the exact commit:
|
|
46
48
|
|
|
47
49
|
```bash
|
|
48
|
-
dreamboard
|
|
50
|
+
dreamboard verify --commit HEAD
|
|
49
51
|
```
|
|
50
52
|
|
|
51
|
-
Start a local server to play the
|
|
53
|
+
Start a local server to play the project:
|
|
52
54
|
|
|
53
55
|
```bash
|
|
54
56
|
dreamboard dev
|
|
@@ -56,9 +58,10 @@ dreamboard dev
|
|
|
56
58
|
|
|
57
59
|
Useful follow-up commands:
|
|
58
60
|
|
|
59
|
-
- `dreamboard
|
|
60
|
-
- `dreamboard
|
|
61
|
-
- `dreamboard
|
|
61
|
+
- `dreamboard project clone <project>` clones an existing project repository.
|
|
62
|
+
- `dreamboard test` runs reducer, remote, or browser tests.
|
|
63
|
+
- `dreamboard build --commit HEAD` creates a server build for a pushed commit.
|
|
64
|
+
- `dreamboard preview --commit HEAD` creates a preview for a pushed commit.
|
|
62
65
|
|
|
63
66
|
For a concise command reference, see [CLI](./cli.md).
|
|
64
67
|
|
|
@@ -34,26 +34,26 @@ be edited manually.
|
|
|
34
34
|
|
|
35
35
|
## Command flow
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
Run all scenarios:
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
|
-
dreamboard test
|
|
40
|
+
dreamboard test
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
Run
|
|
43
|
+
Run one scenario:
|
|
44
44
|
|
|
45
45
|
```bash
|
|
46
|
-
dreamboard test
|
|
46
|
+
dreamboard test --scenario test/scenarios/win-the-game.scenario.ts
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
Run
|
|
49
|
+
Run browser-backed tests:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
dreamboard test
|
|
52
|
+
dreamboard test --runner browser
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
-
|
|
56
|
-
the game, including:
|
|
55
|
+
`dreamboard test` regenerates reducer-native artifacts automatically when
|
|
56
|
+
changes affect the runtime shape of the game, including:
|
|
57
57
|
|
|
58
58
|
- `manifest.json`
|
|
59
59
|
- reducer code under `app/`
|
|
@@ -232,7 +232,7 @@ then: ({ phase, history, expect, publicState }) => {
|
|
|
232
232
|
|
|
233
233
|
If the generated test artifacts no longer match the compiled game, refresh them:
|
|
234
234
|
|
|
235
|
-
- `dreamboard test
|
|
235
|
+
- `dreamboard test`
|
|
236
236
|
|
|
237
237
|
Common symptoms:
|
|
238
238
|
|
|
@@ -244,6 +244,6 @@ Common symptoms:
|
|
|
244
244
|
|
|
245
245
|
This page documents the scaffolded reducer-native test workspace.
|
|
246
246
|
|
|
247
|
-
If you also use `dreamboard
|
|
247
|
+
If you also use `dreamboard dev` for manual debugging or operational inspection,
|
|
248
248
|
treat that as a separate workflow. It is useful for ad hoc runtime exploration,
|
|
249
249
|
but it is not the primary authored test surface for a new Dreamboard project.
|