Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
e42f447
bar-mission-kit: the mission DSL recognizer + validator CLI
keithharvey Jul 22, 2026
f15a985
scripts: cargo wrapper for bar-mission-kit (distrobox), mirroring cod…
keithharvey Jul 22, 2026
f76c3a5
just: bar::mission-kit-test / mission-check / mission-ast recipes
keithharvey Jul 22, 2026
1e89600
mission-kit: recognizer moves to emmylua_parser
keithharvey Jul 22, 2026
30c7f24
mission-kit: serve mode — the live editor service
keithharvey Jul 22, 2026
83369c6
just: mission-serve editor dir lives in the engine write dir
keithharvey Jul 22, 2026
aa83915
mission-kit: compare-and-swap precondition on edit intents
keithharvey Jul 22, 2026
8ececea
mission-kit: trigger-graph artifact per generation
keithharvey Jul 22, 2026
1ac04db
mission-kit: domain annotator, surface schema, effect insert points
keithharvey Jul 22, 2026
a1c1da9
mission-kit: file-level trigger insert point
keithharvey Jul 22, 2026
14914bf
mission-kit: removal spans for statements and steps
keithharvey Jul 22, 2026
d2febca
mission-kit: condition insert point (AndWhen rows)
keithharvey Jul 22, 2026
75b78b8
just: bar::mission-dev — serve and the game as one session
keithharvey Jul 22, 2026
3ed3279
mission-kit: the recognizer speaks the terminator-free grammar
keithharvey Jul 23, 2026
103c14e
scripts: mission-stack restack — the three-stack topology as one command
keithharvey Jul 23, 2026
943235f
mission-kit: serve renders the view — Dioxus SSR, loopback HTTP, brow…
keithharvey Jul 24, 2026
9508854
mission-kit: vscode terminal — sidebar iframe, LS diagnostics, window…
keithharvey Jul 24, 2026
0872096
editor env: devtools-root emmyrc scope + bar::mission-logs
keithharvey Jul 24, 2026
6227076
scripts: mission-stack restack — iteration branch retires, sharing-mo…
keithharvey Jul 24, 2026
85d9527
mission-kit: the vocabulary rides the artifact — DSL completion for t…
keithharvey Jul 24, 2026
6f07922
mission-kit: the vsix is a build artifact, not a tracked file
keithharvey Jul 24, 2026
3aba99a
mission-kit: serve follows the armed mission (--missions-root)
keithharvey Jul 24, 2026
69ca6d2
scripts: mission-stack restack — sharing-modules is a sibling on the …
keithharvey Jul 24, 2026
006e263
mission-kit: a mission is its triggers dir — root mode stops recogniz…
keithharvey Jul 24, 2026
ae54a02
settings: read-only allowlist — analyzer, lint, format checks stop pr…
keithharvey Jul 25, 2026
9c1c345
mission-kit: terminal page polish rides in git, not just the binary
keithharvey Jul 25, 2026
e87b098
mission-kit: the crumb navigates missions — arming is an event, not a…
keithharvey Jul 25, 2026
8bcf005
bar: the editor dir hides as .editor
keithharvey Jul 25, 2026
04b923e
bar-mission-kit: the grammar comes from the types — heads, chains, se…
keithharvey Jul 26, 2026
9e7a8ab
bar-mission-kit: the combat vocabulary — phrases, named-unit probes, …
keithharvey Jul 26, 2026
00faa1b
bar-mission-kit: vscode open routing resolves symlinks — multi-repo w…
keithharvey Jul 26, 2026
074e4f1
bar-mission-kit: cards spend their height on statements — ghost ordin…
keithharvey Jul 26, 2026
bd2953a
bar-mission-kit: the edge is painted — opaque spans overlay from the …
keithharvey Jul 26, 2026
dc057e8
bar-mission-kit: comments say less — the code reads for itself
keithharvey Jul 26, 2026
752e838
bar-mission-kit: mode presets have surface — per-module types compose…
keithharvey Jul 26, 2026
0f726f7
bar-mission-kit: spawn steps read as sentences; open targets are time…
keithharvey Jul 26, 2026
1b8e90c
bar-mission-kit: triggers and units are separate sections; the pill c…
keithharvey Jul 26, 2026
562bb78
bar-mission-kit: the panel opens with a summary — KPI row, proportion…
keithharvey Jul 26, 2026
a14ed1b
bar-mission-kit: the mission editor lands on a dashboard; the module …
keithharvey Jul 26, 2026
487e70d
bar-mission-kit: two editors — missions owns triggers and units, modu…
keithharvey Jul 26, 2026
b636aa5
bar-mission-kit: fix the terminal script's redeclarations; gate its s…
keithharvey Jul 26, 2026
72f70e3
bar-mission-kit: one breakdown, the mission's — the module list needs…
keithharvey Jul 26, 2026
e754ab8
bar-mission-kit: the module list is the Vocabulary section
keithharvey Jul 26, 2026
1600343
bar-mission-kit: BAR Runtime — Missions and Reference
keithharvey Jul 26, 2026
f8d0783
bar-mission-kit: Reference is the view, Modules the section under it
keithharvey Jul 26, 2026
ddcab2f
bar-mission-kit: nouns are the mission's own names — they belong to M…
keithharvey Jul 26, 2026
503c008
bar-mission-kit: the panel is Beyond All Reason
keithharvey Jul 26, 2026
c2f8f3e
bar-mission-kit: Reference opens collapsed — Missions gets the room
keithharvey Jul 26, 2026
52baff6
bar-mission-kit: the file header opens the file
keithharvey Jul 26, 2026
243420c
bar-mission-kit: slot controls fit the sidebar; each card can show wh…
keithharvey Jul 26, 2026
61eaee3
bar-mission-kit: room around the card ordinal and its buttons; the po…
keithharvey Jul 26, 2026
3d44069
bar-mission-kit: the row is the jump — no code button, every step lan…
keithharvey Jul 26, 2026
6abecfe
bar-mission-kit: globals read as what they are — statements, nouns, b…
keithharvey Jul 26, 2026
6b3f0ff
bar-mission-kit: the reference reads in the author's categories — con…
keithharvey Jul 26, 2026
485c708
bar-mission-kit: steps belong to their statement; the reference opens…
keithharvey Jul 26, 2026
c947b04
bar-mission-kit: inserted text keeps the file's line endings
keithharvey Jul 26, 2026
05db538
mission-stack: real topology, per-branch pushes, and a false-merge guard
keithharvey Jul 26, 2026
1453925
bar-mission-kit: a second edit from one view generation rebases inste…
keithharvey Jul 26, 2026
221175e
bar-mission-kit: the crumb separator is markup, not a pseudo-element
keithharvey Jul 27, 2026
fe8e9e3
bar-mission-kit: drop the source-of-truth footer
keithharvey Jul 27, 2026
18c66a9
bar-mission-kit: the graph reads two ways, and a module lights up its…
keithharvey Jul 27, 2026
9cbc473
repos: stack surgery as a tool, not a script about one stack
keithharvey Jul 27, 2026
c820d46
bar-mission-kit: the graph is a diagram, not an indented list
keithharvey Jul 27, 2026
4a86190
bar-mission-kit: jump-to-source survives a serve restart
keithharvey Jul 27, 2026
ccf0603
bar-mission-kit: say so when nothing is serving the editor
keithharvey Jul 27, 2026
c09babf
bar-mission-kit: an output channel for the jump path, and a quieter row
keithharvey Jul 27, 2026
e45dbfa
bar: a recipe to install the mission editor extension
keithharvey Jul 27, 2026
88fe926
bar-mission-kit: a readable diagram, and mermaid on a button
keithharvey Jul 27, 2026
eadbcb7
bar-mission-kit: flag unit defs the game does not publish
keithharvey Jul 27, 2026
b519b79
bar-mission-kit: underline the name, not the line
keithharvey Jul 27, 2026
df24a51
bar-mission-kit: the plugin brings its own server
keithharvey Jul 27, 2026
c8de0a9
bar-mission-kit: the type fixtures mirror the game, one file per module
keithharvey Jul 27, 2026
ee5585d
bar-mission-kit: the palette is derived, not listed
keithharvey Jul 27, 2026
51631d9
bar-mission-kit: the roster is a form too
keithharvey Jul 27, 2026
11b9cb4
bar-mission-kit: the plugin finds a missions root from any window
keithharvey Jul 27, 2026
15cf0a6
stack: rebase repairs a broken chain instead of refusing it
keithharvey Jul 27, 2026
f959427
bar-mission-kit: the snapshot list is generated from the mirror
keithharvey Jul 27, 2026
49a4d80
just: mission-editor-install replaces the extension directory
keithharvey Jul 27, 2026
cf8b09b
bar-mission-kit: a surface names the sandbox it publishes into
keithharvey Jul 27, 2026
2ab9604
bar-mission-kit: an action is one declaration both grammars read
keithharvey Jul 27, 2026
2fbb924
bar-mission-kit: only a declared class is vocabulary
keithharvey Jul 27, 2026
21b71e3
bar-mission-kit: two tiers, and the policy language is a parameter
keithharvey Jul 27, 2026
6cfd966
bar-mission-kit: waves publish a director, and the editor reads it
keithharvey Aug 1, 2026
af6250f
bar-mission-kit: a trigger card can show that it fired
keithharvey Aug 1, 2026
e04501f
bar-mission-kit: the statement grammar picks up .After
keithharvey Aug 1, 2026
b80a06c
bar-mission-kit: the waves vocabulary reads as sentences
keithharvey Aug 1, 2026
393e091
bar-mission-kit: say it in the author's terms, not the module's
keithharvey Aug 1, 2026
bf86230
bar-mission-kit: the seconds slot has to be rendered to be read
keithharvey Aug 1, 2026
51ea1f4
bar-mission-kit: a second serve is not a second writer
keithharvey Aug 2, 2026
bc2a003
bar-mission-kit: a mode preset is not written in the trigger language
keithharvey Aug 2, 2026
7fbec4a
bar-mission-kit: the write gate speaks the language of the file it is…
keithharvey Aug 3, 2026
2c1859a
bar-mission-kit: Ctrl+Z, through the same gate as everything else
keithharvey Aug 3, 2026
c541e03
bar-mission-kit: search the unit picker, and let VS Code hand over Ct…
keithharvey Aug 3, 2026
5160ee0
bar-mission-kit: a dropdown that filters, instead of a hint that does…
keithharvey Aug 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .claude/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,14 @@
"Bash(just bar::sync-logs)",
"Bash(just bar::sync-logs *)",
"Bash(just bar::logs)",
"Bash(just bar::logs *)"
"Bash(just bar::logs *)",
"Bash(emmylua_check *)",
"Bash(stylua --check *)",
"Bash(lx --lua-version 5.1 lint *)",
"Bash(code --list-extensions *)",
"Bash(distrobox list *)",
"Bash(just bar::mission-logs)",
"Bash(just bar::mission-logs *)"
]
}
}
114 changes: 114 additions & 0 deletions .emmyrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
{
"$schema": "https://raw.githubusercontent.com/EmmyLuaLs/emmylua-analyzer-rust/main/crates/emmylua_code_analysis/resources/schema.json",
"completion": {
"autoRequireSeparator": "/"
},
"diagnostics": {
"disable": [
"duplicate-set-field"
],
"globals": [
"Turn",
"Move",
"Spin",
"StopSpin",
"WaitForTurn",
"WaitForMove",
"Hide",
"Show",
"Explode",
"EmitSfx",
"StartThread",
"SetSignalMask",
"Signal",
"Sleep",
"GetUnitValue",
"SetUnitValue",
"piece",
"script",
"UnitScript",
"x_axis",
"y_axis",
"z_axis",
"SIG_WALK",
"UNITSCRIPT_DIR",
"widgetHandler",
"gadgetHandler",
"fontHandler",
"LUAUI_DIRNAME",
"socket",
"pairsByKeys",
"SendToUnsynced",
"CallAsTeam",
"handler",
"lowerkeys",
"addon",
"gcinfo",
"loadlib",
"_G",
"self",
"widget",
"gadget",
"GG",
"ghInfo",
"include",
"GameCMD",
"Scenario",
"game_engine",
"SG",
"CMD_AREA_MEX",
"CMD_WANT_CLOAK",
"CMD_WANTED_SPEED",
"GadgetCrashingAircraft",
"ExplosionDefs",
"GL_TEXTURE_2D",
"Policies",
"Actions",
"describe",
"it",
"before_each",
"after_each",
"setup",
"teardown"
]
},
"runtime": {
"version": "Lua5.1",
"requirePattern": [
"?",
"?.lua"
],
"requireLikeFunction": [
"VFS.Include",
"include"
]
},
"workspace": {
"workspaceRoots": [
"Beyond-All-Reason"
],
"ignoreDir": [
".vscode",
"RecoilEngine",
"teiserver",
"bar-lobby",
"BYAR-Chobby",
"SPADS",
"spads_config_bar",
"SpringLobbyInterface",
"lua-doc-extractor",
"ansible-spads-setup",
"bar-db",
"bar-live-services",
"bar_debug_launcher",
"bar-lua-codemod",
"bar-mission-kit/target",
"templates",
"docker"
],
"ignoreGlobs": [
"**/.lux/**",
"**/node_modules/**"
]
}
}
3 changes: 3 additions & 0 deletions bar-mission-kit/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/target
*.vsix
vscode/server/
Loading