Skip to content

[Experiment - do not merge] API stack without clean execution, full Disabled-isolation selection - #12758

Draft
Prangshuman Das (t-prda) wants to merge 13 commits into
features/646383-stack-d8-apiv1-reliabilityfrom
features/646383-stack-g-no-clean-full-selection
Draft

Prangshuman Das (t-prda) wants to merge 13 commits into
features/646383-stack-d8-apiv1-reliabilityfrom
features/646383-stack-g-no-clean-full-selection

Conversation

@t-prda

@t-prda Prangshuman Das (t-prda) commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Experiment - do not merge. Validates whether clean test codeunit execution is actually needed, or whether the earlier no-clean experiment (#12686) only passed because of a test selection gap.

Stacked on #12684 (D8). Diff vs D8:

Why: in #12686, US ran 144 API codeunits vs 216 with clean execution (IntegrationTests 49 vs 67, UncategorizedTests 31 vs 85). Without clean execution the per-app jobs only run the Disabled pass when TestType -eq "UnitTest", so Disabled codeunits in IntegrationTest/Uncategorized lanes never run.

Expected: US executes ~216 API codeunits. If green, clean-tenant execution is not required for correctness (only selection is); if red, the failures show which tests need clean tenants.

AB#646383

Authenticate API test requests with the current user's web service key and remove the
container password and Key Vault credential plumbing (ApiTestCredential, password cleanup,
PipelineFinalize hooks). Containers disable NavHttpClient anti-SSRF so API tests can call
the local server. Clean-tenant execution logic is unchanged. Adds the shared
SetLicenseSafeWorkDate and AddFieldToIgnoreIfExists helpers to Library - Graph Mgt.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Remove the Expense API Test Auth Helper (no Key Vault secret, no subscriber) and apply the
Expense app and test fixes. Keep only Expense disablements that NAV master also has.
Enable clean test codeunit execution; APIV1/APIV2 tests that this surfaces are temporarily
excluded (entries from #12325) and re-enabled by the following layers.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Re-enable APIV1, APIV2, IRS 1099 and E-Document API tests that pass without area-specific
fixture fixes. Only tests fixed by the following area layers and the two Company Info.
tests that NAV master disables stay excluded.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Create missing VAT posting setup for item, item charge, resource and G/L account lines in
API document fixtures and re-enable the affected line and item variant tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Create a reason code when none exists so cancel actions succeed and re-enable the
affected invoice and credit memo tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Set dates before vendor defaults apply, use the payment-terms discount library and accept
localized payment lines, then re-enable the payment discount test.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Align quote dates with the work date before converting to an order and re-enable the
make-order tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Give the vendor payments batch a number series when it has none and re-enable the
vendor payment and apply vendor entry tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Skip localized header fields that only exist in some countries when comparing page and
API documents and re-enable the through-page-and-API tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Select the purchase return shipment report for return shipment PDF documents, run the
PDF document codeunits without test isolation and re-enable their TestExpandPdfDocument tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Find created lines by unique description, refresh polled configuration packages, fix
assertion order and journal template handling, and re-enable the affected APIV1 tests.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
Experiment branch on top of the API stack. Turn off clean test codeunit execution and keep four
tenants, so AL-Go settings equal main. Compare CI time and test failures with the D8 layer.
Not intended for merge.

AB#646383
AB#653393

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
…st lanes

Without clean test codeunit execution, the parallel per-app jobs only ran the
RequiredTestIsolation=Disabled pass for UnitTest lanes. IntegrationTest and
Uncategorized lanes silently skipped those codeunits, which hid 72 API test
codeunits in US in the no-clean-execution experiment. Run the pass for every
typed lane so the experiment executes the same tests as clean execution.

AB#646383

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3952f078-a881-4da8-ad96-13b727e48a91
@github-actions github-actions Bot added Build: scripts & configs Build scripts and configuration files AL: Apps (W1) Add-on apps for W1 Ownership: Needs Review Ownership is Other, low confidence, or needs manual correction Team: Other GitHub request for other area than SCM, Finance or Integration labels Oct 13, 2026
@github-actions github-actions Bot added this to the Version 30.0 milestone Oct 13, 2026
@t-prda
Prangshuman Das (t-prda) changed the base branch from main to features/646383-stack-d8-apiv1-reliability October 13, 2026 09:40
@t-prda
Prangshuman Das (t-prda) force-pushed the features/646383-stack-d8-apiv1-reliability branch 7 times, most recently from 46994a0 to de737ec Compare October 15, 2026 12:56

This branch was successfully deployed

1 active deployment
triage — 23248f95 Deployed Oct 13, 2026 by t-prda via Classify team ownership #7631
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AL: Apps (W1) Add-on apps for W1 Build: scripts & configs Build scripts and configuration files Ownership: Needs Review Ownership is Other, low confidence, or needs manual correction Team: Other GitHub request for other area than SCM, Finance or Integration

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant