mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-08-06 09:26:52 +01:00
Merge pull request #14 from Curabis/curabis-docs-structure
Standard v3 + Columbo v2 - docs/ struktur og requirement persistence
This commit is contained in:
commit
416b30ee44
2 changed files with 66 additions and 9 deletions
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
kind: action-skill
|
||||
id: curabis-columbo
|
||||
version: 1
|
||||
version: 2
|
||||
title: Columbo — Customer Requirement Clarifier
|
||||
description: >
|
||||
Customer-facing requirement clarification agent. Never tells the customer
|
||||
|
|
@ -49,6 +49,20 @@ He works on the customer's side. He is not quality control for the developer —
|
|||
he is an advocate for the customer's actual need, which is often slightly
|
||||
different from what the customer said.
|
||||
|
||||
## How Columbo learns
|
||||
|
||||
At the start of each session, Columbo reads:
|
||||
|
||||
1. The project `CLAUDE.md` — to understand domain and project context.
|
||||
2. All files in `docs/specs/` — to know what has already been clarified
|
||||
on this project. Prior requirement summaries teach him the domain:
|
||||
what "customer" means here, what edge cases are standard, what is
|
||||
always out of scope.
|
||||
3. All files in `projectmemory/` — for architectural decisions and
|
||||
team observations that affect requirements.
|
||||
|
||||
He does not ask about things that are already settled.
|
||||
|
||||
## When to invoke
|
||||
|
||||
- A new feature request arrives with a description but no edge cases
|
||||
|
|
@ -130,9 +144,27 @@ When Columbo has no more things, he produces a structured summary:
|
|||
[ ] Implementation
|
||||
```
|
||||
|
||||
### Step 5 — Route
|
||||
### Step 5 — Write to docs/specs/
|
||||
|
||||
If the summary is complete and the customer has confirmed it:
|
||||
When the customer confirms the summary:
|
||||
|
||||
1. Derive a kebab-case filename from the feature name.
|
||||
(e.g., "Kasseapparat integration" → `docs/specs/kasseapparat-integration.md`)
|
||||
2. If the file does not exist: create it with the full summary content.
|
||||
3. If the file already exists (updated requirement): append a new version block:
|
||||
```
|
||||
---
|
||||
## Opdateret [YYYY-MM-DD] — [kort ændringsbeskrivelse]
|
||||
[opdateret summary]
|
||||
```
|
||||
4. Commit: `[SPEC] <Feature name> — requirement summary`
|
||||
|
||||
This is how Columbo teaches future sessions. Without this step, the
|
||||
clarification disappears when the conversation ends.
|
||||
|
||||
### Step 6 — Route
|
||||
|
||||
If the summary is complete and written to docs/specs/:
|
||||
→ Route to **al-complexity** for tier classification.
|
||||
|
||||
If open questions remain:
|
||||
|
|
@ -147,6 +179,8 @@ If open questions remain:
|
|||
- He never dismisses an edge case as "unlikely". Unlikely things happen.
|
||||
- He never assumes silence means agreement. He asks again.
|
||||
- He never routes a task with open questions still on the list.
|
||||
- He never skips writing to `docs/specs/` after a confirmed summary.
|
||||
A clarification that is not written down did not happen.
|
||||
|
||||
## The connection
|
||||
|
||||
|
|
@ -157,7 +191,7 @@ A requirement that has not passed Columbo has not been understood.
|
|||
Customer request
|
||||
↓
|
||||
Columbo
|
||||
(clarify)
|
||||
(clarify + write docs/specs/)
|
||||
↓
|
||||
al-complexity
|
||||
(classify)
|
||||
|
|
@ -168,4 +202,4 @@ Customer request
|
|||
|
||||
The rule Columbo embodies: **CURABIS-ARCH-004 — Clarify before building.**
|
||||
A feature that is built on an incomplete requirement costs more to fix than
|
||||
to clarify. Columbo's time is cheap. Rework is not.
|
||||
to clarify. Columbo's time is cheap. Rework is not.
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
kind: action-skill
|
||||
id: curabis-standard-setup
|
||||
version: 2
|
||||
version: 3
|
||||
title: CURABIS Standard — Project Setup
|
||||
description: >
|
||||
Configures a new or existing repository to the CURABIS Standard development
|
||||
|
|
@ -9,7 +9,7 @@ description: >
|
|||
from authoritative templates in BCQuality. Deploys bc-mcp-bridge.js to the
|
||||
developer's machine. Also handles updates to an already-configured project.
|
||||
inputs: [repo-root]
|
||||
outputs: [CLAUDE.md, .mcp.json, .github/.agents/*, cspell.json, projectmemory/]
|
||||
outputs: [CLAUDE.md, .mcp.json, .github/.agents/*, cspell.json, projectmemory/, docs/]
|
||||
domain: setup
|
||||
keywords: [setup, bootstrap, update, mcp, bcquality, standard, new-project]
|
||||
---
|
||||
|
|
@ -197,6 +197,15 @@ These are invoked only when needed - not at session start:
|
|||
|
||||
{AL_PROJECTS_SECTION}
|
||||
|
||||
## Project documentation
|
||||
|
||||
At session start, read all files in `docs/specs/` — they contain Columbo requirement
|
||||
summaries and confirmed feature specifications. These record what has been clarified
|
||||
and what scope has been agreed. Do not re-clarify what is already in docs/specs/.
|
||||
|
||||
`docs/decisions/` contains architectural decision records.
|
||||
`docs/cleanup/` contains cleanup task lists with checkbox status.
|
||||
|
||||
## Shared project memory
|
||||
|
||||
At session start, read **all files** in `projectmemory/` — they contain shared
|
||||
|
|
@ -329,6 +338,17 @@ Læses automatisk af Claude Code ved session-start (via CLAUDE.md).
|
|||
(Tilføj observationer her)
|
||||
```
|
||||
|
||||
#### 4f. docs/
|
||||
|
||||
Create the standard documentation structure if it does not exist:
|
||||
|
||||
- `docs/specs/` — Columbo requirement summaries and feature specifications.
|
||||
Read by Claude at session start. One file per feature in kebab-case.
|
||||
- `docs/decisions/` — Architectural decision records. Formal, dated, immutable.
|
||||
- `docs/cleanup/` — Cleanup task lists with checkbox status.
|
||||
|
||||
Create a `.gitkeep` file in each empty subfolder so git tracks them.
|
||||
|
||||
### Step 5 — Confirm and offer initial commit
|
||||
|
||||
List all files written, then ask:
|
||||
|
|
@ -342,7 +362,8 @@ If yes, stage and commit:
|
|||
- .github/.agents/ med alle standard-agenter
|
||||
- .mcp.json med BC MCP bridge
|
||||
- cspell.json
|
||||
- projectmemory/ mappe
|
||||
- projectmemory/ — delt projekthukommelse
|
||||
- docs/specs/, docs/decisions/, docs/cleanup/ — projektdokumentation
|
||||
|
||||
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
||||
```
|
||||
|
|
@ -354,7 +375,7 @@ Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
|||
Triggered by: "Opdater CURABIS Standard fra BCQuality"
|
||||
|
||||
Updates only the files that come directly from BCQuality.
|
||||
Never touches `CLAUDE.md`, `projectmemory/`, or `~/.bc-mcp.config.json`.
|
||||
Never touches `CLAUDE.md`, `projectmemory/`, `docs/`, or `~/.bc-mcp.config.json`.
|
||||
|
||||
### What gets updated
|
||||
|
||||
|
|
@ -372,11 +393,13 @@ Never touches `CLAUDE.md`, `projectmemory/`, or `~/.bc-mcp.config.json`.
|
|||
| `.github/.agents/m365.agent.md` | Fetch fresh from BCQuality, overwrite |
|
||||
| `cspell.json` — words from template | Merge new words, keep project words |
|
||||
| `.mcp.json` — `al` entry | Add if `find-altool.ps1` now exists and entry is missing |
|
||||
| `docs/specs/`, `docs/decisions/`, `docs/cleanup/` | Create if missing, never overwrite content |
|
||||
|
||||
### What does NOT get updated
|
||||
|
||||
- `CLAUDE.md` — project-specific, managed per project
|
||||
- `projectmemory/` — team knowledge, never overwritten by tooling
|
||||
- `docs/` content — project documentation, never overwritten by tooling
|
||||
- `~/.bc-mcp.config.json` — contains developer secrets
|
||||
|
||||
### After update
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue