Commit graph

167 commits

Author SHA1 Message Date
Wenjie Fan
5277150469
do.md: require strict RFC 8259 JSON with escaped quotes/newlines (#46)
Action skills emit AL source in message/suggested-code fields. Quoted
identifiers and multi-line snippets must have their embedded quotes and
newlines escaped, otherwise the consumer JSON parse fails and silently
drops the report. Add a JSON validity subsection to the output contract
making the escaping requirement explicit.

Co-authored-by: wenjiefan <wenjiefan@microsoft.com>
2026-06-24 14:06:50 +02:00
Michael Dieringer
416b30ee44
Merge pull request #14 from Curabis/curabis-docs-structure
Standard v3 + Columbo v2 - docs/ struktur og requirement persistence
2026-06-24 07:22:14 +02:00
Michael Dieringer
f13c9962de Standard v3 - add docs/ structure, Columbo writes to docs/specs/ 2026-06-24 07:21:25 +02:00
Michael Dieringer
2ee35531df Columbo v2 - reads docs/specs/, writes summaries there 2026-06-24 07:19:34 +02:00
Michael Dieringer
79230edd24
Merge pull request #13 from Curabis/curabis-standard-agents
Standard v2 - Add Columbo, Florence, M365 to all new projects
2026-06-24 07:11:29 +02:00
Michael Dieringer
80e225e58d Add Columbo, Florence, M365 to standard setup (v2) 2026-06-24 07:10:46 +02:00
Michael Dieringer
4b50a7ccc4
Merge pull request #12 from Curabis/curabis-m365
Add Microsoft 365 MCP usage guide
2026-06-24 07:02:56 +02:00
Michael Dieringer
4e9a610f4b Add Microsoft 365 MCP usage guide 2026-06-24 07:02:31 +02:00
Michael Dieringer
a12aac2b59
Merge pull request #11 from Curabis/curabis-florence
Add Florence Nightingale - Heartbeat Agent
2026-06-24 01:17:18 +02:00
Michael Dieringer
3476d6a9ad Add Florence Nightingale - Heartbeat agent 2026-06-24 01:12:31 +02:00
Michael Dieringer
47e6bde4d9
Merge pull request #10 from Curabis/curabis-columbo
Add Columbo - Customer Requirement Clarifier
2026-06-24 01:04:04 +02:00
Michael Dieringer
8a1c589ef7 Add Columbo - Customer Requirement Clarifier agent 2026-06-24 01:02:41 +02:00
Michael Dieringer
33b48fc9bc
Merge pull request #9 from Curabis/curabis-mcp-008
CURABIS-MCP-008: AI eval scores must be posted to BC posting table
2026-06-24 00:07:35 +02:00
Michael Dieringer
fb2f8f5b00 Add CURABIS-MCP-008: AI eval scores must be posted to BC posting table 2026-06-24 00:06:42 +02:00
Michael Dieringer
b7a5359b82
Merge pull request #8 from Curabis/rule/agent-must-resolve-developer-identity-from-bc
[BCQuality] Agent must resolve developer identity from BC
2026-06-23 22:22:25 +02:00
Michael Dieringer
cec927df81 Foreslaa regel: Agent must resolve developer identity from BC 2026-06-23 22:19:02 +02:00
Michael Dieringer
aad03770fa Tilfoej al-triage, al-complexity, bc-mcp til templates og curabis-standard 2026-06-23 20:33:48 +02:00
Michael Dieringer
220da9e5eb Tilfoej bc-mcp agent til templates 2026-06-23 20:32:54 +02:00
Michael Dieringer
3625596742 Tilfoej al-complexity agent til templates 2026-06-23 20:32:51 +02:00
Michael Dieringer
9bd27eab88 Tilfoej al-triage agent til templates 2026-06-23 20:32:49 +02:00
Michael Dieringer
8691ece99f Immanuel v3: PR-based approval workflow, GitHub-merge som kryptografisk verifikation 2026-06-23 20:27:47 +02:00
Michael Dieringer
0e785a7284 Tilfoej Francis til standard pipeline + PR-based approval i Mode A+B 2026-06-23 20:26:45 +02:00
Michael Dieringer
344bb41fbc Tilfoej Francis (BCQuality rule proposer) til templates 2026-06-23 20:25:16 +02:00
Michael Dieringer
47d891cee9 Opdater Immanuel: Type A/B pipeline + PR-based approval workflow 2026-06-23 20:24:55 +02:00
Michael Dieringer
4c1a0c8b78 Add CURABIS-BCMCP-008/009/010: git lifecycle must sync BC subtask dev status 2026-06-23 19:38:53 +02:00
Michael Dieringer
288f64df16 Add BCApps citations to Tier 1+2 knowledge files; add 2 new rules
- All 7 existing Tier 1/2 knowledge files now include a BCApps Reference
  section with concrete source links and observed patterns
- New: bcpt-scenarios-must-be-app-specific — PerformanceTest apps must
  include app-domain BCPT scenarios, not only Microsoft generic samples
- New: permission-sets-must-follow-least-privilege — View/Edit/Admin
  hierarchy with IncludedPermissionSets, mirroring BCApps BusFound pattern
- api-page-key-fields-must-be-editable-on-insert clarified: SystemId as
  ODataKeyField + Editable=false is valid (auto-generated); rule applies
  to consumer-provided key fields only

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 17:48:37 +02:00
Jeremy Vyska
4a7a34b5c9
Merge pull request #32 from thatnavguy/main
Add community UI knowledge article for default descending sort on historical pages
2026-06-23 11:35:09 +02:00
Jeremy Vyska
b05ab8df68
Merge pull request #40 from microsoft/jesperschulz-bc-knowledge-gap-analysis
Add error-handling knowledge domain and review leaf skill
2026-06-23 11:34:31 +02:00
Copilot
65f6f22157 Add open-ended bc-version range shorthand [N..]
A closed range like [23..28] wrongly implies guidance stops applying after
BC28, so a reviewer targeting BC29+ would not match the file. Introduce an
open-ended shorthand [N..] meaning ''version N and every later version''.

- validate_frontmatter.py: RANGE_SHORTHAND allows an optional upper bound;
  expand_bc_version returns the normalized string ''N..'' for open-ended.
- read.md: document the fourth bc-version form and its matching rule
  (matches target >= N; not enumerable).
- write.md: prefer [N..] over a closed range for a feature introduced in N
  and not expected to be removed.
- Apply [23..] to the actionable-errors article (actionable errors shipped
  in BC23 and are not version-bounded above).
- README: mention [N..] in the frontmatter example.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-06-23 11:20:11 +02:00
Copilot
8901b83e07 Add error-handling knowledge domain and review leaf skill
Seed the first new AL knowledge domain toward issue #34: a fully wired
error-handling domain that the review pipeline actually consumes.

- 3 knowledge articles (+ good/bad AL samples):
  - prefer-errorinfo-for-actionable-errors (ErrorInfo Fix-it/Show-it actions)
  - collect-validation-errors-with-errorbehavior (ErrorBehavior::Collect)
  - errortype-internal-vs-client-for-diagnostics (ErrorType Internal vs Client)
- New leaf skill al-error-handling-review.md, modeled on al-performance-review
- Wire the leaf into al-code-review (sub-skills, Source, description)
- README: six -> seven leaf skills

Validated: frontmatter validator clean; knowledge-index check passes
(deterministic, full coverage, selection inputs intact).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-06-23 10:35:24 +02:00
Michael Dieringer
e11c1fd16c Add Gotcha warning: taskNo vs taskId confusion at commit time
Users refer to tasks by taskNo in conversation (e.g. 'opgave 51').
Commit messages must use taskId (e.g. 8738) — different field.
Added explicit Gotcha block and sharpened step 3 in How to find.

Approved by: mid (Michael Dieringer)
2026-06-22 14:24:39 +02:00
Michael Dieringer
34d8f372f8 Add governance agents: Francis (BC-MCP observer) and Immanuel (rule guardian)
Francis observes BC-MCP session patterns and identifies where existing rules
are too superficial (Type A sharpening) or where no rule covers the pattern
(Type B gap). Type B gaps are handed to Immanuel for Categorical Imperative
validation before entering BCQuality.

Immanuel guards the knowledge base by running four tests (universalizability,
project-specificity, clarity, additive value) before any rule is approved.
2026-06-22 04:10:58 +02:00
Michael Dieringer
6fe72d82a4
Add rule: scope task lists to current repository
When a developer asks for open tasks, only return tasks from the project(s)
linked to the current git repository. Flag it if no project is linked.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-21 13:15:13 +02:00
Michael Dieringer
4ef1c0ecc0
Merge pull request #6 from Curabis:AutoUpdate
AutoUpdate
2026-06-21 12:47:14 +02:00
Michael Dieringer
0b1054051f AutoUpdate 2026-06-21 12:46:46 +02:00
Michael Dieringer
e4038667f6
Merge pull request #5 from Curabis:startup-&-agents
Startup & agents
2026-06-21 12:34:01 +02:00
Michael Dieringer
985faf9e8d new global standard 2026-06-21 12:22:54 +02:00
Michael Dieringer
bdda44ef8a Add BC MCP task lookup recipe and commit message task ID rule 2026-06-21 11:00:06 +02:00
Michael Dieringer
42a02b9c0f Add architecture rule: shared project memory must be in repo 2026-06-21 09:32:24 +02:00
Michael Dieringer
f058095dec Add 3 testing knowledge files from book review
- test-one-when-per-test: one WHEN per test, split if multiple actions
- ui-test-codeunit-naming: _UT suffix for TestPage-based codeunits
- test-feature-scenario-tags: [FEATURE]/[SCENARIO] comment structure

Based on patterns from Automatiserede tests med Business Central (Dieringer).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20 21:38:12 +02:00
Michael Dieringer
935d756f05 Add mcp knowledge category with 5 rules
Rules derived from BC MCP API page development experience:

- api-page-flowfields-must-be-calcfields: FlowFields return empty on API
  pages unless explicitly CalcFields'd in OnAfterGetRecord
- stored-derived-fields-must-not-be-exposed-directly: Stored fields updated
  only via OnValidate triggers can be stale; recalculate live in OnAfterGetRecord
- api-page-key-fields-must-be-editable-on-insert: ODataKeyFields with
  Editable=false are rejected as unknown properties on POST
- api-page-least-privilege-write-access: Create dedicated minimal pages per
  write concern rather than widening general-purpose pages
- agent-must-not-write-business-process-status: Agents must only write
  developer-tracking fields; business status fields affect invoicing/time registration

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20 13:48:06 +02:00
Michael Dieringer
c2aaf92748
Merge pull request #4 from Curabis:add-curabis-eval-scripts
Add curabis eval scripts
2026-06-20 11:35:50 +02:00
Michael Dieringer
09e4e59192 exposed 2026-06-20 11:35:01 +02:00
Michael Dieringer
6ccd603112 Add CURABIS shared eval + evidence scripts to custom/scripts
- Invoke-CurabisEval.ps1: general compile + analyzers quality eval (hill-climbing score,
  reads each project's own al.codeAnalyzers + ruleset, logs .eval/history.jsonl).
- Invoke-CurabisEvidence.ps1: citation evidence validator that fails on hallucinated
  knowledge-file or CURABIS rule-code references (cite-or-flag enforcement).
- README documenting both.

Fetched by Setup-CurabisAppSource.ps1 into each project's scripts folder.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 08:54:21 +02:00
Michael Dieringer
0287ddbedf
Merge pull request #3 from Curabis/code-refresh 2026-06-15 14:27:20 +02:00
Michael Dieringer
0f7021a5b6 code refresh 2026-06-15 14:26:40 +02:00
Teddy Herryanto
b520360f52 Add Default descending sort on historical pages 2026-06-15 06:42:09 +02:00
Michael Dieringer
52ac0d6436
Merge pull request #2 from Curabis:translateRules
TranslateRules
2026-06-14 15:57:45 +02:00
Michael Dieringer
f0b473e106 translate 2026-06-14 15:56:45 +02:00
Michael Dieringer
e68b833ea1
Merge pull request #1 from Curabis/newrules
newrules
2026-06-13 22:58:35 +02:00