@codesoul-co/hypha-core / modules/execution-output/completion
- Package index:
@codesoul-co/hypha-core - Source:
packages/core/src/modules/execution-output/completion.ts - Exports: 10
Using this module
Use the Completion module for executing runtime behavior at this boundary. It exports 2 classes, 1 function, 7 interfaces.
Import from the package entrypoint
import {
DurableExecutionCompletionCoordinator,
DurableExecutionTerminalEventCoordinator,
createDurableExecutionTerminalEvent,
} from '@codesoul-co/hypha-core';
import type {
DurableExecutionCompletionCoordinatorOptions,
DurableExecutionCompletionRequest,
DurableExecutionCompletionResult,
DurableExecutionCompletionWorker,
DurableExecutionTerminalEventCommitPort,
DurableExecutionTerminalEventCommitRequest,
DurableExecutionTerminalEventCoordinatorOptions,
} from '@codesoul-co/hypha-core';Usage patterns
- Use the 7 type/interface exports as static contracts in application code, adapters, or tests. Import them with
import type; they do not exist at runtime. - The module exposes 2 classes as constructable runtime implementations. Each symbol entry lists its constructor and public methods.
- The module exposes 1 function as direct operation entrypoints. Every overload, required/optional parameter, and return type is documented below.
Public exports
| Symbol | Kind | Signature | Description |
|---|---|---|---|
DurableExecutionCompletionCoordinator | class | new DurableExecutionCompletionCoordinator(options: DurableExecutionCompletionCoordinatorOptions): DurableExecutionCompletionCoordinator | Orders the Execution-owned durable completion barriers. Provider execution is deliberately absent: retries begin from the persisted terminal receipt, repeat idempotent Artifact collection/finalization, and only then attempt the fenced terminal record CAS. |
DurableExecutionTerminalEventCoordinator | class | new DurableExecutionTerminalEventCoordinator(options: DurableExecutionTerminalEventCoordinatorOptions): DurableExecutionTerminalEventCoordinator | Appends the Execution terminal event only after a durable terminal record exists. Provider execution and Artifact collection are deliberately absent, so recovery can retry a failed append without repeating either side effect. |
createDurableExecutionTerminalEvent | function | createDurableExecutionTerminalEvent(recordValue: ExecutionRecord): ExecutionFrameworkEvent | Create Durable Execution Terminal Event function with 1 public call signature; parameters and return types are listed below. |
DurableExecutionCompletionCoordinatorOptions | interface | interface DurableExecutionCompletionCoordinatorOptions | Durable Execution Completion Coordinator Options interface with 3 public fields or methods. |
DurableExecutionCompletionRequest | interface | interface DurableExecutionCompletionRequest | Durable Execution Completion Request interface with 4 public fields or methods. |
DurableExecutionCompletionResult | interface | interface DurableExecutionCompletionResult | Durable Execution Completion Result interface with 2 public fields or methods. |
DurableExecutionCompletionWorker | interface | interface DurableExecutionCompletionWorker | Durable Execution Completion Worker interface with 3 public fields or methods. |
DurableExecutionTerminalEventCommitPort | interface | interface DurableExecutionTerminalEventCommitPort | Runtime implements this port with its durable Event Store. Repeated calls with the same idempotency key and event must resolve to the same append. |
DurableExecutionTerminalEventCommitRequest | interface | interface DurableExecutionTerminalEventCommitRequest | Durable Execution Terminal Event Commit Request interface with 3 public fields or methods. |
DurableExecutionTerminalEventCoordinatorOptions | interface | interface DurableExecutionTerminalEventCoordinatorOptions | Durable Execution Terminal Event Coordinator Options interface with 1 public fields or methods. |
DurableExecutionCompletionCoordinator
Orders the Execution-owned durable completion barriers. Provider execution is deliberately absent: retries begin from the persisted terminal receipt, repeat idempotent Artifact collection/finalization, and only then attempt the fenced terminal record CAS.
- Kind: class
- Import:
import { DurableExecutionCompletionCoordinator } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export declare class DurableExecutionCompletionCoordinator {
constructor(options: DurableExecutionCompletionCoordinatorOptions);
complete(request: DurableExecutionCompletionRequest): Promise<DurableExecutionCompletionResult>;
}Public members
| Member | Kind | Signature | Description |
|---|---|---|---|
complete | method | complete(request: DurableExecutionCompletionRequest): Promise<DurableExecutionCompletionResult> | Public method; parameters and return type are shown in the signature. |
constructor | constructor | (options: DurableExecutionCompletionCoordinatorOptions): DurableExecutionCompletionCoordinator | Creates an instance of this class. |
DurableExecutionTerminalEventCoordinator
Appends the Execution terminal event only after a durable terminal record exists. Provider execution and Artifact collection are deliberately absent, so recovery can retry a failed append without repeating either side effect.
- Kind: class
- Import:
import { DurableExecutionTerminalEventCoordinator } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export declare class DurableExecutionTerminalEventCoordinator {
constructor(options: DurableExecutionTerminalEventCoordinatorOptions);
append(recordValue: ExecutionRecord): Promise<ExecutionFrameworkEvent>;
}Public members
| Member | Kind | Signature | Description |
|---|---|---|---|
append | method | append(recordValue: ExecutionRecord): Promise<ExecutionFrameworkEvent> | Public method; parameters and return type are shown in the signature. |
constructor | constructor | (options: DurableExecutionTerminalEventCoordinatorOptions): DurableExecutionTerminalEventCoordinator | Creates an instance of this class. |
createDurableExecutionTerminalEvent
Create Durable Execution Terminal Event function with 1 public call signature; parameters and return types are listed below.
- Kind: function
- Import:
import { createDurableExecutionTerminalEvent } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export declare function createDurableExecutionTerminalEvent(recordValue: ExecutionRecord): ExecutionFrameworkEvent;Call signature
createDurableExecutionTerminalEvent(recordValue: ExecutionRecord): ExecutionFrameworkEventParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
recordValue | ExecutionRecord | Yes | Required parameter; accepted values are defined by the type column. |
Returns
- Type:
ExecutionFrameworkEvent - Description: The return contract is defined by the type shown above.
DurableExecutionCompletionCoordinatorOptions
Durable Execution Completion Coordinator Options interface with 3 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionCompletionCoordinatorOptions } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionCompletionCoordinatorOptions {
worker: DurableExecutionCompletionWorker;
planner: ExecutionOutputPlanner;
collector: ExecutionOutputCollector;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
collector | property | collector: ExecutionOutputCollector | Public property; its type, readonly modifier and optionality are shown in the signature. |
planner | property | planner: ExecutionOutputPlanner | Public property; its type, readonly modifier and optionality are shown in the signature. |
worker | property | worker: DurableExecutionCompletionWorker | Public property; its type, readonly modifier and optionality are shown in the signature. |
DurableExecutionCompletionRequest
Durable Execution Completion Request interface with 4 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionCompletionRequest } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionCompletionRequest {
record: ExecutionRecord;
result: CommandExecutionResult;
outputPolicy: ExecutionOutputCollectionPolicy;
outputContext: ExecutionOutputCollectionContext;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
outputContext | property | outputContext: ExecutionOutputCollectionContext | Public property; its type, readonly modifier and optionality are shown in the signature. |
outputPolicy | property | outputPolicy: ExecutionOutputCollectionPolicy | Public property; its type, readonly modifier and optionality are shown in the signature. |
record | property | record: ExecutionRecord | Public property; its type, readonly modifier and optionality are shown in the signature. |
result | property | result: CommandExecutionResult | Public property; its type, readonly modifier and optionality are shown in the signature. |
DurableExecutionCompletionResult
Durable Execution Completion Result interface with 2 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionCompletionResult } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionCompletionResult {
record: ExecutionRecord;
output: ExecutionOutputCollectionResult;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
output | property | output: ExecutionOutputCollectionResult | Public property; its type, readonly modifier and optionality are shown in the signature. |
record | property | record: ExecutionRecord | Public property; its type, readonly modifier and optionality are shown in the signature. |
DurableExecutionCompletionWorker
Durable Execution Completion Worker interface with 3 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionCompletionWorker } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionCompletionWorker {
renew(record: ExecutionRecord): Promise<ExecutionRecord>;
checkpointTerminalReceipt(record: ExecutionRecord, receipt: ExecutionReceipt): Promise<ExecutionRecord>;
commit(record: ExecutionRecord, result: CommandExecutionResult): Promise<ExecutionRecord>;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
checkpointTerminalReceipt | method | checkpointTerminalReceipt(record: ExecutionRecord, receipt: ExecutionReceipt): Promise<ExecutionRecord> | Public method; parameters and return type are shown in the signature. |
commit | method | commit(record: ExecutionRecord, result: CommandExecutionResult): Promise<ExecutionRecord> | Public method; parameters and return type are shown in the signature. |
renew | method | renew(record: ExecutionRecord): Promise<ExecutionRecord> | Public method; parameters and return type are shown in the signature. |
DurableExecutionTerminalEventCommitPort
Runtime implements this port with its durable Event Store. Repeated calls with the same idempotency key and event must resolve to the same append.
- Kind: interface
- Import:
import type { DurableExecutionTerminalEventCommitPort } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionTerminalEventCommitPort {
append(request: DurableExecutionTerminalEventCommitRequest): Promise<unknown>;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
append | method | append(request: DurableExecutionTerminalEventCommitRequest): Promise<unknown> | Public method; parameters and return type are shown in the signature. |
DurableExecutionTerminalEventCommitRequest
Durable Execution Terminal Event Commit Request interface with 3 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionTerminalEventCommitRequest } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionTerminalEventCommitRequest {
event: ExecutionFrameworkEvent;
executionRevision: number;
idempotencyKey: string;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
event | property | event: ExecutionFrameworkEvent | Public property; its type, readonly modifier and optionality are shown in the signature. |
executionRevision | property | executionRevision: number | Public property; its type, readonly modifier and optionality are shown in the signature. |
idempotencyKey | property | idempotencyKey: string | Public property; its type, readonly modifier and optionality are shown in the signature. |
DurableExecutionTerminalEventCoordinatorOptions
Durable Execution Terminal Event Coordinator Options interface with 1 public fields or methods.
- Kind: interface
- Import:
import type { DurableExecutionTerminalEventCoordinatorOptions } from '@codesoul-co/hypha-core'; - Source module:
modules/execution-output/completion
Declaration
export interface DurableExecutionTerminalEventCoordinatorOptions {
events: DurableExecutionTerminalEventCommitPort;
}Contract members
| Member | Kind | Signature | Description |
|---|---|---|---|
events | property | events: DurableExecutionTerminalEventCommitPort | Public property; its type, readonly modifier and optionality are shown in the signature. |
