@skill-harness/adapters 0.13.0 → 0.14.0

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.
@@ -28,7 +28,7 @@ export declare function captureArchivedWorkCandidates(root: string, manifestId:
28
28
  acceptance: string;
29
29
  };
30
30
  /** Derive binding/coverage/acceptance fields from the real pinned P01 projection, not caller replacements. */
31
- export declare function captureArchivedWorkSignals(root: string, manifestId: string, context: WorkFrozen<WorkProjectionContext>, facts: WorkSignalFacts): {
31
+ export declare function captureArchivedWorkSignals(root: string, manifestId: string, context: WorkFrozen<WorkProjectionContext>, suppliedFacts: WorkSignalFacts | null): {
32
32
  linkageManifestId: string;
33
33
  version: string;
34
34
  bindingProfile: string;
@@ -32,7 +32,7 @@ export function captureArchivedWorkCandidates(root, manifestId, context, options
32
32
  return { ...linkage, linkageManifestId: stored.manifestId };
33
33
  }
34
34
  /** Derive binding/coverage/acceptance fields from the real pinned P01 projection, not caller replacements. */
35
- export function captureArchivedWorkSignals(root, manifestId, context, facts) {
35
+ export function captureArchivedWorkSignals(root, manifestId, context, suppliedFacts) {
36
36
  const read = readArchivedWork(root, manifestId, context);
37
37
  if (read.state !== "available" || read.projection.errors.length || read.projection.scopeState !== "valid" || !read.projection.selectedSnapshot || !read.projection.runtime)
38
38
  throw new Error("work source/selection incomplete; cannot capture signals");
@@ -44,6 +44,11 @@ export function captureArchivedWorkSignals(root, manifestId, context, facts) {
44
44
  coverage: [o.artifactCoverage.state, o.evidenceCoverage.state].includes("conflicted") ? "conflicted"
45
45
  : [o.artifactCoverage.state, o.evidenceCoverage.state].includes("unavailable") ? "unavailable"
46
46
  : o.artifactCoverage.state === "available" && o.evidenceCoverage.state === "available" && o.problems.every(p => p.code === "TRUSTED_REJECTION") ? "available" : "unknown" })) };
47
+ // Null means derive only facts the retained projection itself establishes. Empty arrays are explicit:
48
+ // runtime failure is not an objective violation, and absence cannot invent a deadline, expected wait,
49
+ // prior acceptance or authority. Coverage candidates still follow from the projected obligation.
50
+ const facts = suppliedFacts ?? { scopeDigest: snapshotDigest, version: "observed-work-v1", population: "retained-work",
51
+ expectedWaits: [], checkpoints: [], violations: [], priorAccepted: [] };
47
52
  // All four digests here are REVISION identities, not artifact content digests.
48
53
  // Duplicate obligation bindings cannot be collapsed by this input profile; its validator refuses them.
49
54
  const observation = retainWorkSignalObservation(root, snapshot, facts);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skill-harness/adapters",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "skill-harness harness adapters — pi runner + claude-code judge routing (internal API)",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -40,7 +40,7 @@
40
40
  "prepack": "node ../../scripts/release-pack.mjs --guard"
41
41
  },
42
42
  "dependencies": {
43
- "@skill-harness/core": "0.13.0",
43
+ "@skill-harness/core": "0.14.0",
44
44
  "typebox": "1.3.4"
45
45
  }
46
46
  }