Apply the VS Code and AI workflow setup #9

Closed
opened 2026-10-04 20:30:21 +00:00 by haylan · 1 comment
Owner

Part of #1

Question

Carry out the decisions from the VS Code/AI-workflow ticket: Teal config at the repo root (committed template + gitignored local copy), install the pdesaulniers.vscode-teal extension and the tl compiler (verify tl check works), merge docs/reference onto main with an initial commit and both research branches, add the Modding section to CLAUDE.md, and add additionalDirectories for the install's tealdef. AFK; do not push main.

Part of #1 ## Question Carry out the decisions from the VS Code/AI-workflow ticket: Teal config at the repo root (committed template + gitignored local copy), install the pdesaulniers.vscode-teal extension and the tl compiler (verify tl check works), merge docs/reference onto main with an initial commit and both research branches, add the Modding section to CLAUDE.md, and add additionalDirectories for the install's tealdef. AFK; do not push main.
haylan added the wayfinder:task label 2026-10-04 20:30:21 +00:00
haylan self-assigned this 2026-10-04 20:31:07 +00:00
Author
Owner

Resolution

Done, all AFK. Nothing was pushed.

  • Extension: pdesaulniers.vscode-teal v0.11.0 installed (sumneko.lua was already there).
  • Teal compiler: tl 0.24.8, type-check only. The release zip ships only tl.lua, so it runs on Lua 5.4 (scoop versions/lua54; Lua 5.5 fails with "assign to const variable"). Files are in ~/.local/tl/ (tl.lua, tl-cli.lua, argparse.lua); wrappers ~/.local/bin/tl (Git Bash) and tl.cmd (cmd/PowerShell).
  • Verified: tl check passes on the example mod, and a deliberately bad field (baseConfig.bogusField) is rejected with invalid key 'bogusField' in record 'baseConfig' of type BaseConfig. So the game's tealdef types are really in effect.
  • Config at repo root: all_def.tl, .vscode/extensions.json, tlconfig.template.lua committed; tlconfig.lua (with this machine's install path) is gitignored.
  • AI access: .claude/settings.local.json (gitignored) adds api/tealdef and base/tealdef as additionalDirectories. It is local, not settings.json, because it holds a machine-specific path, matching the committed-template/local-copy decision.
  • Docs and CLAUDE.md: a "Modding" section was added to CLAUDE.md (Teal, mod/ layout, tl check, read tealdef and docs/reference/ first).
  • Repo baseline: main now has history: initial commit, merge of research/overtake-feasibility, merge of research/mod-tooling (35 offline doc pages), then a config commit. Both research branches are merged, so the research/* branches can be deleted. main is not pushed; that is left to the human.
  • Not done: mod/ is empty, so it isn't tracked by git yet.
## Resolution Done, all AFK. Nothing was pushed. - **Extension:** `pdesaulniers.vscode-teal` v0.11.0 installed (`sumneko.lua` was already there). - **Teal compiler:** `tl` 0.24.8, type-check only. The release zip ships only `tl.lua`, so it runs on Lua 5.4 (scoop `versions/lua54`; Lua 5.5 fails with "assign to const variable"). Files are in `~/.local/tl/` (`tl.lua`, `tl-cli.lua`, `argparse.lua`); wrappers `~/.local/bin/tl` (Git Bash) and `tl.cmd` (cmd/PowerShell). - **Verified:** `tl check` passes on the example mod, and a deliberately bad field (`baseConfig.bogusField`) is rejected with `invalid key 'bogusField' in record 'baseConfig' of type BaseConfig`. So the game's tealdef types are really in effect. - **Config at repo root:** `all_def.tl`, `.vscode/extensions.json`, `tlconfig.template.lua` committed; `tlconfig.lua` (with this machine's install path) is gitignored. - **AI access:** `.claude/settings.local.json` (gitignored) adds `api/tealdef` and `base/tealdef` as `additionalDirectories`. It is local, not `settings.json`, because it holds a machine-specific path, matching the committed-template/local-copy decision. - **Docs and CLAUDE.md:** a "Modding" section was added to `CLAUDE.md` (Teal, `mod/` layout, `tl check`, read tealdef and `docs/reference/` first). - **Repo baseline:** `main` now has history: initial commit, merge of `research/overtake-feasibility`, merge of `research/mod-tooling` (35 offline doc pages), then a config commit. Both research branches are merged, so the `research/*` branches can be deleted. `main` is not pushed; that is left to the human. - **Not done:** `mod/` is empty, so it isn't tracked by git yet.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: haylan/tpf3-overtake#9