@lannguyensi/harness 0.52.0 → 0.54.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.
- package/CHANGELOG.md +82 -0
- package/dist/cli/delegate/index.d.ts +15 -2
- package/dist/cli/delegate/index.js +128 -4
- package/dist/cli/delegate/index.js.map +1 -1
- package/dist/cli/doctor/bypass-without-auto-approve.d.ts +38 -0
- package/dist/cli/doctor/bypass-without-auto-approve.js +95 -0
- package/dist/cli/doctor/bypass-without-auto-approve.js.map +1 -0
- package/dist/cli/doctor/format.js +7 -0
- package/dist/cli/doctor/format.js.map +1 -1
- package/dist/cli/doctor/index.js +17 -0
- package/dist/cli/doctor/index.js.map +1 -1
- package/dist/cli/doctor/types.d.ts +11 -0
- package/dist/cli/doctor/types.js.map +1 -1
- package/dist/cli/doctor/ug-auto-approvals.js +18 -43
- package/dist/cli/doctor/ug-auto-approvals.js.map +1 -1
- package/dist/cli/dry-run.js +32 -1
- package/dist/cli/dry-run.js.map +1 -1
- package/dist/cli/gc/index.d.ts +13 -2
- package/dist/cli/gc/index.js +203 -1
- package/dist/cli/gc/index.js.map +1 -1
- package/dist/cli/index.js +57 -11
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/composer.js +9 -0
- package/dist/cli/init/composer.js.map +1 -1
- package/dist/cli/init/profiles.d.ts +2 -2
- package/dist/cli/init/profiles.js +100 -8
- package/dist/cli/init/profiles.js.map +1 -1
- package/dist/cli/init/templates.d.ts +1 -1
- package/dist/cli/init/templates.js +174 -3
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/pack/hook-pre-tool-use.js +219 -115
- package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
- package/dist/cli/pack/index.d.ts +1 -0
- package/dist/cli/pack/index.js +1 -0
- package/dist/cli/pack/index.js.map +1 -1
- package/dist/cli/pack/upgrade.d.ts +32 -0
- package/dist/cli/pack/upgrade.js +273 -0
- package/dist/cli/pack/upgrade.js.map +1 -0
- package/dist/cli/record/index.d.ts +8 -0
- package/dist/cli/record/index.js +55 -7
- package/dist/cli/record/index.js.map +1 -1
- package/dist/cli/validate/checks.js +61 -9
- package/dist/cli/validate/checks.js.map +1 -1
- package/dist/io/extract.d.ts +29 -0
- package/dist/io/extract.js +36 -0
- package/dist/io/extract.js.map +1 -1
- package/dist/io/read-json-dir-entries.d.ts +36 -0
- package/dist/io/read-json-dir-entries.js +38 -0
- package/dist/io/read-json-dir-entries.js.map +1 -0
- package/dist/policies/index.d.ts +1 -1
- package/dist/policies/index.js +1 -1
- package/dist/policies/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.d.ts +35 -0
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js +86 -0
- package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js.map +1 -0
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.d.ts +51 -0
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +55 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +3 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js +18 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.d.ts +71 -0
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js +175 -0
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js.map +1 -0
- package/dist/runtime/destructive-shell-floor.d.ts +19 -0
- package/dist/runtime/destructive-shell-floor.js +597 -0
- package/dist/runtime/destructive-shell-floor.js.map +1 -0
- package/dist/runtime/git-context.js +7 -1
- package/dist/runtime/git-context.js.map +1 -1
- package/dist/runtime/intercept.d.ts +10 -7
- package/dist/runtime/intercept.js +108 -9
- package/dist/runtime/intercept.js.map +1 -1
- package/dist/runtime/read-only-bash.d.ts +21 -0
- package/dist/runtime/read-only-bash.js +484 -0
- package/dist/runtime/read-only-bash.js.map +1 -1
- package/dist/runtime/risk-classifier.js +68 -13
- package/dist/runtime/risk-classifier.js.map +1 -1
- package/dist/runtime/when-eval.d.ts +18 -5
- package/dist/runtime/when-eval.js +64 -11
- package/dist/runtime/when-eval.js.map +1 -1
- package/dist/runtime/workflow-policies.d.ts +43 -1
- package/dist/runtime/workflow-policies.js +158 -1
- package/dist/runtime/workflow-policies.js.map +1 -1
- package/dist/schema/extract.d.ts +4 -0
- package/dist/schema/extract.js +64 -1
- package/dist/schema/extract.js.map +1 -1
- package/dist/schema/index.d.ts +13 -0
- package/dist/schema/policies.d.ts +19 -0
- package/dist/schema/policies.js +17 -1
- package/dist/schema/policies.js.map +1 -1
- package/package.json +1 -1
|
@@ -36,14 +36,29 @@
|
|
|
36
36
|
// failed capture, through the same `persistStdinReport` the operator
|
|
37
37
|
// path uses. That log is what the block envelope's malformed-sections
|
|
38
38
|
// notice is rendered from, so the per-capture write is deliberate.
|
|
39
|
+
//
|
|
40
|
+
// FOLLOW-UP (agent-tasks 49d1ee41) adds the second report channel the
|
|
41
|
+
// ADR's "Report capture under `-p`" fallback describes: a report-bound
|
|
42
|
+
// delegation (one `harness delegate --report <path>` minted) is verified
|
|
43
|
+
// against the CONVENTIONAL launcher-report path
|
|
44
|
+
// (`delegationReportPathFor`, a plain function of the child session id,
|
|
45
|
+
// never a value read from the payload), and on success that file's
|
|
46
|
+
// content is persisted the same way a transcript hit is: adopted once
|
|
47
|
+
// (this time keyed by the report's CONTENT hash, in the same
|
|
48
|
+
// `.delegation-adoptions/` ledger, so the same launcher report cannot
|
|
49
|
+
// mint a second marker once the first one expires), persisted `pending`
|
|
50
|
+
// via `persistStdinReport`, and left for the auto path below to consume.
|
|
51
|
+
// The transcript scan never runs for a report-bound delegation: the two
|
|
52
|
+
// channels are mutually exclusive per delegation, decided by whether
|
|
53
|
+
// `verifyDelegation` returns a `reportPathHash`.
|
|
39
54
|
import { appendFileSync, existsSync, lstatSync, mkdirSync } from "node:fs";
|
|
40
55
|
import * as path from "node:path";
|
|
41
56
|
import { readRegularFileRejectingSymlink } from "../../io/read-regular-file.js";
|
|
42
57
|
import { queryLedgerByTag, } from "../../policies/index.js";
|
|
43
58
|
import { renderProducers } from "../../policies/producers.js";
|
|
44
|
-
import { CLAUDE_CODE_HARNESS, checkOperatorApprovalMarkers, checkPersistedReport, defaultReportsDir, delegationMarkerPathFor, harnessAllowed, listPersistedReports, matchLedgerEntries, parseAutoApprove, readActiveClaim, selectNewestStrictSessionReport, verifyDelegation, } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
|
|
59
|
+
import { ADOPTION_LEDGER_DIRNAME, CLAUDE_CODE_HARNESS, checkOperatorApprovalMarkers, checkPersistedReport, defaultReportsDir, delegationMarkerPathFor, delegationReportPathFor, harnessAllowed, listPersistedReports, matchLedgerEntries, parseAutoApprove, readActiveClaim, recordPermissionModeObservation, selectNewestStrictSessionReport, verifyDelegation, } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
|
|
45
60
|
import { resolveMode, toPackageMode, } from "../../policy-packs/builtin/understanding-before-execution.js";
|
|
46
|
-
import { signingKeyExists } from "../../runtime/approval-signing.js";
|
|
61
|
+
import { sha256Hex, signingKeyExists } from "../../runtime/approval-signing.js";
|
|
47
62
|
import { findLatestParseError, renderMalformedSectionsNotice } from "../approve/understanding.js";
|
|
48
63
|
import { persistStdinReport } from "../approve/stdin-report.js";
|
|
49
64
|
import { attemptAutoApproval, AUTO_APPROVE_LEDGER_SOURCE } from "./auto-approve-path.js";
|
|
@@ -76,26 +91,14 @@ export const DELEGATION_REPORT_RETRY_INSTRUCTION = "Emit or re-emit your Underst
|
|
|
76
91
|
function findGroundingMcp(manifest) {
|
|
77
92
|
return manifest.tools.mcp.find((m) => m.name === "grounding-mcp") ?? null;
|
|
78
93
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
* one. Kept OUT of `.delegations/` for two reasons: `harness doctor`'s
|
|
88
|
-
* delegations metric counts every regular file directly under
|
|
89
|
-
* `.delegations/` (a ledger file nested in there, flat or not, would be
|
|
90
|
-
* reported as an extra, unreadable delegation), and no reserved
|
|
91
|
-
* subdirectory NAME sits under `.delegations/` for a child session id to
|
|
92
|
-
* collide with, since the ledger lives at its own sibling path instead of
|
|
93
|
-
* inside `.delegations/` at all.
|
|
94
|
-
*
|
|
95
|
-
* One id per line. Ids come from the scan (`entryId`), which guarantees
|
|
96
|
-
* they carry no line break.
|
|
97
|
-
*/
|
|
98
|
-
const ADOPTION_LEDGER_DIRNAME = ".delegation-adoptions";
|
|
94
|
+
// `ADOPTION_LEDGER_DIRNAME` (the once-per-session ADOPTED-ENTRY ledger
|
|
95
|
+
// dirname, `.delegation-adoptions/`, a SIBLING of `.delegations/`, never
|
|
96
|
+
// inside it or `.approvals/`) now lives in delegation-markers.ts, next to
|
|
97
|
+
// `DELEGATION_MARKER_DIRNAME`: `harness gc`'s delegation sweep
|
|
98
|
+
// (task 3ece079d) needs the same constant to find orphaned ledgers, and a
|
|
99
|
+
// reader that never writes one has no business importing this CLI verb
|
|
100
|
+
// module for it. One id per line; ids come from the scan (`entryId`),
|
|
101
|
+
// which guarantees they carry no line break.
|
|
99
102
|
function adoptedEntriesPathFor(generatedDir, childSessionId) {
|
|
100
103
|
return path.join(generatedDir, ADOPTION_LEDGER_DIRNAME, childSessionId);
|
|
101
104
|
}
|
|
@@ -731,6 +734,14 @@ export async function runPackHookPreToolUseCli(opts = {}) {
|
|
|
731
734
|
stderr.write("harness pack hook: delegation present but signing key absent; not verified\n");
|
|
732
735
|
}
|
|
733
736
|
else {
|
|
737
|
+
// The conventional launcher-report path (a plain function of
|
|
738
|
+
// `childSessionId`, never a value read from the payload or from
|
|
739
|
+
// the delegation file itself): offered unconditionally, exactly
|
|
740
|
+
// as `verifyDelegation` expects. It only affects the outcome when
|
|
741
|
+
// the delegation actually binds a `report=` segment; for every
|
|
742
|
+
// other delegation it is read and then never consulted (see the
|
|
743
|
+
// `reportPathHash !== undefined` guard inside `verifyDelegation`).
|
|
744
|
+
const launcherReportPath = delegationReportPathFor(generatedDir, childSessionId);
|
|
734
745
|
const verified = verifyDelegation({
|
|
735
746
|
generatedDir,
|
|
736
747
|
childSessionId,
|
|
@@ -747,31 +758,22 @@ export async function runPackHookPreToolUseCli(opts = {}) {
|
|
|
747
758
|
// so there is no resolved value to reuse without widening that
|
|
748
759
|
// shared runtime's return shape for one caller.
|
|
749
760
|
taskId: readActiveClaim(generatedDir),
|
|
761
|
+
launcherReportPath,
|
|
750
762
|
});
|
|
751
763
|
if (!verified.ok) {
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
// wording `verified.detail` carries: the fallback shape is
|
|
759
|
-
// issued and signature-verifiable by `harness delegate`, it
|
|
760
|
-
// is just not yet consumed by THIS hook (a named
|
|
761
|
-
// follow-up); the transcript scan below is the only report
|
|
762
|
-
// channel this hook acts on today.
|
|
763
|
-
stderr.write(`harness pack hook: delegation for ${childSessionId} refused: it binds a launcher-supplied report file (the --report fallback shape), which is issued and verifiable but not yet consumed by the child hook (a named follow-up); the transcript scan is the only report channel this hook acts on\n`);
|
|
764
|
-
}
|
|
765
|
-
else {
|
|
766
|
-
stderr.write(`harness pack hook: delegation for ${childSessionId} refused: ${verified.reason}: ${verified.detail}\n`);
|
|
767
|
-
}
|
|
764
|
+
// A missing, moved, or content-modified launcher report surfaces
|
|
765
|
+
// here through the verifier's own distinct reasons
|
|
766
|
+
// (`report_path_mismatch` / `report_content_mismatch`), same as
|
|
767
|
+
// every other refusal: no special-casing needed now that this
|
|
768
|
+
// hook actually checks the fallback shape against a file.
|
|
769
|
+
stderr.write(`harness pack hook: delegation for ${childSessionId} refused: ${verified.reason}: ${verified.detail}\n`);
|
|
768
770
|
}
|
|
769
771
|
else {
|
|
770
772
|
delegation = { parentSessionId: verified.parentSessionId };
|
|
771
773
|
// Key two: the child's own report. Already on disk and pending
|
|
772
774
|
// (the child was denied once and its report has since been
|
|
773
|
-
// captured) means there is nothing to scan for, so
|
|
774
|
-
//
|
|
775
|
+
// captured) means there is nothing to scan for, so neither
|
|
776
|
+
// channel below is read at all.
|
|
775
777
|
// `childSessionId`, not the outer `sessionId`: this whole block
|
|
776
778
|
// decides the PAYLOAD's session, and the two only coincide
|
|
777
779
|
// because the env fallback never wins on a path that carries a
|
|
@@ -779,98 +781,200 @@ export async function runPackHookPreToolUseCli(opts = {}) {
|
|
|
779
781
|
// branch looks for bound to the same session the delegation,
|
|
780
782
|
// the scan and the adoption ledger are all keyed by.
|
|
781
783
|
const existing = selectNewestStrictSessionReport(listPersistedReports(reportsDir), childSessionId);
|
|
784
|
+
// A report-bound delegation (the `--report` fallback shape,
|
|
785
|
+
// `verified.reportPathHash !== undefined`) never falls through
|
|
786
|
+
// to the transcript scan: the launcher already supplied and
|
|
787
|
+
// proved (via the verify call above) the report the child would
|
|
788
|
+
// otherwise have to emit into its own transcript, so scanning
|
|
789
|
+
// for a second copy would be pointless and would let a
|
|
790
|
+
// report-bound delegation ALSO be satisfied by whatever the
|
|
791
|
+
// child happens to write, which defeats the point of the
|
|
792
|
+
// launcher fixing the content.
|
|
782
793
|
if (existing === null || existing.approvalStatus !== "pending") {
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
const recorded = recordAdoptedEntry(adoptedPath, scan.entryId);
|
|
823
|
-
if (!recorded.ok) {
|
|
824
|
-
stderr.write(`harness pack hook: could not record transcript entry ${scan.entryId} as adopted for session ${childSessionId} (${recorded.detail}); nothing was persisted\n`);
|
|
794
|
+
if (verified.reportPathHash !== undefined) {
|
|
795
|
+
// The bytes `verifyDelegation` already proved present,
|
|
796
|
+
// path-matched, and content-matched against the bound
|
|
797
|
+
// hash, returned verbatim on its ok shape. There is NO
|
|
798
|
+
// second read of `launcherReportPath` here on purpose: a
|
|
799
|
+
// second read would be a second trust decision, reopening
|
|
800
|
+
// the exact race (a rewrite between verification and
|
|
801
|
+
// persist) that returning the verified bytes closes
|
|
802
|
+
// structurally instead of by re-checking a hash.
|
|
803
|
+
const reportContent = verified.reportContent;
|
|
804
|
+
if (reportContent === undefined) {
|
|
805
|
+
// Cannot happen given the invariant `reportContent` is
|
|
806
|
+
// set whenever `reportPathHash` is (see the type's own
|
|
807
|
+
// doc comment); fail closed rather than persist nothing
|
|
808
|
+
// we can vouch for.
|
|
809
|
+
stderr.write(`harness pack hook: the launcher-supplied report for session ${childSessionId} at ${launcherReportPath} was verified but no content was returned; nothing was persisted\n`);
|
|
810
|
+
}
|
|
811
|
+
else {
|
|
812
|
+
const contentHash = sha256Hex(reportContent);
|
|
813
|
+
// Adoption keyed by the report's CONTENT hash, in the
|
|
814
|
+
// SAME once-per-session ledger the transcript scan uses,
|
|
815
|
+
// namespaced with a `report:` prefix so the two id shapes
|
|
816
|
+
// (`uuid:...` / `digest:...` for a transcript entry,
|
|
817
|
+
// `report:...` here) can never collide. Without this a
|
|
818
|
+
// launcher report could mint a fresh marker every time an
|
|
819
|
+
// earlier one expired, for as long as the delegation
|
|
820
|
+
// itself stayed valid: the delegation's TTL would
|
|
821
|
+
// silently become the report's own re-mint budget instead
|
|
822
|
+
// of a one-shot authorization.
|
|
823
|
+
const adoptedPath = adoptedEntriesPathFor(generatedDir, childSessionId);
|
|
824
|
+
const adopted = readAdoptedEntries(adoptedPath);
|
|
825
|
+
const entryId = `report:${contentHash}`;
|
|
826
|
+
if (!adopted.ok) {
|
|
827
|
+
// Fail closed: without the ledger we cannot tell a
|
|
828
|
+
// fresh report from one this session already spent.
|
|
829
|
+
stderr.write(`harness pack hook: the adopted-entry ledger at ${adoptedPath} could not be read (${adopted.detail}); refusing to adopt a launcher-supplied report that may already have been adopted for session ${childSessionId}\n`);
|
|
830
|
+
}
|
|
831
|
+
else if (adopted.ids.has(entryId)) {
|
|
832
|
+
stderr.write(`harness pack hook: the launcher-supplied report for session ${childSessionId} was already adopted by an earlier mint; refusing to re-mint from the same report (issue a fresh delegation with a new report to authorize another mint)\n`);
|
|
825
833
|
}
|
|
826
834
|
else {
|
|
827
|
-
//
|
|
828
|
-
//
|
|
829
|
-
//
|
|
830
|
-
//
|
|
831
|
-
//
|
|
832
|
-
//
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
markdown: scan.markdown,
|
|
837
|
-
reportsDir,
|
|
838
|
-
sessionId: childSessionId,
|
|
839
|
-
now: new Date(),
|
|
840
|
-
mode: toPackageMode(resolveMode(declared).mode),
|
|
841
|
-
});
|
|
842
|
-
if (persisted.ok) {
|
|
843
|
-
stderr.write(`harness pack hook: captured the Understanding Report for session ${childSessionId} from its own transcript (line ${scan.lineIndex}, after ${scan.waitedMs}ms) and persisted it pending at ${persisted.filePath}\n`);
|
|
835
|
+
// RECORD THE ADOPTION FIRST, then persist, same ordering
|
|
836
|
+
// and same reasoning as the transcript-scan path below:
|
|
837
|
+
// a failed ledger write costs one blocked call and
|
|
838
|
+
// leaves the report re-adoptable, while the reverse
|
|
839
|
+
// order would leave a persisted, mintable report behind
|
|
840
|
+
// an unrecorded adoption.
|
|
841
|
+
const recorded = recordAdoptedEntry(adoptedPath, entryId);
|
|
842
|
+
if (!recorded.ok) {
|
|
843
|
+
stderr.write(`harness pack hook: could not record the launcher-supplied report as adopted for session ${childSessionId} (${recorded.detail}); nothing was persisted\n`);
|
|
844
844
|
}
|
|
845
845
|
else {
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
846
|
+
const persisted = persistStdinReport({
|
|
847
|
+
markdown: reportContent,
|
|
848
|
+
reportsDir,
|
|
849
|
+
sessionId: childSessionId,
|
|
850
|
+
now: new Date(),
|
|
851
|
+
mode: toPackageMode(resolveMode(declared).mode),
|
|
852
|
+
});
|
|
853
|
+
if (persisted.ok) {
|
|
854
|
+
stderr.write(`harness pack hook: adopted the launcher-supplied report for session ${childSessionId} from ${launcherReportPath} and persisted it pending at ${persisted.filePath}\n`);
|
|
855
|
+
}
|
|
856
|
+
else {
|
|
857
|
+
// The entry stays adopted: the launcher's report is
|
|
858
|
+
// fixed content, so re-reading it would fail to
|
|
859
|
+
// parse identically forever. Unlike the transcript
|
|
860
|
+
// path this is not recoverable by a child retry
|
|
861
|
+
// (the child does not control the launcher's file),
|
|
862
|
+
// so no retry instruction is set here.
|
|
863
|
+
stderr.write(`harness pack hook: the launcher-supplied report for session ${childSessionId} did not parse (${persisted.reason}); nothing was persisted\n`);
|
|
864
|
+
}
|
|
856
865
|
}
|
|
857
866
|
}
|
|
858
867
|
}
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
868
|
+
// The transcript scan below never runs for a report-bound
|
|
869
|
+
// delegation: this `if` branch is its own complete
|
|
870
|
+
// report-capture attempt.
|
|
871
|
+
}
|
|
872
|
+
else {
|
|
873
|
+
const transcriptPath = typeof event.transcript_path === "string" && event.transcript_path.length > 0
|
|
874
|
+
? event.transcript_path
|
|
875
|
+
: null;
|
|
876
|
+
// The once-per-session adoption ledger, read only on the path
|
|
877
|
+
// that can actually capture something.
|
|
878
|
+
const adoptedPath = adoptedEntriesPathFor(generatedDir, childSessionId);
|
|
879
|
+
const adopted = transcriptPath === null
|
|
880
|
+
? { ok: true, ids: new Set() }
|
|
881
|
+
: readAdoptedEntries(adoptedPath);
|
|
882
|
+
if (transcriptPath === null) {
|
|
883
|
+
stderr.write(`harness pack hook: delegation for ${childSessionId} is valid but the payload carries no transcript_path; the child's report cannot be captured\n`);
|
|
884
|
+
}
|
|
885
|
+
else if (!adopted.ok) {
|
|
886
|
+
// Fail closed: without the ledger we cannot tell a fresh
|
|
887
|
+
// report from one this session already spent.
|
|
888
|
+
stderr.write(`harness pack hook: the adopted-entry ledger at ${adoptedPath} could not be read (${adopted.detail}); refusing to capture a transcript entry that may already have been adopted for session ${childSessionId}\n`);
|
|
864
889
|
}
|
|
865
890
|
else {
|
|
866
|
-
|
|
891
|
+
const scan = await scanTranscriptForReport({
|
|
892
|
+
transcriptPath,
|
|
893
|
+
sessionId: childSessionId,
|
|
894
|
+
maxWaitMs: autoCfg.reportScan.maxWaitMs,
|
|
895
|
+
adopted: adopted.ids,
|
|
896
|
+
...(opts.reportScanClock?.now !== undefined
|
|
897
|
+
? { now: opts.reportScanClock.now }
|
|
898
|
+
: {}),
|
|
899
|
+
...(opts.reportScanClock?.sleep !== undefined
|
|
900
|
+
? { sleep: opts.reportScanClock.sleep }
|
|
901
|
+
: {}),
|
|
902
|
+
...(opts.reportScanClock?.pollMs !== undefined
|
|
903
|
+
? { pollMs: opts.reportScanClock.pollMs }
|
|
904
|
+
: {}),
|
|
905
|
+
});
|
|
906
|
+
if (scan.found) {
|
|
907
|
+
// RECORD THE ADOPTION FIRST, then persist. In this order a
|
|
908
|
+
// failed ledger write costs one blocked call and leaves the
|
|
909
|
+
// entry re-scannable, while the reverse order would leave a
|
|
910
|
+
// persisted, mintable report behind an unrecorded adoption:
|
|
911
|
+
// exactly the replay this ledger exists to stop.
|
|
912
|
+
const recorded = recordAdoptedEntry(adoptedPath, scan.entryId);
|
|
913
|
+
if (!recorded.ok) {
|
|
914
|
+
stderr.write(`harness pack hook: could not record transcript entry ${scan.entryId} as adopted for session ${childSessionId} (${recorded.detail}); nothing was persisted\n`);
|
|
915
|
+
}
|
|
916
|
+
else {
|
|
917
|
+
// Reuses the SAME persister `harness approve
|
|
918
|
+
// understanding` uses for a heredoc-attached report, so
|
|
919
|
+
// the capture is session-bound, `pending`, and validated
|
|
920
|
+
// by one parser rather than a second one written here.
|
|
921
|
+
// A real `new Date()` on purpose: the persisted report
|
|
922
|
+
// must sort as the newest strict-session report against
|
|
923
|
+
// whatever is already on disk, which a caller-injected
|
|
924
|
+
// clock could not guarantee.
|
|
925
|
+
const persisted = persistStdinReport({
|
|
926
|
+
markdown: scan.markdown,
|
|
927
|
+
reportsDir,
|
|
928
|
+
sessionId: childSessionId,
|
|
929
|
+
now: new Date(),
|
|
930
|
+
mode: toPackageMode(resolveMode(declared).mode),
|
|
931
|
+
});
|
|
932
|
+
if (persisted.ok) {
|
|
933
|
+
stderr.write(`harness pack hook: captured the Understanding Report for session ${childSessionId} from its own transcript (line ${scan.lineIndex}, after ${scan.waitedMs}ms) and persisted it pending at ${persisted.filePath}\n`);
|
|
934
|
+
}
|
|
935
|
+
else {
|
|
936
|
+
// The entry stays adopted: re-reading a report that
|
|
937
|
+
// does not parse would fail identically forever, so
|
|
938
|
+
// the child needs a NEW one, which is what the block's
|
|
939
|
+
// retry instruction asks for. Set the same flag the
|
|
940
|
+
// timeout branch sets, for that reason: the retry
|
|
941
|
+
// sentence reads correctly for this case too, and
|
|
942
|
+
// without it the block below would ask for a retry
|
|
943
|
+
// implicitly while never saying so.
|
|
944
|
+
reportScanTimedOut = true;
|
|
945
|
+
stderr.write(`harness pack hook: the transcript report for session ${childSessionId} did not parse (${persisted.reason}); nothing was persisted\n`);
|
|
946
|
+
}
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
else if (scan.reason === "timeout") {
|
|
950
|
+
reportScanTimedOut = true;
|
|
951
|
+
stderr.write(scan.adoptedOnly === true
|
|
952
|
+
? `harness pack hook: the newest Understanding Report entry in the transcript for session ${childSessionId} was already adopted; emit a fresh report\n`
|
|
953
|
+
: `harness pack hook: no Understanding Report for session ${childSessionId} reached its transcript within ${autoCfg.reportScan.maxWaitMs}ms (waited ${scan.waitedMs}ms); blocking and asking the child to re-emit and retry\n`);
|
|
954
|
+
}
|
|
955
|
+
else {
|
|
956
|
+
stderr.write(`harness pack hook: the transcript at ${transcriptPath} exists but could not be read; the report for session ${childSessionId} cannot be captured\n`);
|
|
957
|
+
}
|
|
867
958
|
}
|
|
868
959
|
}
|
|
960
|
+
// Closes the `if (verified.reportPathHash !== undefined) { ... }
|
|
961
|
+
// else { <transcript scan> }` branch opened above.
|
|
869
962
|
}
|
|
870
963
|
}
|
|
871
964
|
}
|
|
872
965
|
}
|
|
873
966
|
}
|
|
967
|
+
// Task 8f637efd: best-effort observation of this call's
|
|
968
|
+
// `permission_mode`, independent of whether `auto_approve` is even
|
|
969
|
+
// configured: this call site is deliberately the SAME one
|
|
970
|
+
// `attemptAutoApproval` runs at just below (see
|
|
971
|
+
// permission-mode-observations.ts's module header for why every call
|
|
972
|
+
// that reaches this point already needed approval, and for the
|
|
973
|
+
// coverage gap this accepts). Feeds `harness doctor`'s
|
|
974
|
+
// missing-`auto_approve` finding; never a gate input.
|
|
975
|
+
if (generatedDir !== undefined) {
|
|
976
|
+
recordPermissionModeObservation(generatedDir, sessionId, event.permission_mode, stderr);
|
|
977
|
+
}
|
|
874
978
|
const resolveAutoLedger = () => {
|
|
875
979
|
if (opts.writeLedger)
|
|
876
980
|
return { write: opts.writeLedger };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-pre-tool-use.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-pre-tool-use.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hook-pre-tool-use.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-pre-tool-use.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/pack/index.d.ts
CHANGED
|
@@ -2,4 +2,5 @@ export { packAdd, type PackAddOptions, type PackAddResult } from "./add.js";
|
|
|
2
2
|
export { packRemove, type PackRemoveOptions, type PackRemoveResult } from "./remove.js";
|
|
3
3
|
export { packList, type PackListOptions, type PackListResult } from "./list.js";
|
|
4
4
|
export { packReseed, type PackReseedField, type PackReseedOptions, type PackReseedResult, } from "./reseed.js";
|
|
5
|
+
export { packUpgrade, applyAutoApproveUpgrade, type PackUpgradeName, type PackUpgradeOptions, type PackUpgradeResult, type ApplyAutoApproveUpgradeResult, } from "./upgrade.js";
|
|
5
6
|
export { applyPackAdd, applyPackRemove, applyPackReseedUx, planPackRemove, type PackAddEntry, type PackReseedFields, type PackRemovePlan, } from "./mutate.js";
|
package/dist/cli/pack/index.js
CHANGED
|
@@ -2,5 +2,6 @@ export { packAdd } from "./add.js";
|
|
|
2
2
|
export { packRemove } from "./remove.js";
|
|
3
3
|
export { packList } from "./list.js";
|
|
4
4
|
export { packReseed, } from "./reseed.js";
|
|
5
|
+
export { packUpgrade, applyAutoApproveUpgrade, } from "./upgrade.js";
|
|
5
6
|
export { applyPackAdd, applyPackRemove, applyPackReseedUx, planPackRemove, } from "./mutate.js";
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/pack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA2C,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,QAAQ,EAA6C,MAAM,WAAW,CAAC;AAChF,OAAO,EACL,UAAU,GAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,cAAc,GAIf,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/pack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA2C,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,QAAQ,EAA6C,MAAM,WAAW,CAAC;AAChF,OAAO,EACL,UAAU,GAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,WAAW,EACX,uBAAuB,GAKxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,cAAc,GAIf,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** Pack names this verb knows how to upgrade. Grows as more upgrades ship. */
|
|
2
|
+
export type PackUpgradeName = "understanding-before-execution";
|
|
3
|
+
export interface PackUpgradeOptions {
|
|
4
|
+
configPath?: string;
|
|
5
|
+
homeDir?: string;
|
|
6
|
+
dryRun?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface PackUpgradeResult {
|
|
9
|
+
path: string;
|
|
10
|
+
name: string;
|
|
11
|
+
diff: string;
|
|
12
|
+
/** True when the manifest was actually written. */
|
|
13
|
+
applied: boolean;
|
|
14
|
+
/** True when the block was already present: a byte-identical no-op. */
|
|
15
|
+
alreadyPresent: boolean;
|
|
16
|
+
}
|
|
17
|
+
export type ApplyAutoApproveUpgradeResult = {
|
|
18
|
+
ok: true;
|
|
19
|
+
text: string;
|
|
20
|
+
changed: boolean;
|
|
21
|
+
} | {
|
|
22
|
+
ok: false;
|
|
23
|
+
error: string;
|
|
24
|
+
};
|
|
25
|
+
export declare function applyAutoApproveUpgrade(original: string): ApplyAutoApproveUpgradeResult;
|
|
26
|
+
/**
|
|
27
|
+
* `harness pack upgrade <name>` implementation. `name` is validated
|
|
28
|
+
* against the (currently one-entry) set of known upgrades before any
|
|
29
|
+
* file I/O; an unknown name refuses with `EX_FAIL` rather than silently
|
|
30
|
+
* doing nothing.
|
|
31
|
+
*/
|
|
32
|
+
export declare function packUpgrade(name: string, opts?: PackUpgradeOptions): Promise<PackUpgradeResult>;
|