diff --git a/custom/agents/roemer.agent.md b/custom/agents/roemer.agent.md index 1b3e101..3061781 100644 --- a/custom/agents/roemer.agent.md +++ b/custom/agents/roemer.agent.md @@ -1,7 +1,7 @@ --- kind: action-skill id: curabis-standards-inspector -version: 1 +version: 2 title: Rømer — Standards Inspector description: > Owns the uniformity inspection across CURABIS repos: walks one full @@ -81,6 +81,10 @@ Walk ALL stations, every time. A partial round creates false confidence matches the stable SHA; self-heal via the sync script if not. 8. **Agent visibility.** Every deployed agent is referenced in CLAUDE.md (rule `claude-md-must-reference-all-agents`). +9. **Apps workspace.** `.apps/*.code-workspace` (or `Apps/`) exists and its + `folders` include all app projects, `.AL-Go`, and a relative `docs` entry + (rule `al-development-must-use-apps-workspace`). The standard authorizes + adding a missing docs entry as a silent correction; report it afterwards. ## Safety rules diff --git a/custom/knowledge/architecture/al-development-must-use-apps-workspace.md b/custom/knowledge/architecture/al-development-must-use-apps-workspace.md new file mode 100644 index 0000000..3bbb3ad --- /dev/null +++ b/custom/knowledge/architecture/al-development-must-use-apps-workspace.md @@ -0,0 +1,64 @@ +--- +bc-version: [all] +domain: architecture +keywords: [workspace, apps-workspace, vscode, docs, al-go, development-environment] +technologies: [al] +countries: [w1] +application-area: [all] +--- + +# AL development must use the apps workspace — with docs included + +## Description + +CURABIS AL-Go repos carry two VS Code workspace files: one at repo root +(`al.code-workspace`) and one under the apps folder +(`.apps/.apps.code-workspace`). Developers observed working in the ROOT +workspace lose the standard development context: the apps workspace is the +one that scopes VS Code to the app projects plus `.AL-Go`, carries the +project-level settings (e.g. `powershell.cwd` pointing at the test app), and +— per this rule — includes the repo's `docs/` folder, so Columbo specs, +decision records and cleanup checklists are visible and editable exactly +where development happens. The root workspace opens repo plumbing (workflows, +git internals) and none of that context. + +## Rule + +Daily AL development happens in the workspace under the apps folder — +`.apps/.apps.code-workspace` (or `Apps/` on repos not yet migrated to the +`.apps` layout). That workspace file must contain, as folder entries: + +1. every AL app project folder (main + test) +2. `.AL-Go` +3. the repo's docs folder, added as a relative entry: `"path": "../docs"` + +Reference layout (Jernpladsen): folders = Jernpladsen, Jernpladsen.Test, +.AL-Go, docs (`../docs`), with `powershell.cwd` set to the test app. + +The root `al.code-workspace` remains for repo-plumbing work (workflow edits, +AL-Go settings) — it is not the development workspace. + +## What NOT to do + +- Do not open the root `al.code-workspace` for feature development — specs + and decision records will be out of sight, and out of sight means the work + drifts from what was agreed +- Do not add `docs` by copying files into the apps folder — it is ONE folder + at repo root, referenced relatively, so specs stay single-sourced +- Do not put machine-absolute paths in the workspace file — it is + git-committed and shared (same principle as + `mcp-config-must-not-hardcode-developer-paths`) + +## Signal to watch for + +Rømer's inspection round: `.apps/*.code-workspace` (or `Apps/*.code-workspace`) +exists, and its `folders` array includes an entry ending in `docs`. A missing +workspace file or a missing docs entry is a finding; the standard authorizes +adding the docs entry as a silent correction (report it afterwards). + +## Message to developer + +When a developer is working in the root workspace or the apps workspace lacks +the docs folder, tell them: daily development belongs in +`.apps/.apps.code-workspace`, which must include the app projects, `.AL-Go` +and `../docs` — offer to add the missing docs entry now. diff --git a/custom/setup/curabis-standard.agent.md b/custom/setup/curabis-standard.agent.md index 42de1fb..2567a0f 100644 --- a/custom/setup/curabis-standard.agent.md +++ b/custom/setup/curabis-standard.agent.md @@ -1,7 +1,7 @@ --- kind: action-skill id: curabis-standard-setup -version: 11 +version: 12 title: CURABIS Standard — Project Setup description: > Configures a new or existing repository to the CURABIS Standard development @@ -521,6 +521,7 @@ Never touches `CLAUDE.md`, `projectmemory/`, `docs/`, or `~/.bc-mcp.config.json` | `.mcp.json` — `al` entry | Add if `find-altool.ps1` now exists and entry is missing | | `.mcp.json` — `businesscentral` path | Validate and correct if wrong (see below) | | `.mcp.json` — `al` `-File` path | Validate and correct if wrong (see below) | +| `.apps/*.code-workspace` — `docs` entry | Validate folders incl. relative `../docs`; add if missing (rule `al-development-must-use-apps-workspace`) | | `HEARTBEAT.md` | Create from template if missing (substitute tokens), never overwrite | | `docs/specs/`, `docs/decisions/`, `docs/cleanup/` | Create if missing, never overwrite content |