Michael Dieringer
169a25f379
bc-mcp.agent.md v4: document customers + QA test-iteration tools
...
Live tool audit found the businesscentral MCP server exposes 19 tools,
4 undocumented: List_Customers_PAG50045 and the
List/Create/Modify_TestIteration_PAG6102911 trio. Michael confirmed
both are wanted:
- customers (PAG50045): read-only, restricted in practice to `no` +
`microsoftTenantId` even though the schema also exposes `name`/
`tenantCompanyName` (CURABIS-BCMCP-010).
- testIterations (PAG6102911): activates the QA test-iteration flow
designed 2026-08-09 (Ready for Test trigger, Robert/Linh manual
testing on top of automated tests, defect dedup by shared root
cause). Dedup grouping must come from a separate fresh-context
agent, never the implementing agent grading its own defect count
(CURABIS-BCMCP-009).
Also resolves the open question from the 2026-08-09 design: the older
CUR Sub Task informal bug-tracking fields (Error type / Error related
to task) are a dead pattern at CURABIS and are not being unified with
the new table. Corrected a stale tool-count claim (14 -> 19) along the
way.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-17 08:16:53 +02:00
Michael Dieringer
5de1999676
Foreslaa regel: al_writetranslation/al_searchtranslations maa ikke antages at ramme rette fil uden verifikation
2026-08-16 13:06:40 +02:00
Michael Dieringer
1c3b0aa081
Foreslå regel: Mechanical inspection checks must be scripted, not agent-narrated
2026-08-14 23:30:42 +02:00
Michael Dieringer
b02eb2d6aa
Merge pull request #72 from Curabis/rule/ambiguous-record-failure-edison-sharpen
...
[BCQuality] Sharpen ambiguous-record-failure rule per Edison eval (trace before flagging)
2026-08-13 22:33:29 +02:00
Michael Dieringer
7bb2474630
Merge pull request #74 from Curabis/rule/given-completeness-edison-sharpen-smoketest
...
[BCQuality] Sharpen GIVEN-completeness rule per Edison eval: smoke-test carve-out
2026-08-13 22:33:06 +02:00
Michael Dieringer
d2b7d834d0
Skaerp (Edison): erkend naar Setup-vs-Subsidiary ikke kan afgoeres fra kilden alene
2026-08-13 21:52:04 +02:00
Michael Dieringer
db3380711b
Skaerp (Edison): ny defekt-saa-fix-regressionstest-undtagelse
2026-08-13 21:52:02 +02:00
Michael Dieringer
582c6f5f1a
Skaerp (Edison): laes soeskende-deklarationer foer type+bogstav flagges
2026-08-13 21:52:00 +02:00
Michael Dieringer
87bd8f518c
Skaerp (Edison): udvid scope forbi MCP, ny anti-pattern for aldrig-begraenset
2026-08-13 21:51:58 +02:00
Michael Dieringer
a4c68a4751
Skaerp (Edison-evidens): carve-out for dokumenterede smoke-tests
2026-08-13 14:10:10 +02:00
Michael Dieringer
5475a25834
Skaerp (Edison-evidens): trace-krav foer flagging + udvid til Evaluate/TryFunction
2026-08-13 12:46:08 +02:00
Michael Dieringer
2de05cc65a
Merge pull request #71 from Curabis/rule/defensive-vs-offensive-code-must-match-blast-radius
...
[BCQuality] Defensive vs. offensive code must match blast radius, not habit
2026-08-13 08:56:24 +02:00
Michael Dieringer
898abee7d6
Forslag: defensiv vs. offensiv kode skal matche blast radius, ikke vane
2026-08-13 08:54:33 +02:00
Michael Dieringer
922503305f
Skaerp: VAT/finansielt kritiske felter maa aldrig faa et stille blankt fallback
2026-08-13 08:31:16 +02:00
Michael Dieringer
f120ca7960
Merge pull request #68 from Curabis/rule/source-organized-by-feature-not-object-type
...
[BCQuality] AL source organized by feature, not object type
2026-08-13 08:13:42 +02:00
Michael Dieringer
eda9bc1e67
Merge pull request #69 from Curabis/rule/upgrade-tag-logic-must-not-nest-deeply
...
[BCQuality] Upgrade tag logic must not nest more than 2 levels deep
2026-08-13 08:13:19 +02:00
Michael Dieringer
7e703b93d5
Forslag: upgrade-tag-logic-must-not-nest-deeply
2026-08-13 08:11:54 +02:00
Michael Dieringer
603176f593
Forslag: source-organized-by-feature-not-object-type
2026-08-13 08:11:53 +02:00
Michael Dieringer
90eeb1991c
Skaerp: 1-til-n FGWT scenarier + explicit afvisning af 'test kun paa anmodning'
2026-08-13 08:08:30 +02:00
Michael Dieringer
16f3cd0aee
Sharpen: Setup-page OnOpenPage must instantiate the singleton record
2026-08-13 07:38:53 +02:00
Michael Dieringer
14ac4485c8
Merge pull request #64 from Curabis/rule/al-comments-must-not-restate-what-code-already-shows
...
Forslag: AL-kommentarer maa ikke bare genfortaelle koden
2026-08-13 07:19:09 +02:00
Michael Dieringer
3df1d630d4
Forslag: AL-kommentarer maa ikke bare genfortaelle koden
2026-08-13 07:18:15 +02:00
Michael Dieringer
a74b8e35f3
Forslag: GIVEN-blokke skal daekke hele precondition-kaeden for posting/rapporter
2026-08-13 07:14:01 +02:00
Michael Dieringer
13c7d4e198
Merge pull request #61 from Curabis/rule/file-datatype-direct-io-is-onprem-only
...
[BCQuality] File data type's direct I/O methods are OnPrem-only
2026-08-13 07:02:24 +02:00
Michael Dieringer
860f2db01b
Forslag: prefer-email-module-over-codeunit-mail-397
2026-08-13 06:56:40 +02:00
Michael Dieringer
10af99bb22
Forslag: file-datatype-direct-io-is-onprem-only
2026-08-13 06:56:39 +02:00
Michael Dieringer
0d578e9f3d
Forslag: dimension-support skal foelge DimensionManagement-wiring-moensteret
2026-08-13 06:31:46 +02:00
Michael Dieringer
7e70c4aa5d
Forslag: posting-rutiner skal foelge Check Line/Post Line/Post Batch-moensteret
2026-08-13 06:25:20 +02:00
Michael Dieringer
4bb14fb821
Merge pull request #48 from Curabis/rule/table-design-must-match-bc-table-type-conventions
...
[BCQuality] BC table-type conventions (naming, primary key, pages)
2026-08-13 06:09:42 +02:00
Michael Dieringer
10ff2449f6
Merge pull request #49 from Curabis/rule/page-design-must-match-bc-page-type-conventions
...
[BCQuality] BC page-type conventions (naming, structure, links)
2026-08-13 06:09:26 +02:00
Michael Dieringer
fba0ff2a26
Merge pull request #50 from Curabis/rule/intrinsic-al-functions-must-use-modern-casing
...
[BCQuality] Intrinsic AL function calls use modern casing, not ALL-CAPS
2026-08-13 06:09:02 +02:00
Michael Dieringer
d7001e0e23
Merge pull request #51 from Curabis/rule/binary-choice-must-be-boolean
...
[BCQuality] Binary yes/no choices must be Boolean, not Option/Integer
2026-08-13 06:08:37 +02:00
Michael Dieringer
9d4126ac34
Merge pull request #52 from Curabis/rule/fixed-choice-set-must-use-enum-not-integer
...
[BCQuality] Fixed choice sets must use Enum, not raw Integer
2026-08-13 06:08:10 +02:00
Michael Dieringer
87c7b6aaa2
Merge pull request #53 from Curabis/rule/variable-names-must-be-semantically-descriptive
...
[BCQuality] Variable names must be semantically descriptive, not type+number
2026-08-13 06:07:44 +02:00
Michael Dieringer
be75cf8e70
Merge pull request #54 from Curabis/rule/var-parameters-require-an-addressable-variable
...
[BCQuality] var parameters require an addressable variable, not a literal
2026-08-13 06:07:16 +02:00
Michael Dieringer
336fca3d10
Merge pull request #55 from Curabis/rule/code-must-not-change-workdate
...
[BCQuality] Application code must not change the WorkDate
2026-08-13 06:06:57 +02:00
Michael Dieringer
c79908a695
Merge pull request #56 from Curabis/rule/ambiguous-record-failure-handling-must-be-clarified
...
[BCQuality] Ambiguous record-failure handling must be clarified, not guessed
2026-08-13 06:06:28 +02:00
Michael Dieringer
5e55e5b197
Merge pull request #57 from Curabis/rule/document-reports-should-default-to-word-layout
...
[BCQuality] Document reports should default to Word layout, not RDLC
2026-08-13 06:05:56 +02:00
Michael Dieringer
c14a7189c8
Forslag: billeder skal gemmes i Media/MediaSet, ikke BLOB
2026-08-12 23:02:31 +02:00
Michael Dieringer
f4a1108209
Forslag: dokumentrapporter skal defaulte til Word layout, ikke RDLC
2026-08-12 22:57:57 +02:00
Michael Dieringer
e61c3db041
Forslag: ambiguous-record-failure-handling-must-be-clarified
2026-08-12 22:51:15 +02:00
Michael Dieringer
f2d6674391
Forslag: code-must-not-change-workdate
2026-08-12 22:51:14 +02:00
Michael Dieringer
bed13b9b60
Forslag: var-parametre kraever en adresserbar variabel, ikke literal/udtryk
2026-08-12 22:44:57 +02:00
Michael Dieringer
35c29f6af3
Udvid undtagelse: s/c i Dialog/Window progress-idiom er ogsaa accepteret
2026-08-12 22:37:28 +02:00
Michael Dieringer
c06effd01e
Forslag: variable-names-must-be-semantically-descriptive
2026-08-12 22:30:50 +02:00
Michael Dieringer
e7f9d9f87a
Forslag: fixed-choice-set-must-use-enum-not-integer
2026-08-12 22:30:48 +02:00
Michael Dieringer
a06b684e87
Forslag: binary-choice-must-be-boolean
2026-08-12 22:30:47 +02:00
Michael Dieringer
943d1ac6ee
Forslag: intrinsic AL-funktionskald skal bruge moderne casing, ikke ALL-CAPS
2026-08-12 22:17:42 +02:00
Michael Dieringer
19e3bb7c72
Ret: tilfoej Design Pages Best Practices (s.112) + fjern duplikeret afsnit
2026-08-12 22:09:24 +02:00
Michael Dieringer
8ef8209cce
Forslag: BC page-type conventions (naming, structure, links)
2026-08-12 22:04:51 +02:00