mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-10-05 14:46:55 +01:00
Implements every confirmed finding from the workflow-based audit of CURABIS Standard's agent model (7 finders + adversarial verification, 8 confirmed / 5 refuted): 1. Roemer/Florence phantom wiring - roemer.agent.md claimed Florence's heartbeat "may summon me when a ward smells of drift" with nothing in florence.agent.md or HEARTBEAT.md implementing it. Fixed by adding an explicit "Kald Roemer" instruction to HEARTBEAT.md ward 6 (agent visibility, his actual domain), mirroring ward 8's existing "Kald Weber" pattern, and correcting roemer.agent.md's own claim to match. 2. m365.agent.md's "Florence's morning brief pattern" was a one-way orphaned reference - a full 4-step pattern with nothing in florence.agent.md implementing it. Added it to florence.agent.md as an explicit on-demand capability, separate from the timestamp-gated Round protocol. 3. An Ergasterion "PROCEED WITH CHANGES" ruling had no way to be checked against the eventual diff - al-review's checklists never referenced it. Added ERGASTERION_RULING to the [CURABIS-STATE] vocabulary, wired Ergasterion to write it, and added a BLOCKing checklist item to al-review's Titus checklist that verifies required changes were actually implemented. 4. curabis-task-state-check.yml was headered "Deterministic enforcement (not LLM diligence)" but only checks checkbox order, only blocks anything if a human separately enabled branch protection (never verified anywhere), and doesn't exist at all for the PTE track. Corrected the header's claims and added Roemer station 14 to verify branch protection is actually configured. 5. Mode C's only safeguard against a support user reaching Curabis/QualityHub was a single manual eyeball check with no re-check ever. Strengthened Step 2 to cover team-inherited and org-default access paths, added an append-only support-user registry, and added Roemer station 15 to periodically re-verify every registered user against it. 6. Columbo's persona was presented as genuine autobiography with no disclosure of its fictional TV origin (Levinson & Link, Peter Falk), unlike Smiley which discloses explicitly. Added a reader-facing editorial note - never something Columbo says aloud, since unlike Smiley he actually performs the persona to customers.
115 lines
3.4 KiB
Markdown
115 lines
3.4 KiB
Markdown
# HEARTBEAT.md — {PROJECT_NAME}
|
|
|
|
Florence læser denne fil ved hver runde. Hun følger checklistet præcist
|
|
og flagger hvis det er forældet.
|
|
|
|
Sidst opdateret: {SETUP_DATE}
|
|
|
|
---
|
|
|
|
## Checklistet
|
|
|
|
### 1. BCQuality PRs
|
|
Tjek åbne PRs på `Curabis/QualityHub`:
|
|
`https://api.github.com/repos/Curabis/QualityHub/pulls?state=open`
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Ingen åbne PRs |
|
|
| Notable | 1 åben PR, oprettet inden for 24 timer |
|
|
| Concerning | 1+ åben PR, ældre end 3 dage uden aktivitet |
|
|
| Urgent | PR afventer merge og blokerer andet arbejde |
|
|
|
|
---
|
|
|
|
### 2. CI/CD — AL-Go builds
|
|
Tjek seneste build-status på `main` og åbne branches.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Alle builds grønne |
|
|
| Notable | Et enkelt build fejlede men er siden rettet |
|
|
| Concerning | Seneste build på main fejler |
|
|
| Urgent | Main fejler og der er en igangværende release |
|
|
|
|
---
|
|
|
|
### 3. BC-opgaver — klar til start
|
|
Tjek opgaver med status `Accepted` i projektet.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Ingen nye Accepted-opgaver siden sidste runde |
|
|
| Notable | 1-2 opgaver er blevet Accepted |
|
|
| Concerning | 3+ opgaver er Accepted og ingen er taget op |
|
|
|
|
---
|
|
|
|
### 4. Forsinkede opgaver
|
|
Tjek opgaver hvor `expectedDelivery` er passeret og BC-status ikke er afsluttet.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Ingen forsinkede opgaver |
|
|
| Notable | 1 opgave forsinket med under 3 dage |
|
|
| Concerning | 1+ opgave forsinket med mere end 3 dage |
|
|
| Urgent | Forsinkelse påvirker kundeleverance |
|
|
|
|
---
|
|
|
|
### 5. Gamle branches
|
|
Tjek branches ældre end 14 dage uden åben PR.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Ingen branches ældre end 14 dage |
|
|
| Notable | 1-2 gamle branches uden PR |
|
|
| Concerning | 3+ gamle branches, eller en branch ældre end 30 dage |
|
|
|
|
---
|
|
|
|
### 6. Agent-synlighed i CLAUDE.md
|
|
Sammenlign filer i `.github/.agents/` med referencer i `CLAUDE.md`.
|
|
Kald Rømer (`roemer.agent.md`) hvis 1+ agent i mappen ikke er nævnt i
|
|
CLAUDE.md — det er præcis hans station 8 (agent visibility), og han kan
|
|
afgøre om det er drift eller en legitim lokal afvigelse der skal videre
|
|
til Ferencz.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Alle agenter er nævnt i CLAUDE.md |
|
|
| Concerning | 1+ agent i mappen er ikke nævnt i CLAUDE.md — Rømer kaldt |
|
|
|
|
---
|
|
|
|
### 7. Workspace & multi-app konfiguration
|
|
Se `florence.agent.md` for den fulde checkprotokol.
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Workspace eksisterer, alle apps er med, alle har test-app |
|
|
| Notable | En eller flere main-apps mangler test-app |
|
|
| Concerning | Ingen workspace-fil, app-mappe mangler i workspace, eller CLAUDE.md dækker ikke alle apps |
|
|
|
|
---
|
|
|
|
### 8. Den rette and
|
|
Kald Weber (`weber.agent.md`) hvis der ligger nye dokumenter i `.decisions/` siden
|
|
sidste runde. Spørgsmålet er: *vidste udvikleren hvilken and der skulle bygges?*
|
|
|
|
| Klassifikation | Kriterium |
|
|
|---|---|
|
|
| Routine | Alle specs denne uge: Klar and |
|
|
| Notable | Én Uklar and — coaching-note sendt til udvikleren |
|
|
| Concerning | Blind and observeret, eller samme gap to uger i træk |
|
|
|
|
Weber rapporterer kun til udvikleren. Aggregerede mønstre, uden navne, til ledelsen.
|
|
|
|
---
|
|
|
|
## Hvad Florence aldrig gør
|
|
|
|
- Vækker Michael for et Notable
|
|
- Springer en runde over fordi "der sikkert ikke er sket noget"
|
|
- Redigerer dette dokument uden at blive bedt om det
|
|
- Lukker BC-opgaver — det kan kun en BC-bruger
|