@compforge/harness-common 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,8 @@ import type { ClientProvider } from "./client-provider.js";
3
3
  import type { Service } from "./service.js";
4
4
  /** A source of data; accessible environments implement ClientProvider directly. */
5
5
  export interface DataSource<C extends Client> extends ClientProvider<C> {
6
+ /** Safe descriptive metadata for discovery; never credentials or part of clientKey. */
7
+ readonly description?: string;
6
8
  }
7
9
  /**
8
10
  * @spec A Service association does not own a client or change the source identity.
@@ -0,0 +1,35 @@
1
+ import type { Service } from "./service.js";
2
+ /** Stable capability identity, independent of access configuration. */
3
+ export interface Operation {
4
+ readonly name: string;
5
+ }
6
+ export interface HttpOperation extends Operation {
7
+ readonly method: string;
8
+ readonly path: string;
9
+ }
10
+ /** A real call owns its raw domain evidence. Case identity and scheduling belong to the domain. */
11
+ export interface OperationRun<O> {
12
+ readonly id: string;
13
+ readonly service: Service;
14
+ readonly operation: Operation;
15
+ readonly outcome: O;
16
+ }
17
+ /** Domain-owned grouping and lifecycle; common does not prescribe a scheduler. */
18
+ export interface Execution<O> {
19
+ readonly id: string;
20
+ operation_runs: OperationRun<O>[];
21
+ }
22
+ export interface Artifact {
23
+ readonly name: string;
24
+ readonly path: string;
25
+ }
26
+ export interface Experiment {
27
+ readonly name: string;
28
+ }
29
+ export interface ExperimentRun<E extends Execution<unknown>> {
30
+ readonly run_id: string;
31
+ readonly experiment: string;
32
+ readonly created_at: string;
33
+ executions: E[];
34
+ artifacts: Artifact[];
35
+ }
@@ -0,0 +1 @@
1
+ export {};
package/dist/index.d.ts CHANGED
@@ -10,3 +10,4 @@ export * from "./component.js";
10
10
  export * from "./host.js";
11
11
  export * from "./environment.js";
12
12
  export * from "./service.js";
13
+ export * from "./execution.js";
package/dist/index.js CHANGED
@@ -10,3 +10,4 @@ export * from "./component.js";
10
10
  export * from "./host.js";
11
11
  export * from "./environment.js";
12
12
  export * from "./service.js";
13
+ export * from "./execution.js";
@@ -1,6 +1,8 @@
1
1
  /** Logical carrier, not proof of existence. Location is data, not a discovery executor. */
2
2
  export interface Workload {
3
3
  readonly name: string;
4
+ /** Safe role/context for discovery; not identity, location or proof of availability. */
5
+ readonly description?: string;
4
6
  readonly platform: "kubernetes";
5
7
  /** Omission requires a resolver default; never means all namespaces. */
6
8
  readonly namespace?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@compforge/harness-common",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Execution-neutral client lifecycle and datasource contracts for harnesses",
5
5
  "type": "module",
6
6
  "scripts": {