Repository navigation
fix(configurator): support Automatic Corporate networks and post-login orders - #135
Merged
Merged
Conversation
12 of 22 tasks
lweberru
marked this pull request as ready for review
October 22, 2026 09:39
lweberru
requested review from
Breeless,
JoshSTACKIT,
LembDo and
dweezl
as code owners
October 22, 2026 09:39
lweberru
added a commit
that referenced
this pull request
Oct 22, 2026
A failed Application Apply currently leaves the same order permanently blocked at the disabled Cloud Plan button. This adds a checkpoint-bound way to request a fresh Plan without creating another order or losing its State binding. For a normally reported `apply_failed`, the original Application Owner can check the Application checkpoint and enable replanning directly, without another Platform Owner approval or waiting for the old grant to expire. SQL requires terminal execution, a consumed package-bound ticket, matching output evidence and no recovery record. The API reads the exact bound S3 key, verifies the order contract, checks locks before and after reading, and rechecks a five-minute encrypted proof on confirmation. State contents and backend credentials never leave the server. Uncertain completion retains a separate original-approver operator-attestation path after execution windows expire. State-write failures, separate recovery State, locks and mismatched checkpoints stay blocked. Clearance records neither independently verified cloud consistency nor Apply permission: historical dispatches and State remain unchanged, and SQL requires a newly created Plan before any subsequent Apply. The normal Plan refresh and explicit Apply review remain mandatory. Both UI languages explain the block and the next action. No cloud mutations, customer Plan/Apply, State edits, credential rotation or deployment were performed. Validation: - Full application check: 1,040 passed; 71 environment-gated tests skipped. - Real isolated database suite: 66 passed, including both clearance modes, concurrent idempotence, role/tenant boundaries, consumed-ticket replay rejection and the fresh-Plan/Apply lifecycle. - Platform-State database regressions: 63 passed. - Desktop/mobile organisation and Application browser flows: 118 passed, including selfservice, stale proof and operator review. - Final focused API/checkpoint tests: 96 passed; one native-engine test skipped. Typecheck, build, lint and diff checks passed. - Independent review of API/UI/contracts/docs found no remaining security blocker; SQL was separately reviewed and exercised against the real database. This deliberately keeps the deployed Application Accelerator source pin unchanged so existing partially applied orders remain compatible. Merge/deploy this recovery path before the separate source update in #135; that PR will need its pending migration numbers rebased afterwards. No release workflow or Assistant qualification gate is changed.
10 of 13 tasks
lweberru
added a commit
that referenced
this pull request
Oct 23, 2026
## Problem and resulting behavior The qualified Dev release for #135 stopped before build/deployment: both `dns-owner` repetitions asked for known DNS metadata/contact decisions instead of preparing the explicitly requested reviewable completion (122/124 cases passed; continuous journey passed). Those failures remain recorded in release 39925017270. Supply DNS intent classification with stable zone keys, validated field-presence flags and confirmed contact-source availability. Actual domain/contact values and unknown fields are excluded from this additional context. Require an explicit DNS-task decision in the serving schema while retaining legacy parser compatibility. Keep a semantic remaining-settings decision coherent with draft mode and distinguish metadata completion from source-evidenced add/replace operations. Existing field/contact/preservation/evidence/acceptance guards and all factual oracles remain unchanged; nothing is persisted or executed by classification. Regenerate source-bound knowledge/catalogue metadata and update EN/DE contributor guidance. Add regression coverage for contradictory advice mode, actual classifier context, required task selection and downstream rejection of missing/invented/overbroad proposals. Informational requests retain advice behavior. ## Validation and limits Final lint/build/type checks passed locally; full unit suite: 1052 passed, 71 environment-gated skipped. All eight DNS cases passed twice against the configured real model (16/16) on this final source, including both owner-contact completion repetitions. The earlier restricted-loopback test run is not counted as a functional pass; the complete suite passed with the required local test permissions. Intermediate experiments are not qualification: one earlier version failed collection-evidence checks, another had a truncated model response. No failed repetition is relabelled as success. A fresh full qualified release remains mandatory before Dev promotion. No migrations, IAM grants, customer Plan/Apply, State changes or production operations. Related #95 and #93; no acceptance criterion is weakened.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Corporate orders with Automatic network size and inherited DNS passed
validatebut failed the provider's IPv4 validation during Plan. The native module now reads the attached regional SNA default and supplies the effective prefix while keeping DNS. Explicit prefixes and Public networks avoid that lookup. The Application Runner is pinned to the reviewed native commit1ed855609d4dcbfded6759c7c8b4fabf7bd6725d; migrations retain existing source allowlists and immutable versions/State bindings.Orders created before the owner's valid STACKIT login can now complete their missing verified owner binding in place, before any approval or job exists. SQL independently restricts the completion to the same current owner/tenant and declared context roles, with immutable before/after audit. A genuine changed identity or existing execution evidence remains protected. The UI refreshes the same order and explains those boundaries.
The Assistant explains Automatic inheritance and proposes the exact requested numeric/null setting. Updated knowledge, production grounding and factual positive/negative tests distinguish the native fix from an invented provider upgrade and preserve unrelated settings. Human provider diagnostic details are now visible after the existing redaction, excluding structured snippets/expressions.
Validation:
npm run check: 1010 passed, 71 environment-gated skipped.English/German user, native-module and contributor documentation is updated. New sources require a new published template version/order; existing orders retain their reviewed source. A partial infrastructure Apply must be recovered against its existing State separately; this PR does not import, unlock, retry or replace customer infrastructure.
Refs #93. Real Corporate/Public cloud acceptance remains open.
Integrated with current main on 2026-10-23: published recovery migration 064 remains byte-for-byte unchanged; new source and identity migrations now follow as 065/066. The combined recovery/identity database scenario uses the same bounded 30-second budget as the neighboring extended scenario (the former 5-second limit expired under the combined workload; no assertions were removed). Full local check: 1049 passed / 71 gated skipped; real isolated identity/Application database suite: 51 passed; platform State/recovery database suite: 63 passed. Earlier timed-out runs are retained in local logs.
The user has since confirmed first-attempt Public Plan/Apply including Observability and successful Corporate recovery on the prior runtime (#93). These results do not qualify this PR's new Automatic prefix or identity-completion behavior in the cloud.