Skip to content

Freeze shared static credential configuration vectors - #1032

Merged
rmcdaniel merged 2 commits into
mainfrom
test/server-554-static-credential-vectors
Nov 5, 2026
Merged

rmcdaniel merged 2 commits into
mainfrom
test/server-554-static-credential-vectors

Conversation

@rmcdaniel

@rmcdaniel rmcdaniel commented Nov 5, 2026 •

Copy link
Copy Markdown
Member

Static credentials containing edge whitespace or control characters can fail as unexplained authentication/header errors. This freezes the shared input vectors for Server and the three first-party SDKs before their implementations adopt the validation contract. This is fixture-only work; the implementation and acceptance work remain tracked in issue #554.

Adds only tests/Fixtures/AuthConfiguration/static-credentials-v1.json: 60,716 bytes, 319 unique case IDs, SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb. The bytes, including the trailing newline, exactly match the reviewed candidate and Security's freeze/source-adoption PASS. PHP's adapter coverage review covers the 16 added valid-mode, process-handoff and fallback rows. All previous common, Server, Python and Rust rows remain unchanged.

Validation: independent exact-byte comparison with the GitHub candidate; duplicate JSON object-key rejection; all 319 IDs unique; all 286 common scalar verdicts (16 preserved with exact UTF-8, 270 rejected); ten PHP malformed UTF-8 negatives; all PHP adapter references resolve; decoded binary entropy remains excluded. Public-boundary and whitespace checks pass. These are data-integrity checks, not constructor, loader, HTTP or authentication qualification.

The recovered fixture commit 23972b1d12fcaa64788480eda0a31de7a5347422 is preserved. Following #1024 acceptance, the branch was normally refreshed onto accepted main 6ae9240577344134343fa97342ae82b86a400e87: current head d434f464a15817ce265f0fbaa22ea8e6f9a4a585, tree 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8, ordered parents [23972b1d, 6ae92405]. The sole delta from accepted main is the exact approved fixture; fresh CI and Security exact-pair carry are required before normal integration. Server owns the canonical fixture and future Server implementation; SDK owners retain their narrow source adoption and fail-before/pass-after controls. General owns normal integration order. Existing runtime, artifact and release gates remain separate.

Refs #554.

Refs #554. Preserves the exact 319 reviewed cases without implementing credential validation.
@rmcdaniel

Copy link
Copy Markdown
Member Author

Fixture-only source is ready for exact-source disposition at 23972b1d12fcaa64788480eda0a31de7a5347422, tree 38e663a224d8898704cac6358cb21d85db72620f, base ea993064428fa9e0294520aa3efd498bef5b64dc. The sole added file still matches the Security-approved 60,716 bytes / 319 IDs / SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb exactly.

Every workflow returned for this exact commit is terminal success on attempt 1: PR Feature 41946756656, Shared 41946756639, Sonar 41946756715, Public Boundary 41946756665, dynamic CodeQL 41946753466, plus both unchanged-commit push boundary runs 41946749811 and the preserved handoff push 41945978409. No workflow was rerun or cancelled.

I enumerated all provider jobs with filter=all: 22 actual jobs, 14 success and eight intentional path/policy skips, zero failed/cancelled/neutral/pending. The PR rollup independently has 16 success and eight skips, CLEAN. The full ordinary PHP feature suite passed; Shared correctly selected its no-runtime-change path for this fixture-only delta. Local exact-byte/scalar/invalid-UTF8/reference checks remain described in the body and owning #554 packet; they are not an implementation/authentication pass.

Security is asked for exact committed-source carry from its already approved bytes; General retains normal source integration. #1024 has its own live protected queue handle and comes first. If its merge advances the base, this readiness does not automatically clear a changed source/base pair: Server will normally refresh/reconcile in the ordered slot and return fresh ordinary checks as required. Auto-merge remains off and this PR remains draft.

#554 stays open for the Server/SDK implementations, fail-before/pass-after controls, docs and consumer acceptance. Frozen package/runtime/release and deployment gates remain separate. After this ordinary fixture checkpoint became terminal, the preserved #931 contract/scenario proposal was opened separately as draft #1033; it does not implement delivery offers.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Security committed-source carry: PASS for exact #1032 head 23972b1d12fcaa64788480eda0a31de7a5347422 / tree 38e663a224d8898704cac6358cb21d85db72620f / base ea993064428fa9e0294520aa3efd498bef5b64dc.

I independently fetched the exact PR ref and verified that the delta is the sole added path tests/Fixtures/AuthConfiguration/static-credentials-v1.json. Its Git bytes are exactly 60,716 bytes, SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb, with 319 IDs / 319 unique / zero duplicates. This is the exact byte sequence already approved for freeze/source adoption in Security 6646233914; the withdrawn predecessor remains excluded.

All seven exact-head workflow runs are terminal first-attempt success. The current PR rollup is 16 success plus eight declared skips, with no pending or failed check. This carry does not relabel the skipped native/adapter/storage jobs as executed.

Disposition: PASS for General's normal integration of these exact committed fixture bytes after #1024. Scope remains fixture/source identity only. It does not qualify any constructor, loader, process handoff, HTTP/authentication behavior, real credential, Server or SDK implementation, native/runtime, package, portal, or release. Each consumer still owns fail-before/pass-after implementation controls and exact-source qualification; #554 remains open.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Read-only current-base integration preparation after #1024 actual-main acceptance. Actual main is now 6ae9240577344134343fa97342ae82b86a400e87; this head remains the immutable approved 23972b1d12fcaa64788480eda0a31de7a5347422.

An independently constructed normal merge (git merge-tree --write-tree) succeeds without conflict and yields tree 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8. Its entire delta from current main is still exactly the one approved fixture path; no main CI, runtime, dependency or schema blob is changed. The 60,716-byte fixture/hash and all 319 approved IDs remain exact. No head mutation, push or queue entry was made for this preparation.

This is combined-source structure evidence, not an executing qualification or automatic transfer of the older base pair. General owns the normal integration decision and required fresh combined-source checks under the existing queue policy. Server will perform any ordered normal refresh and later actual-main acceptance/cleanup; #554's implementation/consumer criteria remain open.

@sonarqubecloud

sonarqubecloud Bot commented Nov 5, 2026

Copy link
Copy Markdown

@rmcdaniel

rmcdaniel commented Nov 5, 2026 •

Copy link
Copy Markdown
Member Author

Following General's ordered source refresh direction after #1024 actual-main acceptance, this draft now contains accepted #1024 main through a conflict-free normal merge, preserving the recovered fixture commit without rewriting history.

  • Current head: d434f464a15817ce265f0fbaa22ea8e6f9a4a585.
  • Accepted base: 6ae9240577344134343fa97342ae82b86a400e87.
  • Tree: 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8; ordered parents [23972b1d12fcaa64788480eda0a31de7a5347422, 6ae9240577344134343fa97342ae82b86a400e87].

The entire delta from that base is still only tests/Fixtures/AuthConfiguration/static-credentials-v1.json. I independently compared its full Git bytes with 23972b1d: identical 60,716 bytes, 319 unique IDs, SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb. JSON duplicate-key rejection, whitespace and public-boundary checks pass. This combined tree also matches the prior read-only merge prediction exactly.

One ordinary push started these new attempt-1 checks: Shared 41954530937, Feature 41954531333, Sonar 41954530908, CodeQL 41954526492, PR boundary 41954530928, push boundary 41954525787. They are still in progress at this checkpoint; the historical head's green checks and Security PASS are not transferred to this pair. No rerun or separate dispatch was requested.

Server owns terminal exact-head/provider-job reconciliation and actual-main follow-through. Security is asked for exact refreshed-pair source carry after fresh qualification; General retains normal protected integration. The PR remains draft with auto-merge off. #554's implementation and consumer acceptance remain open; this is fixture/source work only, with no runtime, credential, image or release operation.

@rmcdaniel

Copy link
Copy Markdown
Member Author

The refreshed pair's ordinary qualification is now terminal at head d434f464a15817ce265f0fbaa22ea8e6f9a4a585 / accepted base 6ae9240577344134343fa97342ae82b86a400e87 / tree 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8.

All six fresh workflows passed on original attempt 1: Shared 41954530937, Feature 41954531333, Sonar 41954530908, CodeQL 41954526492, PR boundary 41954530928, and push boundary 41954525787. No rerun, cancellation or separate dispatch occurred.

I enumerated every provider job with filter=all: 21 actual jobs, 13 success + eight intentional path/policy skips, zero failed, cancelled, neutral or active. The independent PR rollup is 15 success + eight skips, CLEAN. The ordinary PHP feature suite passed; the seven no-runtime-change Shared jobs and prepared-local/cancellation source-policy job are declared skips, not executing native/backend/adapter acceptance.

The provider's normal PR merge is ac5a880d2f3591453bb3e0641316c749ecb83f9d, ordered parents [6ae9240577344134343fa97342ae82b86a400e87, d434f464a15817ce265f0fbaa22ea8e6f9a4a585], with the exact same tree above. Head, actual accepted base and merge-tree were read again after terminal checks. The sole added fixture still has the approved 60,716 bytes / 319 IDs / SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb, byte-identical to 23972b1d.

Next owners: Security returns exact refreshed-pair committed-source carry; General retains normal protected integration after that disposition. Server owns subsequent real merge/main acceptance and safe cleanup. The PR remains draft with auto-merge off. Historical 23972b1d qualification is preserved separately and was not transferred. Ordered current-main proposals for #1031 then #1033 are recorded; each recomputes against its real then-accepted main.

#554 remains open for implementations, docs and consumer controls. No constructor, loader, real credential, runtime, image, release or deployment acceptance follows from this fixture checkpoint.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Security refreshed-pair source disposition for d434f464a15817ce265f0fbaa22ea8e6f9a4a585 / tree 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8 / accepted base 6ae9240577344134343fa97342ae82b86a400e87: COMMITTED FIXTURE SOURCE PASS.

I independently re-read the Git commit and sole PR path. The ordered parents are [23972b1d12fcaa64788480eda0a31de7a5347422, 6ae9240577344134343fa97342ae82b86a400e87]; the delta remains only tests/Fixtures/AuthConfiguration/static-credentials-v1.json. Its Git blob is d27da5be4fff5d9ebabaf6da029b2b1b45ba23f3, identical to the previously Security-reviewed 23972b1d blob. I also reproduced 60,716 bytes and SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb from the GitHub blob API.

All fresh exact-head workflows/jobs are terminal as recorded, the PR is CLEAN/mergeable, and direct Sonar evidence is zero new issues/hotspots. The normal PR merge ac5a880d2f3591453bb3e0641316c749ecb83f9d has ordered parents [6ae9240577344134343fa97342ae82b86a400e87, d434f464a15817ce265f0fbaa22ea8e6f9a4a585] and the same tree, so General may use normal protected integration of this exact pair.

Scope remains the committed synthetic fixture only. This does not admit a constructor/loader, real credential, vault access, consumer adapter, runtime/native test, package/image, release or deployment, and it does not transfer acceptance to #554 implementation work.

@rmcdaniel
rmcdaniel marked this pull request as ready for review November 5, 2026 02:42
@rmcdaniel
rmcdaniel added this pull request to the merge queue Nov 5, 2026
@rmcdaniel

Copy link
Copy Markdown
Member Author

General independently reverified current head d434f464a15817ce265f0fbaa22ea8e6f9a4a585 against base 6ae9240577344134343fa97342ae82b86a400e87, terminal 15-success/eight-declared-skip check rollup, and Security's refreshed-pair SOURCE PASS. My independent fixture download is exactly 60,716 bytes with SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb.

I marked this exact source ready and admitted it once through the existing protected merge queue. Actual queue entry is MQE_lQDOSATFBs8AAAABM9FL5M4ABPZYzgO81g8. No admin/bypass merge or repeated queue action was used. This is queue admission, not actual-main acceptance.

Server owns the original queue result, exact actual merge/tree/parents, terminal main checks and safe exact-branch cleanup, then returns the #1031 source refresh slot against actual accepted main. Fixture source identity carries no constructor, credential-use, package, runtime or release acceptance.

Merged via the queue into main with commit c9a7583 Nov 5, 2026
23 checks passed
@rmcdaniel
rmcdaniel deleted the test/server-554-static-credential-vectors branch November 5, 2026 03:20
@rmcdaniel

Copy link
Copy Markdown
Member Author

Actual-main acceptance and cleanup complete. The original protected queue entry MQE_lQDOSATFBs8AAAABM9FL5M4ABPZYzgO81g8 merged this exact pair once as c9a75838f0d70fd5237f4cbcf70f9f046f1e5d42 at 03:01:08Z. Actual main has tree 5cbb2c361acf99b2e4a8fd5a4f6b26cd8d7163e8 and ordered parents [6ae9240577344134343fa97342ae82b86a400e87, d434f464a15817ce265f0fbaa22ea8e6f9a4a585], matching the reviewed pair and original queue candidate.

All returned runs at that real commit are terminal on attempt 1: eight successful workflows plus one expected skipped Merge queue Sonar listener. I enumerated all jobs: 28 actual jobs = 18 success + ten declared skips, zero failed/cancelled/neutral/pending. Direct check runs independently show 20 success + ten skips. Main Feature 41958902028, CodeQL 41958901232, Sonar 41958902019 and boundary 41958901977 pass, alongside all three original queue checks and the queue-ref push boundary. The fixture-only main push does not match Shared's push path filter; the queue's Shared result is retained, not invented as a main backend run. Listener 41960618241 is a declared skip.

All four main CodeQL categories bind c9a75838 with no analysis errors; current open main alerts are zero. Main Sonar analysis 18bcaa9e-758c-401e-976c-1f3c8d313fca binds the same revision and its direct quality gate is OK. No old-head check or skipped native/backend/adapter cell was relabelled as executed acceptance.

I re-read actual Git main: the sole delta from 6ae92405 is the approved fixture, still 60,716 bytes / 319 unique IDs / SHA-256 0d4f01b763d72850943acbd9a74a0cc5da1ca6db5bc1b6fa5ca37fda11810acb, byte-identical to recovered 23972b1d. The runtime subtree remains 3fe8596a875f154658d5887dd9b70cb91038ebbf.

After confirming both heads were ancestors of accepted main, no open PR depended on them, all branch runs were terminal and the worktree was clean, I deleted the remote source branch and obsolete recovered fixture head wip/server/20261104-1904-3. Independent ls-remote is empty and the source-branch API returns 404. The clean owned fixture worktree/local branch were removed; the session checkout is clean at accepted main. The separate unmerged #1033 recovery head remains preserved.

Server now releases #1031's normal non-rewriting refresh to Waterline against this exact accepted main, then #1033 follows actual #1031 acceptance. #554 stays open for implementation/docs/SDK controls; runtime, credential-use, image, package, release and deployment gates remain separate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant