#11260 Ruleset hardening: promote four legacy warning rules to Error
The repository ruleset now treats AS0103, PTE0004, AS0011 and AA0136 as errors instead of warnings. Legacy tables and identifiers are scoped as exceptions, 34 production tables are added to their owning permission sets, and unreachable code is removed without deleting any public API.
- 241files
- 59AL files
- 57objects
Pull request · merged into main (BC30) on 2026-09-16 by JesperSchulz · 241 files (+482 -1512), 59 AL · refactor · tier official · reviewed (checked by Opus)
What changed
- AS0103 and PTE0004 are now errors: 142 tables use shared ID-qualified scopes and 34 production tables were added to permission sets
- AS0011 exceptions cover 47 established identifiers (17 legacy test objects, 30 published app objects)
- AA0136 fixes remove unreachable code at 37 line sites in 29 files without adding suppressions
- Permission additions cover Russian statutory tables, Dynamics SL historical tables, W1 Exchange Sync and HybridSL purchase order tables
- Public CH DemoTool procedure GetPeriodNoOneDate was restored after its accidental deletion, so no external API is removed
- Behaviour changes for users or extensions.
AL objects touched
- Page 11028 “Elec. VAT Decl. Overview”, Elster (DE layer): modified
- Page 11019 “Electronic VAT Decl. Setup”, Elster (DE layer): modified
- Page 11016 “Sales VAT Adv. Notif. Card”, Elster (DE layer): modified
- Page 11017 “Sales VAT Adv. Notif. List”, Elster (DE layer): modified
- Permission set extension 46539 “D365 BASIC - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 45801 “D365 BASIC ISV - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 8697 “D365 BUS FULL ACCESS - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 16295 “D365 BUS PREMIUM - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 14181 “D365 FULL ACCESS - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 9615 “D365 READ - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 32689 “D365 TEAM MEMBER - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Permission set extension 21993 “INTELLIGENT CLOUD - ELSTER VAT Localization for Germany”, Elster (DE layer): modified
- Report 11016 “Create XML-File VAT Adv.Notif.”, Elster (DE layer): modified
- Table 11027 “Elec. VAT Decl. Buffer”, Elster (DE layer): modified
- Table 11023 “Elec. VAT Decl. Setup”, Elster (DE layer): modified
- Table 11021 “Sales VAT Advance Notif.”, Elster (DE layer): modified
- Permission set extension 42800 “SL D365 Basic Ext.”, DynamicsSLHistoricalData: modified
- Permission set extension 42801 “SL D365 Full Access Ext.”, DynamicsSLHistoricalData: modified
- Permission set 42801 “SL Historical Querys”, DynamicsSLHistoricalData: modified
- Permission set extension 47002 “SLD365 BASIC ISV - MSL”, HybridSL: modified
- Permission set extension 47001 “SLD365 BASIC - MSL”, HybridSL: modified
- Permission set extension 47003 “SLD365 TEAM MEMBER - MSL”, HybridSL: modified
- Permission set extension 47000 “SLINTELLIGENT CLOUD - MSL”, HybridSL: modified
- Permission set 47004 “SL Migration - Edit”, HybridSL: modified
- Permission set 47005 “SL Migration-Objects”, HybridSL: modified
- Permission set 47006 “SL Migration - Read”, HybridSL: modified
- Permission set extension 1632 “D365 BASIC ISVQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 46049 “D365 BASICQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 3998 “D365 BUS FULL ACCESSQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 44603 “D365 BUS PREMIUMQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 26134 “D365 FULL ACCESSQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 20875 “D365 READQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 16491 “D365 TEAM MEMBERQuickBooks Data Migration”, QBMigration: modified
- Permission set extension 27224 “INTELLIGENT CLOUDQuickBooks Data Migration”, QBMigration: modified
- Permission set 27225 “QBMigration - Edit”, QBMigration: modified
- Permission set 27226 “QBMigration - Objects”, QBMigration: modified
- Permission set 27227 “QBMigration - Read”, QBMigration: modified
- Page 1830 “MS - QBO Data Migration”, QBMigration: modified
- Codeunit 1830 “MigrateQBO Wizard Integration”, QBMigration: modified
- Codeunit 1921 “QB Migration Install”, QBMigration: modified
- Page 28090 “Post Dated Checks”, Base Application (AU layer): modified
- Page 28092 “Post Dated Checks-Purchases”, Base Application (AU layer): modified
- Table 10501 “Postcode Notification Memory”, Base Application (GB layer): modified
- Table 10555 “Fin. Charge Interest Rate”, Base Application (GB layer): modified
- Report 14030 “Official journal ledger Summ.”, Base Application (CA layer): modified
- Report 15000062 “Remittance - Import (Bank)”, Base Application (NO layer): modified
- Report 14962 “Create VAT Purch. Led. Ad. Sh.”, Base Application (RU layer): modified
- Permission set 1001 “LOCAL”, Base Application (RU layer): modified
- Permission set 1002 “LOCAL READ”, Base Application (RU layer): modified
- Permission set 5117 “D365 AUTOMATION”, Base Application: modified
- Permission set 208 “D365 Basic - Edit”, Base Application: modified
- Permission set 732 “D365 BASIC ISV”, Base Application: modified
- Permission set 209 “D365 Basic - Read”, Base Application: modified
- Permission set 959 “D365 BUS FULL ACCESS”, Base Application: modified
- Permission set 1044 “D365 READ”, Base Application: modified
- Permission set 7931 “D365 TEAM MEMBER”, Base Application: modified
- Permission set 6121 “INTELLIGENT CLOUD”, Base Application: modified
src/Layers/GB/BaseApp/Permissions/d365busfullaccess.permissionset.al: modified, not in the BC30 snapshotsrc/Layers/RU/BaseApp/Permissions/d365busfullaccess.permissionset.al: modified, not in the BC30 snapshot
Context
- Work items: AB#640773, AB#649216
- Labels: AL: Apps (W1), Ownership: Needs Review, Team: Other
- Systems: development, administration, finance, platform, purchasing, sales
- From the description: “Promotes AS0103, PTE0004, AS0011, and AA0136 from Warning to the repository default Error posture.”
Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).