Skip to content

[beta.31][P2] Reconcile artifact cleanup confirmation replay after successful cleanup #338

Closed

Description

@Proxicon

Confirmed final beta.29 finding: DEF-B29-04

At released source 4b148ebe824b3de445a12d30e95b8f5c30d53655, collect a bounded synthetic owned file, preview artifact cleanup and confirm once. The identical valid confirmation retry returns HTTP 409 artifact_already_cleaned in both tested tenants.

McpOperatorClientFileEndpoints.CleanupArtifactConfirmAsync rejects DeletedAtUtc before its explicit replay branch. Cleanup status/download correctly return HTTP 410 afterward; preserve that behavior. Exact collection replay already returns the same artifact.

Reconcile cleanup using retained authenticated artifact ownership and the consumed confirmation receipt; do not restore content, redispatch native cleanup or reveal deleted artifacts. Related existing replay work: #333 and #335.

Required behavior and regression boundary

Reconcile only an authenticated exact consumed-success confirmation within its original validity. Keep current principal/client/resource/instance/tenant/agent ownership, policy, payload, revocation and expiry checks. Return the recorded successful outcome without a second write, execution, version increment or accepted-operation audit. Changed requests, other identities/targets, arbitrary missing objects and fresh stale writes must remain denied; invalid fresh confirmations must remain unconsumed. Cover response loss, exact replay, concurrent completion, original-result fidelity and current-authority denial in the existing focused owning-layer tests.

The final owner evidence is private. Use synthetic fixtures and identifiers in code, tests, issue discussions and release notes. Source delivery and publication do not close owner production acceptance in #294/#305. Reuse the existing generic CI and publication workflows.

Activity

  1. changed the title [-][beta.30][P2] Reconcile artifact cleanup confirmation replay after successful cleanup[/-] [+][beta.31][P2] Reconcile artifact cleanup confirmation replay after successful cleanup[/+] on Oct 19, 2026
  2. Proxicon commented on Oct 19, 2026

    @Proxicon
    ContributorAuthor

    Delivered through merged PR #340 at f89593ccef6fa7385779baf1ba18328426218c07 in v0.1.1-beta.31.

    An exact successful artifact-cleanup confirmation now returns its retained result after cleanup, without another cleanup or accepted-operation effect. Current ownership, policy, confirmation binding and original expiry remain enforced. Cleaned artifact status/download continue to return HTTP 410; cleanup replay restores no content or ordinary deleted-artifact visibility. Existing owning-layer regressions cover successful replay and denied malformed, mismatched or unauthorized requests.

    Corrected PR validation and merged-main validation each passed 4,973 tests (4,352 Core + 36 API + 585 Components), with zero failures/skips; complete runs took 11m54s and 16m57s. These are separate executions of the same suites.

    Historical tag/publication evidence: tag build attempt 1 failed one Core case (4,351 passed, one failed, zero skipped); API and Components did not execute. The recorded mechanism review supports a pre-existing TestServer/gRPC request-flush race, and the failed execution remains retained. Publication attempt 1 stopped on that prerequisite before registry writes or public asset uploads; it produced no publication journal or release asset. The one documented failed-jobs recovery on the unchanged tagged source completed successfully as build attempt 2, followed by successful publisher attempt 2. No source, test, assertion or workflow gate was changed for this recovery. The 168 passing release contract tests from build attempt 1 remain retained successful evidence.

    Tag build: attempt 2 succeeded with all eight required jobs; fresh source validation passed 4,973 tests (4,352 Core + 36 API + 585 Components), zero failed/skipped, in 17m34s. All four unsafe-frame cases passed the original assertions; Windows MCP passed 15 bounded synthetic checks; three native Client archive integrity checks and all five package provenance-upload steps passed. The 168 contract tests are the retained successful attempt 1 execution. Publication: attempt 2 succeeded with all seven required jobs in 7m29s; five anonymous digest pulls/rescans, all 15 public assets and 14 public-download checksum matches passed. Independent distribution verification: 2026-10-19T12:37:08.811855+00:00; 15 completed-publication files matched public asset metadata, with 14 checksum entries, 13 artifact hashes, exact source and authenticated build attempt 2, all five Compose image pins, and the published Windows MCP ZIP matching its 15-check smoke receipt. Public downloads and anonymous image pulls were verified by the publication workflow; the independent local check used the completed artifact and public digest metadata. Functional acceptance remains pending owner testing. publication.json and SHA256SUMS bind the delivered artifacts.

    Closing the release-delivery repair. Fresh deployed replay and current-authority acceptance remain open in #305/#294, with #282 retaining production readiness. Publication supplies no owner deployment, native workflow or endurance result.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions