AppSurface Search
API Reference

Global

Type

TailwindCacheTestHostMarker

Source

Locates the non-packable cache-behavior child process from Tailwind tests.

Type

Program

Source

Process entry point for the AppSurface CLI executable.

Remarks

ProgramEntryPoint owns the command runtime seam and is covered by tests; this type only adapts the .NET process entry point to that seam.

Type

ExecutionCheckpointHost

Source

Runs one existing opted-in Work to a named child-process crash boundary.

Method

CreateRegistration

DurableWorkRegistration CreateRegistration(DurableProviderSafety safety, NpgsqlDataSource dataSource)

Creates the exact registration shared by the parent fixture and fresh child process.

Parameters

  • safety
    Persisted provider-safety class under proof.
  • dataSource
    Isolated PostgreSQL database used only by the fake provider if invoked.

Returns

A registration whose preparation is side-effect free.

Method

RunAsync

Task RunAsync(string[] args)

Runs the execution-checkpoint child protocol.

Parameters

  • args
    Runtime epoch, store id, safety, scope id, Work id, and checkpoint name.
Method

RecordProviderMutationAsync

ValueTask RecordProviderMutationAsync(NpgsqlDataSource dataSource, string providerKey, string activityId, int attemptNumber)

Records one committed fake-provider invocation and one idempotent logical mutation.

Parameters

  • dataSource
    The isolated PostgreSQL integration-test database.
  • providerKey
    Stable provider operation key.
  • activityId
    Stable durable activity identity.
  • attemptNumber
    Current provider-authoritative attempt.
Type

ExecutionCheckpointReport

Source

Credential-free child checkpoint facts consumed by the parent integration test.

Type

ReferenceWorkloadHostMarker

Source

Locates the reference child-process assembly from integration tests.

Type

ReferenceCheckpoint

Source

Reports the exact durable checkpoint reached before the parent terminates the child.

Parameters

  • Phase
    Named protocol phase.
  • ScopeId
    Owning scope identity.
  • WorkId
    Accepted Work identity.
  • ActivityId
    Immutable provider activity identity.
  • AttemptNumber
    Provider attempt number.
  • ObservedAtUtc
    Authoritative permit timestamp.
  • Events
    Ordered application and transaction checkpoints before process loss.
Type

ReferenceCheckpointEvent

Source

Reports one privacy-safe operation checkpoint reached by the crash helper.

Parameters

  • Operation
    Stable operation name.
  • Outcome
    Observed safe outcome.
  • TransactionBoundary
    Database transaction ownership or absence.
  • ElapsedMilliseconds
    Monotonic elapsed time since helper startup.
Type

FlowCrashCheckpoint

Source

Reports the committed Flow timer boundary reached before forced process termination.

Type

FlowTraceEvidence

Source

Reports test-only identifiers necessary to compare a crash-side Activity with its restarted continuation.

Type

FlowTraceLinkEvidence

Source

Reports one causal link on the test-only telemetry evidence record.

Type

DisposableProofController

Source
Method

VerifyLaneObservationFailureCleanupAsync

Task VerifyLaneObservationFailureCleanupAsync(string adminCs, string ownerCs, LaneProofRolePair[] pairs, Guid storeId, Guid epoch, string receiptPath, bool throwingCancellationCallback = false)

Runs the disposable regression for observation failure after real lane launch. Requires an initialized, reconciled fixture with no other service-role sessions; owns an admin table-lock transaction and the negative probe's guard and children. The lock keeps provider Work execution pending until cancellation, making the task-drain assertions deterministic. An optional throwing cancellation callback also verifies that a callback exception cannot skip either drain. Success requires both tasks terminal before releasing that lock, absent lane/guard sessions and fence, and no receipt.

Remarks

This in-assembly test seam consumes synthetic fixture credentials only. It never returns activation evidence or reconciles roles. Cleanup timeouts remain failures.

Method

CleanupGuardedScenarioAsync

Task CleanupGuardedScenarioAsync(FixtureActivationLease? activationLease, CancellationTokenSource guardLost, Task monitorTask, CancellationTokenSource monitorStop, NpgsqlConnection guard, SemaphoreSlim guardOperationGate, bool sharedGuardReleased, QueuedWriterProbe? writerProbe, QueuedWriterAttempt? writerAttempt)

Drains the activation lease, monitor, guard, and queued writer even when an earlier cleanup fails.

Remarks

Each stage runs in its own finally block with an independent deadline. A terminal activation drain fault remains a proof failure; it cannot bypass guard release or leave the exclusive writer unobserved. The writer attempt records only completed release and writer operations, never attempted cleanup.

Method

VerifyActivationCleanupFailureAsync

Task VerifyActivationCleanupFailureAsync(string adminCs, string ownerCs, LaneProofRolePair pair, Guid storeId, Guid epoch, string receiptPath)

Proves that a terminal real-host drain fault still drains the monitor and releases a queued writer.

Remarks

Uses the same cleanup path as every guarded scenario. The internal lifecycle hook throws only after the real host, persisted drain marker, closed admission, and owned-session release have been verified. Disposal then re-awaits that same faulted task. No successful receipt is permitted, and store identity stays fixed.

Type

FixtureActivationEvidence

Source

Evidence for a disposable candidate-package worker, including its checked graceful shutdown.

Type

FixtureActivationProof

Source

Activates the public PostgreSQL worker host on an already initialized disposable fixture.

Remarks

The controller must retain its continuously monitored shared guard through activation and drain, and pass its guard-linked token here. This helper never migrates or changes the epoch. Start returns only after the production host has admitted a worker and committed one uniquely scoped Work result. Keep the lease alive until the guarded callback finishes, then await DrainAsync with an independent cleanup token before accepting evidence. Guard loss stops the host and makes the lease ineligible for successful evidence even if drain works.

Method

StartAsync

Task<FixtureActivationLease> StartAsync(string ownerConnectionString, LaneProofRolePair runtimePair, Guid storeId, Guid epoch, CancellationToken guardLinkedCancellationToken, FixtureActivationCheckpointHook? testHook)

Starts the same fixture with a deterministic lifecycle observer for tests; production callers use the five-argument overload.

Type

FixtureActivationLease

Source

Owns the actual host and all of its nonpooled connections until checked drain and disposal.

Method

DrainAsync

Task<FixtureActivationEvidence> DrainAsync(CancellationToken independentCleanupToken)

Stops the real host, checks durable drain and closed admission, and releases owned sessions.

Remarks

Cleanup has a fresh 15-second bound independent of guard loss. The supplied token bounds the caller's wait; it never cancels the owned cleanup task. A failed persisted marker, unfinished host, identity drift, or guard loss throws instead of producing successful evidence. Repeated calls share the same terminal cleanup task.

Property

Evidence

FixtureActivationEvidence Evidence { get; } Source

Gets evidence only after successful activation, checked drain, and physical session cleanup.

Type

AppSurfacePublishPreflightTask

Source

Checks one publish phase for the repository's Linux MVC pilot.

Remarks

The opt-in MSBuild import owns this task; it is not a package API.

Property

Phase

string Phase { get; set; } Source

The required phase: paths before copying, or permissions after publish.

Property

RepositoryDirectory

string RepositoryDirectory { get; set; } Source

Root used to display safe repository-relative source names.

Property

ProjectDirectory

string ProjectDirectory { get; set; } Source

Fallback root for source names in a separate fixture.

Property

PublishDirectory

string PublishDirectory { get; set; } Source

Fresh SDK publish output root for the permissions phase.

Property

OrdinaryFiles

ITaskItem[] OrdinaryFiles { get; set; } Source

Prepared ordinary copy items carrying RelativePath metadata.

Property

StaticFiles

ITaskItem[] StaticFiles { get; set; } Source

Prepared static asset copy items carrying TargetPath metadata.

Enum

ExecutionCheckpoint

Source

Process-loss checkpoints in execution order.

Enum

FixtureActivationCheckpoint

Source

Deterministic lifecycle checkpoints exposed only to in-assembly tests.