@joshuafolkken/kit 1.1010.0 → 1.1035.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/.claude/settings.json +1 -5
- package/.claude/skills/dependency-update/SKILL.md +6 -3
- package/.claude/skills/epic-commands/SKILL.md +46 -17
- package/.claude/skills/workflow-commands/SKILL.md +8 -23
- package/.claude/skills/workflow-commands/backlogrun-child.md +4 -2
- package/.claude/skills/workflow-commands/backlogrun.md +3 -12
- package/.claude/skills/workflow-commands/fullrun-steps.md +4 -3
- package/.claude/skills/workflow-commands/fullrun.md +1 -1
- package/.claude/skills/workflow-commands/halfrun.md +2 -1
- package/.claude/skills/workflow-commands/into-target.md +1 -1
- package/.claude/skills/workflow-commands/observation-filing.md +42 -43
- package/.claude/skills/workflow-commands/prerequisite.md +1 -1
- package/.codex/hooks.json +1 -5
- package/.github/workflows/sonar-qube.yml +1 -1
- package/AGENTS.md +4 -25
- package/CLAUDE.md +24 -38
- package/GEMINI.md +4 -24
- package/README.md +22 -56
- package/dist/CLAUDE.md +24 -38
- package/dist/hooks/batch-guard.js +4 -4
- package/dist/hooks/{chunk-WMIR5SNX.js → chunk-D67KVGGY.js} +3 -3
- package/dist/hooks/{chunk-EZLHXKJ6.js → chunk-EIFCAJRB.js} +70 -27
- package/dist/hooks/{chunk-KPZN42RT.js → chunk-GJT4BNVE.js} +3 -3
- package/dist/hooks/{chunk-PAXMLGSS.js → chunk-GLBDBJOK.js} +44 -24
- package/dist/hooks/{chunk-GBJUERYK.js → chunk-HOYJU5RM.js} +1 -1
- package/dist/hooks/{chunk-6PSTVOLH.js → chunk-HU66PWWL.js} +33 -57
- package/dist/hooks/{chunk-A2H5I2VD.js → chunk-KG6PZD72.js} +2 -2
- package/dist/hooks/{chunk-AWTFKKFW.js → chunk-XPLP27WA.js} +3 -8
- package/dist/hooks/{chunk-4GDR2YTV.js → chunk-Y27M6A7X.js} +4 -4
- package/dist/hooks/{chunk-56LGMJJV.js → chunk-ZXNE6NY3.js} +2 -2
- package/dist/hooks/codex-hook-adapter.js +10 -10
- package/dist/hooks/duplicate-read-guard.js +5 -5
- package/dist/hooks/format-edited.js +2 -2
- package/dist/hooks/investigation-guard.js +5 -5
- package/dist/hooks/pretool-guard.js +9 -9
- package/dist/hooks/stop-guard.js +11 -15
- package/dist/josh.js +38 -19
- package/dist/version/index.js +93 -41
- package/eslint/base.js +2 -11
- package/package.json +31 -5
- package/prompts/coding-standards.md +15 -290
- package/prompts/collaboration-workflow/cross-repo-epic.md +2 -51
- package/prompts/collaboration-workflow/epic-audit.md +2 -53
- package/prompts/collaboration-workflow/epic-bundle.md +2 -106
- package/prompts/collaboration-workflow/issue-template.md +4 -4
- package/prompts/collaboration-workflow/operating-rules.md +18 -75
- package/prompts/collaboration-workflow/principles.md +74 -0
- package/prompts/collaboration-workflow/residency.md +54 -14
- package/prompts/collaboration-workflow/rule-delivery.md +1 -11
- package/prompts/collaboration-workflow/upstream-interrupt.md +1 -1
- package/prompts/collaboration-workflow.md +22 -28
- package/scripts/adopt/adopt-logic.ts +2 -2
- package/scripts/adopt/adopt-toolkits.ts +1 -1
- package/scripts/adopt/adopt.ts +2 -2
- package/scripts/agent/agent-event.ts +2 -9
- package/scripts/agent/agent-exit-record.ts +2 -9
- package/scripts/backlog/backlog-budget-cli.ts +2 -6
- package/scripts/backlog/backlog-drive-cli.ts +20 -10
- package/scripts/backlog/backlog-drive.ts +50 -16
- package/scripts/backlog/backlog-offer-cli.ts +6 -5
- package/scripts/backlog/backlog-plan.ts +1 -1
- package/scripts/build/build-bin.ts +2 -1
- package/scripts/build/build-config-merge.ts +2 -1
- package/scripts/build/build-hooks.ts +24 -4
- package/scripts/build/build-managed-marker.ts +2 -1
- package/scripts/build/build-self-sync-guard.ts +2 -1
- package/scripts/build/build-version.ts +2 -1
- package/scripts/cases/cases-logic.ts +2 -6
- package/scripts/ci/pr-classification.ts +13 -11
- package/scripts/cost-runtime/cost-transcript.ts +4 -11
- package/scripts/doctor/doctor-consumer.ts +5 -12
- package/scripts/doctor/doctor-ports.ts +2 -2
- package/scripts/document/document-byte-budget.ts +8 -16
- package/scripts/document/document-section.ts +2 -6
- package/scripts/document/entry-read-budget.ts +1 -1
- package/scripts/{git/git-epic-add-body.ts → epic/epic-add-body.ts} +23 -23
- package/scripts/{git/git-epic-add-plan.ts → epic/epic-add-plan.ts} +23 -26
- package/scripts/{git/git-epic-add.ts → epic/epic-add.ts} +17 -17
- package/scripts/epic/epic-audit-cli.ts +4 -4
- package/scripts/epic/epic-audit-orphans.ts +2 -2
- package/scripts/epic/epic-audit-rationale.ts +1 -1
- package/scripts/epic/epic-audit.ts +1 -1
- package/scripts/{git/git-epic-body.ts → epic/epic-body.ts} +6 -6
- package/scripts/epic/epic-bundle-cli.ts +1 -1
- package/scripts/epic/epic-bundle.ts +2 -2
- package/scripts/epic/epic-candidate-confirm.ts +2 -1
- package/scripts/{git/git-epic-chains.ts → epic/epic-chains.ts} +4 -4
- package/{scripts-ai → scripts/epic}/epic-check.ts +5 -4
- package/{scripts-ai → scripts/epic}/epic-cli.ts +4 -4
- package/scripts/{git/git-epic-close-comment.ts → epic/epic-close-comment.ts} +9 -9
- package/scripts/{git/git-epic-close.ts → epic/epic-close.ts} +23 -19
- package/scripts/epic/epic-cross-repo.ts +21 -38
- package/scripts/{git/git-epic-decision.ts → epic/epic-decision.ts} +12 -14
- package/scripts/epic/epic-fetch.ts +3 -3
- package/scripts/epic/epic-graph.ts +3 -3
- package/scripts/epic/epic-index.ts +2 -2
- package/scripts/epic/epic-issue.ts +1 -1
- package/scripts/epic/epic-next.ts +3 -3
- package/scripts/{git/git-epic-parse.ts → epic/epic-parse.ts} +3 -3
- package/scripts/{git/git-epic-promote.ts → epic/epic-promote.ts} +10 -10
- package/scripts/{git/git-epic-read.ts → epic/epic-read.ts} +9 -9
- package/scripts/{git/git-epic-reconcile.ts → epic/epic-reconcile.ts} +18 -20
- package/scripts/{git/git-epic-reference.ts → epic/epic-reference.ts} +4 -23
- package/scripts/epic/epic-relation-recheck.ts +4 -3
- package/scripts/{git/git-epic-relations.ts → epic/epic-relations.ts} +5 -5
- package/scripts/{git/git-epic-remove-plan.ts → epic/epic-remove-plan.ts} +17 -19
- package/scripts/{git/git-epic-remove.ts → epic/epic-remove.ts} +13 -13
- package/scripts/{git/git-epic-run.ts → epic/epic-run.ts} +27 -27
- package/scripts/{git/git-epic-sections.ts → epic/epic-sections.ts} +6 -6
- package/scripts/{git/git-epic-shape.ts → epic/epic-shape.ts} +7 -7
- package/scripts/{git/git-epic-validate.ts → epic/epic-validate.ts} +13 -13
- package/{scripts-ai → scripts/epic}/epic.ts +17 -16
- package/scripts/gh/fix-gh-packages.ts +2 -1
- package/scripts/gh/gh-spawn.ts +12 -10
- package/scripts/git/constants.ts +1 -1
- package/scripts/git/git-branch.ts +10 -1
- package/scripts/git/git-command.ts +1 -1
- package/scripts/git/git-error.ts +2 -5
- package/{scripts-ai → scripts/git}/git-followup-finish.ts +7 -7
- package/scripts/git/git-followup-flush.ts +74 -48
- package/scripts/git/git-followup-issue-close.ts +2 -2
- package/scripts/git/git-followup-label.ts +1 -1
- package/scripts/git/git-followup-pending.ts +1 -1
- package/{scripts-ai → scripts/git}/git-followup-workflow.ts +23 -11
- package/scripts/git/git-gh-exec.ts +85 -26
- package/scripts/git/git-gh-issue-read.ts +2 -2
- package/scripts/git/git-gh-issue-rest.ts +2 -2
- package/scripts/git/git-gh-issue-write.ts +6 -6
- package/scripts/git/git-gh-pr-read.ts +0 -21
- package/scripts/git/git-gh-pr.ts +2 -23
- package/scripts/git/git-pr-followup-wrapup.ts +2 -6
- package/scripts/git/git-preflight.ts +3 -6
- package/scripts/git/git-staging.ts +21 -9
- package/{scripts-ai → scripts/git}/git-workflow.ts +11 -11
- package/scripts/git/github-issue-url.ts +1 -1
- package/scripts/git/issue-labels.ts +1 -1
- package/scripts/git/issue-reference.ts +19 -0
- package/scripts/git/main-merge.ts +2 -1
- package/scripts/git/main-sync.ts +3 -2
- package/scripts/git/schemas.ts +1 -1
- package/scripts/git/stash-pop-args.ts +7 -13
- package/scripts/git/stash-pop-cli.ts +2 -1
- package/{scripts-ai → scripts/git}/telegram-test-logic.ts +2 -2
- package/{scripts-ai → scripts/git}/telegram-test.ts +7 -7
- package/scripts/hooks/format-rewrite-notice.ts +2 -8
- package/scripts/init/init-ai-copy.ts +2 -5
- package/scripts/init/init.ts +8 -4
- package/scripts/init/start-steps.ts +2 -1
- package/scripts/init/start.ts +2 -1
- package/scripts/issue/issue-comment-cli.ts +2 -1
- package/scripts/issue/issue-file-cli.ts +2 -1
- package/scripts/issue/issue-fold-cli.ts +9 -16
- package/scripts/issue/issue-scout-cli.ts +8 -13
- package/scripts/issue/measure-rerun-cli.ts +7 -6
- package/scripts/josh/josh-commands-ai.ts +2 -2
- package/scripts/josh/josh-commands-backlog.ts +1 -1
- package/scripts/josh/josh-commands-development.ts +1 -1
- package/scripts/josh/josh-commands-workflow.ts +4 -4
- package/scripts/lane/lane-cli.ts +2 -1
- package/scripts/lane/lane-open.ts +3 -2
- package/scripts/lane/lane-registry.ts +3 -6
- package/scripts/lib/cli-flags.ts +20 -2
- package/scripts/lib/error-message.ts +9 -0
- package/scripts/lib/read-file.ts +26 -2
- package/scripts/observations/observation-ledger-home.ts +98 -26
- package/scripts/observations/observation-ledger-migrate.ts +26 -21
- package/scripts/observations/observation-ledger-prepare.ts +10 -20
- package/scripts/observations/observation-ledger.ts +58 -25
- package/scripts/observations/observations-flush-cli.ts +6 -23
- package/scripts/observations/observations-flush-landing.ts +2 -1
- package/scripts/observations/observations-flush.ts +29 -20
- package/scripts/package/package-scout-cli.ts +8 -16
- package/scripts/ports/port-command.ts +2 -1
- package/scripts/propagate/propagate-publish.ts +6 -7
- package/scripts/propagate/propagate-steps.ts +2 -1
- package/scripts/propagate/propagate.ts +3 -2
- package/scripts/refactor/import-graph.ts +2 -6
- package/scripts/registry-migration/migrate.ts +3 -2
- package/scripts/registry-migration/user-npmrc.ts +2 -2
- package/scripts/release/release-cli.ts +2 -1
- package/scripts/repo/repo-setting.ts +10 -8
- package/scripts/review/review-finding-ledger.ts +3 -3
- package/scripts/review/review-findings-cli.ts +4 -11
- package/scripts/review/review-record-cli.ts +14 -11
- package/scripts/review/review-record.ts +6 -16
- package/scripts/rules/decision-oracle.ts +2 -2
- package/scripts/rules/rule-body-guard.ts +2 -2
- package/scripts/rules/rule-value-cache.ts +99 -0
- package/scripts/rules/rule-value-cli.ts +10 -9
- package/scripts/rules/rule-value.ts +1 -1
- package/scripts/run/run-carry-args.ts +2 -6
- package/scripts/run/run-carry-cli.ts +5 -7
- package/scripts/run/run-cut-args.ts +7 -13
- package/scripts/run/run-ending-cli.ts +4 -7
- package/scripts/run/run-event-stream.ts +2 -5
- package/scripts/run/run-liveness-cli.ts +4 -7
- package/scripts/run/run-progress-args.ts +2 -6
- package/scripts/run/run-progress-cli.ts +2 -1
- package/scripts/run/run-tail-cli.ts +3 -3
- package/scripts/run/run-tidy-stashes.ts +7 -14
- package/scripts/run/run-wake-cli.ts +2 -6
- package/scripts/run/run-wake-driver.ts +15 -2
- package/scripts/run/run-wake-session.ts +14 -4
- package/scripts/safe-chain/project-config.ts +3 -6
- package/scripts/security/security-audit-provision.ts +6 -7
- package/scripts/sonar/sonar-hotspots-cli.ts +2 -1
- package/scripts/sync/directory-copy-guard.ts +2 -1
- package/scripts/sync/sync-ai-files.ts +3 -3
- package/scripts/sync/template-source-logic.ts +3 -4
- package/scripts/test/e2e-retry-check.ts +3 -6
- package/scripts/ui/ui-routes-cli.ts +3 -6
- package/scripts/version/bump-version.ts +2 -1
- package/scripts/version/version-remote.ts +18 -27
- package/scripts/version/version-targets.ts +3 -3
- package/.claude/skills/workflow-commands/rule-residency.md +0 -267
- package/evals/scenarios/consult-not-execute.json +0 -20
- package/evals/scenarios/no-implicit-workflow.json +0 -26
- package/evals/scenarios/overrides-both-locations.json +0 -29
- package/evals/scenarios/upstream-interrupt.json +0 -23
- package/evals/scenarios/workflow-skill-loaded.json +0 -16
- package/prompts/agent-lint-protocol.json +0 -79
- package/prompts/agent-rules.md +0 -63
- package/prompts/collaboration-workflow/consultation-vs-execution.md +0 -8
- package/prompts/collaboration-workflow/distributed-docs.md +0 -7
- package/prompts/collaboration-workflow/durable-rules.md +0 -24
- package/prompts/collaboration-workflow/latest-first.md +0 -14
- package/prompts/collaboration-workflow/no-clones.md +0 -11
- package/prompts/collaboration-workflow/simplicity-first.md +0 -9
- package/prompts/collaboration-workflow/single-source-rules.md +0 -13
- package/scripts/build/shim-shell.ts +0 -25
- package/scripts/claude/skill-meta.ts +0 -37
- package/scripts/document/document-scan.ts +0 -108
- package/scripts/document/generate-catalog.ts +0 -69
- package/scripts/document/retired-phrases.ts +0 -143
- package/scripts/document/review-agent-type.ts +0 -46
- package/scripts/document/single-source.ts +0 -73
- package/scripts/git/git-fixture-workspace.ts +0 -88
- package/scripts/hooks/format-edited-file-fixtures.ts +0 -109
- package/scripts/hooks/prompt-hooks.ts +0 -38
- package/scripts/init/hook-command-bootstrap.ts +0 -83
- package/scripts/issue/issue-logic.ts +0 -50
- package/scripts/josh/__snapshots__/josh-command-map.test.ts.snap +0 -1227
- package/scripts/josh/josh-script-reader.ts +0 -11
- package/scripts/package/production-dependency-graph.ts +0 -68
- package/scripts/retrospective/retrospective-cli.ts +0 -97
- package/scripts/retrospective/retrospective.ts +0 -127
- package/scripts/rules/delivered-rules-harness.ts +0 -72
- package/scripts/rules/top-level-scripts-guard.ts +0 -47
- package/scripts/run/run-carry-flush.ts +0 -58
- package/scripts/run/run-transcript.golden.txt +0 -57
- package/scripts/run/run-wake-work.ts +0 -108
- package/scripts/sync/dependabot-pin-logic.ts +0 -135
- package/scripts/test/classify-isolation.ts +0 -149
- package/scripts/test/http-fault-injection.ts +0 -79
- package/scripts/test/josh-harness-environment.ts +0 -260
- package/scripts/test/josh-harness.ts +0 -96
- package/scripts/test/pilot-files.ts +0 -452
- package/scripts/test/pilot-measure.ts +0 -78
- package/scripts/test/test-network-guard.ts +0 -453
- package/scripts/test/test-repository-guard.ts +0 -317
- package/scripts/test/test-state-guard.ts +0 -85
- package/scripts/test/test-stdout-guard.ts +0 -54
- package/scripts/test/test-telegram-guard.ts +0 -90
- package/scripts/test/unit-guard-environment.ts +0 -12
- package/scripts/test/unit-projects.ts +0 -139
- package/scripts/test/vitest-include-globs.ts +0 -12
- package/scripts/time-runtime/time-batch-guard-fixtures.ts +0 -66
- package/scripts-ai/completion-gate.ts +0 -13
- package/scripts-ai/environment-loader.ts +0 -9
- /package/{scripts-ai → scripts/epic}/epic-cli-argv.ts +0 -0
- /package/{scripts-ai → scripts/epic}/epic-cli-remove.ts +0 -0
- /package/{scripts-ai → scripts/git}/followup-issue-number.ts +0 -0
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
agent_role_profile,
|
|
14
14
|
agent_session_environment,
|
|
15
15
|
bash_triggers,
|
|
16
|
+
error_text,
|
|
16
17
|
filing_cap,
|
|
17
18
|
gh_failure,
|
|
18
19
|
git_command,
|
|
@@ -36,42 +37,43 @@ import {
|
|
|
36
37
|
run_watcher_guard,
|
|
37
38
|
shell_segments,
|
|
38
39
|
tail_commands
|
|
39
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-EIFCAJRB.js";
|
|
40
41
|
import {
|
|
41
42
|
find_local_bin_upwards
|
|
42
43
|
} from "./chunk-3V37IID6.js";
|
|
43
44
|
import {
|
|
44
45
|
batch_outcome
|
|
45
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-KG6PZD72.js";
|
|
46
47
|
import {
|
|
47
48
|
investigation_refusal
|
|
48
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-GJT4BNVE.js";
|
|
49
50
|
import {
|
|
50
51
|
duplicate_read_outcome
|
|
51
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-Y27M6A7X.js";
|
|
52
53
|
import {
|
|
53
54
|
investigation_reads
|
|
54
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-D67KVGGY.js";
|
|
55
56
|
import {
|
|
56
57
|
lane_guard_policy,
|
|
57
58
|
time_batch_guard
|
|
58
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-ZXNE6NY3.js";
|
|
59
60
|
import {
|
|
60
61
|
hook_decision,
|
|
61
62
|
lane_child_marker,
|
|
62
63
|
run_issue_number
|
|
63
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-HOYJU5RM.js";
|
|
64
65
|
import {
|
|
65
66
|
PLATFORM_TEMP_ROOT,
|
|
66
67
|
cost_attribute,
|
|
67
68
|
cost_blocks,
|
|
68
69
|
cost_transcript,
|
|
69
70
|
cost_usage,
|
|
71
|
+
file_reader,
|
|
70
72
|
json_value,
|
|
71
73
|
lane_paths,
|
|
72
74
|
stamp_file,
|
|
73
75
|
time_shell
|
|
74
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-GLBDBJOK.js";
|
|
75
77
|
|
|
76
78
|
// scripts/hooks/pretool-guard.ts
|
|
77
79
|
import { text } from "node:stream/consumers";
|
|
@@ -1510,7 +1512,7 @@ var DECISION_ORACLES = [
|
|
|
1510
1512
|
decision: "Whether cross-file or cross-repository code duplication exists",
|
|
1511
1513
|
args: "",
|
|
1512
1514
|
vocabulary: ["clean", "clones:"],
|
|
1513
|
-
single_source: "prompts/collaboration-workflow/
|
|
1515
|
+
single_source: "prompts/collaboration-workflow/principles.md \u2192 \u30AF\u30ED\u30FC\u30F3\u7981\u6B62"
|
|
1514
1516
|
},
|
|
1515
1517
|
{
|
|
1516
1518
|
name: "epic:reconcile",
|
|
@@ -1848,7 +1850,6 @@ var ROW11 = {
|
|
|
1848
1850
|
var raw_field_body = { RAW_FIELD_BODY_REASON, ROW: ROW11, posts_at_path_literally };
|
|
1849
1851
|
|
|
1850
1852
|
// scripts/rules/rule-body-guard.ts
|
|
1851
|
-
import { existsSync as existsSync2, readFileSync as readFileSync3 } from "node:fs";
|
|
1852
1853
|
var EDIT_TOOL = "Edit";
|
|
1853
1854
|
var WRITE_TOOL = "Write";
|
|
1854
1855
|
var CLAUDE_DOCUMENT = /(?:^|\/)CLAUDE\.md$/u;
|
|
@@ -1871,7 +1872,7 @@ function string_field(input, key) {
|
|
|
1871
1872
|
return typeof value === "string" ? value : "";
|
|
1872
1873
|
}
|
|
1873
1874
|
function read_existing(file_path) {
|
|
1874
|
-
return
|
|
1875
|
+
return file_reader.read_file_or_empty(file_path);
|
|
1875
1876
|
}
|
|
1876
1877
|
function texts_of(name, input, read2) {
|
|
1877
1878
|
if (name === WRITE_TOOL) {
|
|
@@ -2010,11 +2011,11 @@ var shell_body_trigger = {
|
|
|
2010
2011
|
import { execFileSync } from "node:child_process";
|
|
2011
2012
|
|
|
2012
2013
|
// scripts/gate/project-checks.ts
|
|
2013
|
-
import { existsSync as
|
|
2014
|
+
import { existsSync as existsSync3, globSync as globSync2, readFileSync as readFileSync4 } from "node:fs";
|
|
2014
2015
|
import path5 from "node:path";
|
|
2015
2016
|
|
|
2016
2017
|
// scripts/init/project-profile.ts
|
|
2017
|
-
import { existsSync as
|
|
2018
|
+
import { existsSync as existsSync2, readdirSync, readFileSync as readFileSync3 } from "node:fs";
|
|
2018
2019
|
import path4 from "node:path";
|
|
2019
2020
|
|
|
2020
2021
|
// scripts/version/kit-descriptor.ts
|
|
@@ -2054,8 +2055,8 @@ function requested_profile(args, usage = "josh init [--profile basic|full]") {
|
|
|
2054
2055
|
}
|
|
2055
2056
|
function read_manifest(root) {
|
|
2056
2057
|
const filename = path4.join(root, "package.json");
|
|
2057
|
-
if (!
|
|
2058
|
-
const parsed = JSON.parse(
|
|
2058
|
+
if (!existsSync2(filename)) return void 0;
|
|
2059
|
+
const parsed = JSON.parse(readFileSync3(filename, "utf8"));
|
|
2059
2060
|
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
2060
2061
|
throw new Error("package.json must contain an object");
|
|
2061
2062
|
}
|
|
@@ -2126,7 +2127,7 @@ function has_github_remote(root) {
|
|
|
2126
2127
|
function inspect_project(root, requested) {
|
|
2127
2128
|
const profile = resolve_profile(root, requested);
|
|
2128
2129
|
const files = scan_files(root);
|
|
2129
|
-
const has_git =
|
|
2130
|
+
const has_git = existsSync2(path4.join(root, ".git"));
|
|
2130
2131
|
return { ...profile, ...files, has_git, has_github: has_git && has_github_remote(root) };
|
|
2131
2132
|
}
|
|
2132
2133
|
var project_profile = {
|
|
@@ -2179,7 +2180,7 @@ var DEPENDENCY_FIELDS = ["dependencies", "devDependencies"];
|
|
|
2179
2180
|
var object_schema = z5.record(z5.string(), z5.unknown());
|
|
2180
2181
|
function project_root(directory) {
|
|
2181
2182
|
let current = directory;
|
|
2182
|
-
while (!
|
|
2183
|
+
while (!existsSync3(path5.join(current, PACKAGE_JSON))) {
|
|
2183
2184
|
const parent = path5.dirname(current);
|
|
2184
2185
|
if (parent === current) return directory;
|
|
2185
2186
|
current = parent;
|
|
@@ -2193,7 +2194,7 @@ function has_files(directory, pattern) {
|
|
|
2193
2194
|
return globSync2(pattern, { cwd: project_root(directory), exclude: is_ignored }).length > 0;
|
|
2194
2195
|
}
|
|
2195
2196
|
function has_config(directory, names) {
|
|
2196
|
-
return names.some((name) =>
|
|
2197
|
+
return names.some((name) => existsSync3(path5.join(project_root(directory), name)));
|
|
2197
2198
|
}
|
|
2198
2199
|
function has_bin(directory, bin_name) {
|
|
2199
2200
|
return find_local_bin_upwards(directory, bin_name) !== void 0;
|
|
@@ -2210,7 +2211,7 @@ function is_basic_manifest(manifest) {
|
|
|
2210
2211
|
function read_manifest2(directory) {
|
|
2211
2212
|
try {
|
|
2212
2213
|
const manifest_path = path5.join(project_root(directory), PACKAGE_JSON);
|
|
2213
|
-
return JSON.parse(
|
|
2214
|
+
return JSON.parse(readFileSync4(manifest_path, "utf8"));
|
|
2214
2215
|
} catch {
|
|
2215
2216
|
return void 0;
|
|
2216
2217
|
}
|
|
@@ -3527,9 +3528,8 @@ var git_gh_issue = {
|
|
|
3527
3528
|
};
|
|
3528
3529
|
|
|
3529
3530
|
// scripts/ci/pr-classification.ts
|
|
3530
|
-
import { readFileSync as
|
|
3531
|
+
import { readFileSync as readFileSync5 } from "node:fs";
|
|
3531
3532
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
3532
|
-
import { execaSync as execaSync2 } from "execa";
|
|
3533
3533
|
import { z as z8 } from "zod";
|
|
3534
3534
|
var CLASSIFICATION_SET = new Set(RELEASE_CLASSIFICATION_NAMES);
|
|
3535
3535
|
var ISSUE_BUG_LABEL = "bug";
|
|
@@ -3587,18 +3587,17 @@ function select_issue_classification(issue_json) {
|
|
|
3587
3587
|
return label;
|
|
3588
3588
|
}
|
|
3589
3589
|
function fetch_current_labels(repository, pull_number) {
|
|
3590
|
-
const
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
)
|
|
3595
|
-
|
|
3596
|
-
throw new Error(`Could not read the pull request labels: ${
|
|
3590
|
+
const path7 = `repos/${repository}/issues/${String(pull_number)}/labels`;
|
|
3591
|
+
try {
|
|
3592
|
+
const names = git_gh_exec.exec_gh_api_sync({ path: path7, jq_filter: ".[].name" });
|
|
3593
|
+
return names.split("\n").filter((name) => name !== "");
|
|
3594
|
+
} catch (error) {
|
|
3595
|
+
const detail = error_text.message_of(error);
|
|
3596
|
+
throw new Error(`Could not read the pull request labels: ${detail}`, { cause: error });
|
|
3597
3597
|
}
|
|
3598
|
-
return result.stdout.split("\n").filter((name) => name !== "");
|
|
3599
3598
|
}
|
|
3600
3599
|
function check_event(event_path, read_labels = fetch_current_labels) {
|
|
3601
|
-
const event = EVENT.parse(JSON.parse(
|
|
3600
|
+
const event = EVENT.parse(JSON.parse(readFileSync5(event_path, "utf8")));
|
|
3602
3601
|
const labels = read_labels(event.repository.full_name, event.pull_request.number);
|
|
3603
3602
|
return classification_error(labels, event.pull_request.user.login);
|
|
3604
3603
|
}
|
|
@@ -3614,6 +3613,7 @@ if (process.argv[1] === fileURLToPath2(import.meta.url)) {
|
|
|
3614
3613
|
var pr_classification = {
|
|
3615
3614
|
classification_error,
|
|
3616
3615
|
check_event,
|
|
3616
|
+
fetch_current_labels,
|
|
3617
3617
|
declaration,
|
|
3618
3618
|
is_classification,
|
|
3619
3619
|
select_issue_classification
|
|
@@ -3728,8 +3728,6 @@ var pr_number_by_branch = /* @__PURE__ */ new Map();
|
|
|
3728
3728
|
var LOOKUP_QUERY = "state=all&sort=created&direction=desc&per_page=100";
|
|
3729
3729
|
var COMMENTS_QUERY = FULL_PAGE_QUERY;
|
|
3730
3730
|
var OWNER_PLACEHOLDER = "{owner}";
|
|
3731
|
-
var NO_HEAD_REF_MESSAGE = "gh api answered a pull request with no head branch";
|
|
3732
|
-
var FORK_HEAD_MESSAGE = "gh api answered a pull request whose head branch is in another repository";
|
|
3733
3731
|
var NO_PULL_REQUEST_MESSAGE = "gh api found no pull request for branch";
|
|
3734
3732
|
var UNREADABLE_PULL_REQUEST_MESSAGE = "gh api could not read the pull requests for branch";
|
|
3735
3733
|
function lookup_path(branch_name) {
|
|
@@ -3822,13 +3820,6 @@ async function pr_view(branch_name) {
|
|
|
3822
3820
|
if (pull === void 0) return "";
|
|
3823
3821
|
return JSON.stringify(git_gh_pr_rest.to_pr_info(pull));
|
|
3824
3822
|
}
|
|
3825
|
-
async function pr_head_reference(pr_number) {
|
|
3826
|
-
const pull = await read_pull(pr_number);
|
|
3827
|
-
const reference = pull.head?.ref;
|
|
3828
|
-
if (reference === void 0) throw new Error(NO_HEAD_REF_MESSAGE);
|
|
3829
|
-
if (!git_gh_pr_rest.is_same_repository_head(pull)) throw new Error(FORK_HEAD_MESSAGE);
|
|
3830
|
-
return reference;
|
|
3831
|
-
}
|
|
3832
3823
|
async function read_comments(branch_name, to_path, to_json) {
|
|
3833
3824
|
const pr_number = await resolve_pr_number(branch_name);
|
|
3834
3825
|
if (pr_number === void 0) return void 0;
|
|
@@ -3857,7 +3848,6 @@ var git_gh_pr_read = {
|
|
|
3857
3848
|
pr_get_url,
|
|
3858
3849
|
pr_get_body,
|
|
3859
3850
|
pr_view,
|
|
3860
|
-
pr_head_reference,
|
|
3861
3851
|
pr_get_comments,
|
|
3862
3852
|
pr_get_review_comments
|
|
3863
3853
|
};
|
|
@@ -4097,12 +4087,6 @@ async function pr_create(title, body, label) {
|
|
|
4097
4087
|
await add_pr_classification(number, label);
|
|
4098
4088
|
return url;
|
|
4099
4089
|
}
|
|
4100
|
-
async function pr_checkout(pr_number) {
|
|
4101
|
-
const branch_name = await git_gh_pr_read.pr_head_reference(pr_number);
|
|
4102
|
-
await git_command.fetch_branch(branch_name);
|
|
4103
|
-
await git_command.checkout(branch_name);
|
|
4104
|
-
await git_command.merge_fast_forward(branch_name);
|
|
4105
|
-
}
|
|
4106
4090
|
async function pr_comment(branch_name, body) {
|
|
4107
4091
|
const pr_number = await require_pr_number(branch_name);
|
|
4108
4092
|
return await git_gh_issue_write.issue_comment(String(pr_number), body);
|
|
@@ -4156,7 +4140,6 @@ var git_gh_pr = {
|
|
|
4156
4140
|
pr_create,
|
|
4157
4141
|
pr_get_classification,
|
|
4158
4142
|
pr_ensure_classification,
|
|
4159
|
-
pr_checkout,
|
|
4160
4143
|
pr_comment,
|
|
4161
4144
|
pr_merge,
|
|
4162
4145
|
pr_update_body
|
|
@@ -4634,7 +4617,7 @@ var epic_busy = {
|
|
|
4634
4617
|
};
|
|
4635
4618
|
|
|
4636
4619
|
// scripts/run/run-liveness.ts
|
|
4637
|
-
import { readFileSync as
|
|
4620
|
+
import { readFileSync as readFileSync6, realpathSync, statSync } from "node:fs";
|
|
4638
4621
|
import { homedir, tmpdir } from "node:os";
|
|
4639
4622
|
import path6 from "node:path";
|
|
4640
4623
|
import { setTimeout as sleep2 } from "node:timers/promises";
|
|
@@ -4732,13 +4715,6 @@ var EMPTY_STATE = {
|
|
|
4732
4715
|
};
|
|
4733
4716
|
var LAUNCH_HEADER_PREFIX = "=== ";
|
|
4734
4717
|
var LAUNCH_HEADER_MARKER = " \xB7 started by process ";
|
|
4735
|
-
function parse_line(line) {
|
|
4736
|
-
try {
|
|
4737
|
-
return JSON.parse(line);
|
|
4738
|
-
} catch {
|
|
4739
|
-
return void 0;
|
|
4740
|
-
}
|
|
4741
|
-
}
|
|
4742
4718
|
function usable_text(value) {
|
|
4743
4719
|
return typeof value === "string" && value.trim() !== "" ? value : void 0;
|
|
4744
4720
|
}
|
|
@@ -4803,7 +4779,7 @@ function normalized(value, state) {
|
|
|
4803
4779
|
function next_state2(line, state) {
|
|
4804
4780
|
const is_header = line.startsWith(LAUNCH_HEADER_PREFIX) && line.includes(LAUNCH_HEADER_MARKER);
|
|
4805
4781
|
if (is_header) return EMPTY_STATE;
|
|
4806
|
-
return normalized(
|
|
4782
|
+
return normalized(json_value.parse_or_undefined(line), state);
|
|
4807
4783
|
}
|
|
4808
4784
|
function read(transcript) {
|
|
4809
4785
|
let state = EMPTY_STATE;
|
|
@@ -4970,7 +4946,7 @@ function read_agent_state(output_path) {
|
|
|
4970
4946
|
const safe_path = to_safe_path(output_path);
|
|
4971
4947
|
if (safe_path === void 0) return void 0;
|
|
4972
4948
|
try {
|
|
4973
|
-
const state = agent_event.read(
|
|
4949
|
+
const state = agent_event.read(readFileSync6(safe_path, "utf8"));
|
|
4974
4950
|
return state.provider === void 0 ? void 0 : state;
|
|
4975
4951
|
} catch {
|
|
4976
4952
|
return void 0;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
lane_guard_policy,
|
|
3
3
|
time_batch_guard
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZXNE6NY3.js";
|
|
5
5
|
import {
|
|
6
6
|
hook_decision
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HOYJU5RM.js";
|
|
8
8
|
|
|
9
9
|
// scripts/hooks/batch-guard.ts
|
|
10
10
|
import { text } from "node:stream/consumers";
|
|
@@ -4,8 +4,9 @@ import {
|
|
|
4
4
|
} from "./chunk-3V37IID6.js";
|
|
5
5
|
import {
|
|
6
6
|
ESLINT_EDIT_CACHE_FLAGS,
|
|
7
|
+
file_reader,
|
|
7
8
|
time_density_hook
|
|
8
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GLBDBJOK.js";
|
|
9
10
|
|
|
10
11
|
// scripts/hooks/format-edited-file.ts
|
|
11
12
|
import { existsSync as existsSync2 } from "node:fs";
|
|
@@ -87,7 +88,6 @@ async function spelling_diagnostics(file_path, project_root, runner = run_cspell
|
|
|
87
88
|
var edited_cspell = { format_unknown_words, is_checkable, spelling_diagnostics };
|
|
88
89
|
|
|
89
90
|
// scripts/hooks/format-rewrite-notice.ts
|
|
90
|
-
import { readFileSync } from "node:fs";
|
|
91
91
|
var MAX_REWRITE_CHARS = 1200;
|
|
92
92
|
var REWRITE_TRUNCATION_NOTICE = "\n\u2026(rewrite preview truncated)";
|
|
93
93
|
var REWRITE_HEADER = "The format hook rewrote this file after your edit, so your in-memory copy is now stale \u2014 re-read it before the next Edit or the match will miss.";
|
|
@@ -130,12 +130,7 @@ ${location}
|
|
|
130
130
|
${cap_body(range.body)}`;
|
|
131
131
|
}
|
|
132
132
|
function read_text(file_path) {
|
|
133
|
-
|
|
134
|
-
try {
|
|
135
|
-
return readFileSync(file_path, "utf8");
|
|
136
|
-
} catch {
|
|
137
|
-
return "";
|
|
138
|
-
}
|
|
133
|
+
return file_path === void 0 ? "" : file_reader.read_if_readable(file_path) ?? "";
|
|
139
134
|
}
|
|
140
135
|
var rewrite_notice = { build, read_text };
|
|
141
136
|
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
investigation_reads
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-D67KVGGY.js";
|
|
4
4
|
import {
|
|
5
5
|
lane_guard_policy
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ZXNE6NY3.js";
|
|
7
7
|
import {
|
|
8
8
|
hook_decision
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-HOYJU5RM.js";
|
|
10
10
|
import {
|
|
11
11
|
json_value,
|
|
12
12
|
time_spans
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GLBDBJOK.js";
|
|
14
14
|
|
|
15
15
|
// scripts/delegation/duplicate-read-guard.ts
|
|
16
16
|
import { statSync } from "node:fs";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
lane_child_marker
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HOYJU5RM.js";
|
|
4
4
|
import {
|
|
5
5
|
time_bundle_call,
|
|
6
6
|
time_format,
|
|
7
7
|
time_round_trips,
|
|
8
8
|
time_spans,
|
|
9
9
|
time_transcript_line
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-GLBDBJOK.js";
|
|
11
11
|
|
|
12
12
|
// scripts/lane/lane-guard-policy.ts
|
|
13
13
|
var DEFAULT_MODE = "refuse";
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
#!/usr/bin/env tsx
|
|
2
2
|
import {
|
|
3
3
|
pretool_guard
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-HU66PWWL.js";
|
|
5
|
+
import "./chunk-EIFCAJRB.js";
|
|
6
6
|
import {
|
|
7
7
|
build_envelope,
|
|
8
8
|
compose_context,
|
|
9
9
|
format_edited_payload
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-XPLP27WA.js";
|
|
11
11
|
import "./chunk-3V37IID6.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-KG6PZD72.js";
|
|
13
|
+
import "./chunk-GJT4BNVE.js";
|
|
14
|
+
import "./chunk-Y27M6A7X.js";
|
|
15
|
+
import "./chunk-D67KVGGY.js";
|
|
16
|
+
import "./chunk-ZXNE6NY3.js";
|
|
17
17
|
import {
|
|
18
18
|
hook_decision
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-HOYJU5RM.js";
|
|
20
20
|
import {
|
|
21
21
|
time_density_hook
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-GLBDBJOK.js";
|
|
23
23
|
import "./chunk-WPALEIRX.js";
|
|
24
24
|
import "./chunk-RKUAD3I6.js";
|
|
25
25
|
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
is_enabled,
|
|
10
10
|
notice_refusal_path,
|
|
11
11
|
refusal_path
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-Y27M6A7X.js";
|
|
13
|
+
import "./chunk-D67KVGGY.js";
|
|
14
|
+
import "./chunk-ZXNE6NY3.js";
|
|
15
|
+
import "./chunk-HOYJU5RM.js";
|
|
16
|
+
import "./chunk-GLBDBJOK.js";
|
|
17
17
|
import "./chunk-WPALEIRX.js";
|
|
18
18
|
import "./chunk-RKUAD3I6.js";
|
|
19
19
|
export {
|
|
@@ -15,9 +15,9 @@ import {
|
|
|
15
15
|
relative_to_root,
|
|
16
16
|
resolve_invocations,
|
|
17
17
|
select_invocation
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-XPLP27WA.js";
|
|
19
19
|
import "./chunk-3V37IID6.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-GLBDBJOK.js";
|
|
21
21
|
import "./chunk-RKUAD3I6.js";
|
|
22
22
|
export {
|
|
23
23
|
ESLINT_DAEMON,
|
|
@@ -10,11 +10,11 @@ import {
|
|
|
10
10
|
is_enabled,
|
|
11
11
|
load_environment_file,
|
|
12
12
|
refusal_path
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-GJT4BNVE.js";
|
|
14
|
+
import "./chunk-D67KVGGY.js";
|
|
15
|
+
import "./chunk-ZXNE6NY3.js";
|
|
16
|
+
import "./chunk-HOYJU5RM.js";
|
|
17
|
+
import "./chunk-GLBDBJOK.js";
|
|
18
18
|
import "./chunk-WPALEIRX.js";
|
|
19
19
|
import "./chunk-RKUAD3I6.js";
|
|
20
20
|
export {
|
|
@@ -3,16 +3,16 @@ import {
|
|
|
3
3
|
pretool_guard,
|
|
4
4
|
pretool_outcome,
|
|
5
5
|
pretool_outcome_async
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-HU66PWWL.js";
|
|
7
|
+
import "./chunk-EIFCAJRB.js";
|
|
8
8
|
import "./chunk-3V37IID6.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-KG6PZD72.js";
|
|
10
|
+
import "./chunk-GJT4BNVE.js";
|
|
11
|
+
import "./chunk-Y27M6A7X.js";
|
|
12
|
+
import "./chunk-D67KVGGY.js";
|
|
13
|
+
import "./chunk-ZXNE6NY3.js";
|
|
14
|
+
import "./chunk-HOYJU5RM.js";
|
|
15
|
+
import "./chunk-GLBDBJOK.js";
|
|
16
16
|
import "./chunk-WPALEIRX.js";
|
|
17
17
|
import "./chunk-RKUAD3I6.js";
|
|
18
18
|
export {
|
package/dist/hooks/stop-guard.js
CHANGED
|
@@ -19,14 +19,14 @@ import {
|
|
|
19
19
|
run_hold,
|
|
20
20
|
run_invocation,
|
|
21
21
|
run_watcher_guard
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-EIFCAJRB.js";
|
|
23
23
|
import {
|
|
24
24
|
session_language
|
|
25
25
|
} from "./chunk-6V5OPIUU.js";
|
|
26
26
|
import {
|
|
27
27
|
hook_decision,
|
|
28
28
|
lane_child_marker
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-HOYJU5RM.js";
|
|
30
30
|
import {
|
|
31
31
|
PROJECT_ROOT,
|
|
32
32
|
json_value,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
time_density_hook,
|
|
35
35
|
time_hook_transcript,
|
|
36
36
|
time_reported_failure
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-GLBDBJOK.js";
|
|
38
38
|
import "./chunk-WPALEIRX.js";
|
|
39
39
|
import "./chunk-RKUAD3I6.js";
|
|
40
40
|
|
|
@@ -488,11 +488,7 @@ function is_present(event) {
|
|
|
488
488
|
return event !== void 0;
|
|
489
489
|
}
|
|
490
490
|
function parse_line(line) {
|
|
491
|
-
|
|
492
|
-
return event_schema.safeParse(JSON.parse(line)).data;
|
|
493
|
-
} catch {
|
|
494
|
-
return void 0;
|
|
495
|
-
}
|
|
491
|
+
return event_schema.safeParse(json_value.parse_or_undefined(line)).data;
|
|
496
492
|
}
|
|
497
493
|
function read_events(target) {
|
|
498
494
|
const raw = stamp_file.read_stamp_text(target);
|
|
@@ -668,16 +664,16 @@ var backlog_ready = {
|
|
|
668
664
|
};
|
|
669
665
|
|
|
670
666
|
// scripts/gh/gh-spawn.ts
|
|
671
|
-
|
|
667
|
+
var NO_BUDGET = 0;
|
|
672
668
|
function fetch_repo_name(timeout_ms) {
|
|
673
|
-
const
|
|
674
|
-
|
|
669
|
+
const stdout = git_gh_exec.read_gh_api_sync({
|
|
670
|
+
path: git_gh_api_path.repo_api_path(),
|
|
671
|
+
jq_filter: ".full_name",
|
|
675
672
|
cwd: PROJECT_ROOT,
|
|
676
|
-
|
|
677
|
-
...timeout_ms !== void 0 && { timeout: timeout_ms }
|
|
673
|
+
timeout_ms: timeout_ms ?? NO_BUDGET
|
|
678
674
|
});
|
|
679
|
-
|
|
680
|
-
return
|
|
675
|
+
const name = stdout?.trim();
|
|
676
|
+
return name === "" ? void 0 : name;
|
|
681
677
|
}
|
|
682
678
|
function get_repo_name_with_owner() {
|
|
683
679
|
return fetch_repo_name(void 0);
|