-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmise.toml
More file actions
199 lines (178 loc) · 5.2 KB
/
mise.toml
File metadata and controls
199 lines (178 loc) · 5.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
[tools]
actionlint = "1.7.12"
aube = "1.10.4"
communique = "1.1.3"
jq = "1.8.1"
node = "26"
python = "3"
tmux = "3.6a"
# VHS needs ttyd, but ttyd ships no macOS binary, so it's Linux/CI-only here.
# On macOS install it yourself: `brew install ttyd` (mise finds it on PATH).
ttyd = { version = "1.7.7", os = ["linux"] }
vhs = "0.11.0"
zizmor = "1.25.2"
[tasks.bootstrap]
description = "Install deps and Chromium for local development"
run = "aube exec playwright install chromium"
[tasks.bootstrap-ci]
description = "Install deps for CI without browser downloads"
run = "aube ci"
[tasks.clean]
description = "Clean artifacts"
run = "npm run clean"
[tasks.build]
description = "Build"
run = "npm run build"
sources = [
"src/**/*.ts",
"tsconfig.json",
"tsconfig.build.json",
"package.json",
]
outputs = ["dist/**/*.js", "dist/**/*.d.ts", "dist/**/*.map"]
[tasks.install-smoke]
description = "Validate the tarball route and check the current git-install caveat"
run = "npm run smoke:install -- --skip-build"
[tasks."demo:hero"]
description = "Regenerate the README hero GIF (assets/hero.gif) from assets/hero.tape"
# Reuse the cached `build` task so assets/hero.tape can point PATH at this
# checkout's dev CLI (dist/cli/main.js) — the released agent-tty has no `dashboard`.
depends = ["build"]
run = '''
PATH="$(mise bin-paths vhs@0.11.0 ffmpeg@8.1.1 tmux@3.6a jq@1.8.1 | paste -sd: -):$PATH" vhs assets/hero.tape
'''
tools.ffmpeg = "8.1.1"
tools.vhs = "0.11.0"
tools.tmux = "3.6a"
[tasks."demo:agent-uses-agent-tty"]
description = "Regenerate the real-agent Hero Demo proof bundle"
# Defaults to a full promote run (both agents x3, 180s each). Runs record
# concurrently (--concurrency, default 2 = Codex + Claude overlapping); pass a
# higher value to also overlap an agent's own attempts, or e.g.
# `-- --no-promote --agent codex --runs 1 --record-seconds 30` for a fast smoke test.
run = '''
PATH="$(mise bin-paths vhs@0.11.0 ffmpeg@8.1.1 tmux@3.6a | paste -sd: -):$PATH" npx tsx src/tools/hero-demo.ts
'''
tools.ffmpeg = "8.1.1"
tools.vhs = "0.11.0"
tools.tmux = "3.6a"
[tasks."demo:agent-uses-agent-tty:upload-assets"]
description = "Prepare H.264 MP4 upload assets for the Hero Demo"
run = '''
HERO_VIDEO_FFMPEG="$(mise which ffmpeg --tool ffmpeg@8.1.1)" \
HERO_VIDEO_FFPROBE="$(mise which ffprobe --tool ffmpeg@8.1.1)" \
npx tsx src/tools/hero-video-playback.ts prepare-upload-assets
'''
tools.ffmpeg = "8.1.1"
sources = [
"dogfood/agent-uses-agent-tty/artifacts/codex-outer.webm",
"dogfood/agent-uses-agent-tty/artifacts/claude-outer.webm",
"src/tools/hero-video-playback.ts",
]
outputs = ["dogfood/agent-uses-agent-tty/.debug/video-upload/*"]
[tasks."demo:agent-uses-agent-tty:apply-video-urls"]
description = "Apply GitHub user-attachment video URLs to the Hero Demo READMEs"
run = "npx tsx src/tools/hero-video-playback.ts apply-video-urls"
sources = [
"README.md",
"dogfood/agent-uses-agent-tty/README.md",
"dogfood/agent-uses-agent-tty/manifest.json",
"src/tools/hero-video-playback.ts",
]
[tasks.validate-bundles]
description = "Validate canonical proof bundles against the canonical schema"
run = "npm run validate-bundle:canonical"
sources = [
"dogfood/CATALOG.md",
"dogfood/20260326-week9-release-readiness/**",
"dogfood/20260325-week8-contract-locks/**",
"dogfood/run-command/**",
"dogfood/agent-uses-agent-tty/**",
"src/tools/validate-bundle.ts",
"src/tools/validate-canonical-bundles.ts",
"src/tools/bundleManifestSchema.ts",
]
[tasks.typecheck]
description = "Typecheck"
run = "npm run typecheck"
sources = [
"src/**/*.ts",
"test/**/*.ts",
"tsconfig.json",
"tsconfig.build.json",
"vitest.config.ts",
"package.json",
]
[tasks.lint]
description = "Lint"
run = "npm run lint"
sources = [
"src/**/*.ts",
"test/**/*.ts",
".oxlintrc.json",
"tsconfig.json",
"vitest.config.ts",
"package.json",
]
[tasks.format]
description = "Format"
run = "npm run format"
[tasks.format-check]
description = "Check format"
run = "npm run format:check"
sources = [
"src/**/*.ts",
"test/**/*.ts",
".oxfmtrc.json",
"*.json",
"mise.lock",
"*.mjs",
"*.toml",
"*.md",
"design/**/*.md",
]
[tasks.workflow-lint]
description = "Lint GitHub Actions workflows"
run = "actionlint && zizmor --offline ."
sources = [
".github/workflows/**/*.yml",
".github/workflows/**/*.yaml",
"zizmor.yml",
]
[tasks.test]
description = "Test"
run = "npm run test"
sources = ["src/**/*.ts", "test/**/*.ts", "vitest.config.ts", "package.json"]
[tasks.test-unit]
description = "Run unit tests"
run = "npm run test:unit"
sources = [
"src/**/*.ts",
"test/unit/**/*.ts",
"vitest.config.ts",
"package.json",
]
[tasks.test-integration]
description = "Run integration tests serially"
run = "npm run test:integration"
sources = [
"src/**/*.ts",
"test/integration/**/*.ts",
"vitest.config.ts",
"package.json",
]
[tasks.test-e2e]
description = "Run e2e tests serially"
run = "npm run test:e2e"
sources = [
"src/**/*.ts",
"test/e2e/**/*.ts",
"test/fixtures/**/*.ts",
"vitest.config.ts",
"package.json",
]
[tasks.ci]
description = "Run CI checks"
run = "mise run format-check && mise run workflow-lint && mise run lint && mise run typecheck && mise run test && mise run build && mise run install-smoke"
[settings]
lockfile = true