release-skill 0.9.22 → 0.9.24
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-plugin/plugin.json +1 -1
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +2 -2
- package/.cursor-plugin/plugin.json +1 -1
- package/.kimi-plugin/plugin.json +1 -1
- package/.qoder-plugin/plugin.json +1 -1
- package/CHANGELOG.md +61 -2
- package/INSTALL.md +4 -4
- package/INSTALL.zh-CN.md +4 -4
- package/README.md +53 -32
- package/README.zh-CN.md +44 -27
- package/adapters/claude/.claude-plugin/plugin.json +1 -1
- package/adapters/claude/bin/consumer-contract-vectors.json +7 -7
- package/adapters/claude/bin/error-codes.json +1 -1
- package/adapters/claude/bin/foundation-resource-binding.json +1 -1
- package/adapters/claude/bin/registry.json +50 -1
- package/adapters/claude/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/claude/bin/rules.json +1 -1
- package/adapters/claude/skills/release-assess/SKILL.md +17 -3
- package/adapters/claude/skills/release-config/SKILL.md +6 -0
- package/adapters/claude/skills/release-docs/SKILL.md +6 -0
- package/adapters/claude/skills/release-help/SKILL.md +7 -2
- package/adapters/claude/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/claude/skills/release-prepare/SKILL.md +8 -2
- package/adapters/claude/skills/release-publish/SKILL.md +7 -1
- package/adapters/claude/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/claude/skills/release-setup/SKILL.md +9 -1
- package/adapters/claude/skills/release-verify/SKILL.md +6 -0
- package/adapters/claude/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/claude/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/claude/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/claude/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/claude/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/claude/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/claude/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/claude/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/adapters/codex/.codex-plugin/plugin.json +2 -2
- package/adapters/codex/bin/consumer-contract-vectors.json +7 -7
- package/adapters/codex/bin/error-codes.json +1 -1
- package/adapters/codex/bin/foundation-resource-binding.json +1 -1
- package/adapters/codex/bin/registry.json +50 -1
- package/adapters/codex/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/codex/bin/rules.json +1 -1
- package/adapters/codex/skills/release-assess/SKILL.md +17 -3
- package/adapters/codex/skills/release-config/SKILL.md +6 -0
- package/adapters/codex/skills/release-docs/SKILL.md +6 -0
- package/adapters/codex/skills/release-help/SKILL.md +9 -3
- package/adapters/codex/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/codex/skills/release-prepare/SKILL.md +8 -2
- package/adapters/codex/skills/release-publish/SKILL.md +7 -1
- package/adapters/codex/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/codex/skills/release-setup/SKILL.md +9 -1
- package/adapters/codex/skills/release-verify/SKILL.md +6 -0
- package/adapters/codex/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/codex/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/codex/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/codex/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/codex/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/codex/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/codex/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/codex/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/adapters/cursor/.cursor-plugin/plugin.json +1 -1
- package/adapters/cursor/bin/consumer-contract-vectors.json +7 -7
- package/adapters/cursor/bin/error-codes.json +1 -1
- package/adapters/cursor/bin/foundation-resource-binding.json +1 -1
- package/adapters/cursor/bin/registry.json +50 -1
- package/adapters/cursor/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/cursor/bin/rules.json +1 -1
- package/adapters/cursor/skills/release-assess/SKILL.md +17 -3
- package/adapters/cursor/skills/release-config/SKILL.md +6 -0
- package/adapters/cursor/skills/release-docs/SKILL.md +6 -0
- package/adapters/cursor/skills/release-help/SKILL.md +9 -3
- package/adapters/cursor/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/cursor/skills/release-prepare/SKILL.md +8 -2
- package/adapters/cursor/skills/release-publish/SKILL.md +7 -1
- package/adapters/cursor/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/cursor/skills/release-setup/SKILL.md +9 -1
- package/adapters/cursor/skills/release-verify/SKILL.md +6 -0
- package/adapters/cursor/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/cursor/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/cursor/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/cursor/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/cursor/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/cursor/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/cursor/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/cursor/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/adapters/kimi/.kimi-plugin/plugin.json +1 -1
- package/adapters/kimi/bin/consumer-contract-vectors.json +7 -7
- package/adapters/kimi/bin/error-codes.json +1 -1
- package/adapters/kimi/bin/foundation-resource-binding.json +1 -1
- package/adapters/kimi/bin/registry.json +50 -1
- package/adapters/kimi/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/kimi/bin/rules.json +1 -1
- package/adapters/kimi/skills/release-assess/SKILL.md +17 -3
- package/adapters/kimi/skills/release-config/SKILL.md +6 -0
- package/adapters/kimi/skills/release-docs/SKILL.md +6 -0
- package/adapters/kimi/skills/release-help/SKILL.md +9 -3
- package/adapters/kimi/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/kimi/skills/release-prepare/SKILL.md +8 -2
- package/adapters/kimi/skills/release-publish/SKILL.md +7 -1
- package/adapters/kimi/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/kimi/skills/release-setup/SKILL.md +9 -1
- package/adapters/kimi/skills/release-verify/SKILL.md +6 -0
- package/adapters/kimi/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/kimi/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/kimi/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/kimi/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/kimi/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/kimi/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/kimi/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/kimi/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/adapters/qoder/.qoder-plugin/plugin.json +1 -1
- package/adapters/qoder/bin/consumer-contract-vectors.json +7 -7
- package/adapters/qoder/bin/error-codes.json +1 -1
- package/adapters/qoder/bin/foundation-resource-binding.json +1 -1
- package/adapters/qoder/bin/registry.json +50 -1
- package/adapters/qoder/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/qoder/bin/rules.json +1 -1
- package/adapters/qoder/skills/release-assess/SKILL.md +17 -3
- package/adapters/qoder/skills/release-config/SKILL.md +6 -0
- package/adapters/qoder/skills/release-docs/SKILL.md +6 -0
- package/adapters/qoder/skills/release-help/SKILL.md +9 -3
- package/adapters/qoder/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/qoder/skills/release-prepare/SKILL.md +8 -2
- package/adapters/qoder/skills/release-publish/SKILL.md +7 -1
- package/adapters/qoder/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/qoder/skills/release-setup/SKILL.md +9 -1
- package/adapters/qoder/skills/release-verify/SKILL.md +6 -0
- package/adapters/qoder/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/qoder/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/qoder/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/qoder/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/qoder/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/qoder/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/qoder/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/qoder/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/adapters/workbuddy/.codebuddy-plugin/plugin.json +1 -1
- package/adapters/workbuddy/bin/consumer-contract-vectors.json +7 -7
- package/adapters/workbuddy/bin/error-codes.json +1 -1
- package/adapters/workbuddy/bin/foundation-resource-binding.json +1 -1
- package/adapters/workbuddy/bin/registry.json +50 -1
- package/adapters/workbuddy/bin/release-skill.bundle.mjs +2680 -2180
- package/adapters/workbuddy/bin/rules.json +1 -1
- package/adapters/workbuddy/skills/release-assess/SKILL.md +17 -3
- package/adapters/workbuddy/skills/release-config/SKILL.md +6 -0
- package/adapters/workbuddy/skills/release-docs/SKILL.md +6 -0
- package/adapters/workbuddy/skills/release-help/SKILL.md +7 -2
- package/adapters/workbuddy/skills/release-marketplace/SKILL.md +6 -0
- package/adapters/workbuddy/skills/release-prepare/SKILL.md +8 -2
- package/adapters/workbuddy/skills/release-publish/SKILL.md +7 -1
- package/adapters/workbuddy/skills/release-reconcile/SKILL.md +6 -0
- package/adapters/workbuddy/skills/release-setup/SKILL.md +9 -1
- package/adapters/workbuddy/skills/release-verify/SKILL.md +6 -0
- package/adapters/workbuddy/src/schemas/file-set-apply-request.schema.json +78 -0
- package/adapters/workbuddy/src/schemas/file-set-event-payload.schema.json +55 -0
- package/adapters/workbuddy/src/schemas/file-set-prune-request.schema.json +17 -0
- package/adapters/workbuddy/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/adapters/workbuddy/src/schemas/file-set-result.schema.json +79 -0
- package/adapters/workbuddy/src/schemas/professional-conclusion.schema.json +132 -0
- package/adapters/workbuddy/src/schemas/project-manifest.schema.json +91 -0
- package/adapters/workbuddy/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/bin/consumer-contract-vectors.json +7 -7
- package/bin/error-codes.json +1 -1
- package/bin/foundation-resource-binding.json +1 -1
- package/bin/registry.json +50 -1
- package/bin/release-skill-cli.mjs +80 -5
- package/bin/release-skill.bundle.mjs +2680 -2180
- package/bin/rules.json +1 -1
- package/package.json +4 -4
- package/platform-manifest.json +4 -4
- package/references/05-evidence-and-errors.md +2 -2
- package/scripts/build-bundle.mjs +2 -1
- package/scripts/sync-public-files.mjs +1 -1
- package/skills/release-assess/SKILL.md +17 -3
- package/skills/release-config/SKILL.md +6 -0
- package/skills/release-docs/SKILL.md +6 -0
- package/skills/release-help/SKILL.md +7 -2
- package/skills/release-marketplace/SKILL.md +6 -0
- package/skills/release-prepare/SKILL.md +8 -2
- package/skills/release-publish/SKILL.md +7 -1
- package/skills/release-reconcile/SKILL.md +6 -0
- package/skills/release-setup/SKILL.md +9 -1
- package/skills/release-verify/SKILL.md +6 -0
- package/skills-src/release-assess/SKILL.md +17 -3
- package/skills-src/release-config/SKILL.md +6 -0
- package/skills-src/release-docs/SKILL.md +6 -0
- package/skills-src/release-help/SKILL.md +7 -2
- package/skills-src/release-marketplace/SKILL.md +6 -0
- package/skills-src/release-prepare/SKILL.md +8 -2
- package/skills-src/release-publish/SKILL.md +7 -1
- package/skills-src/release-reconcile/SKILL.md +6 -0
- package/skills-src/release-setup/SKILL.md +9 -1
- package/skills-src/release-verify/SKILL.md +6 -0
- package/src/adapters/plugin-marketplace.mjs +7 -12
- package/src/artifacts/producer-registry.mjs +4 -3
- package/src/commands/assess.mjs +23 -3
- package/src/commands/post-release-local.mjs +2 -2
- package/src/commands/prepare.mjs +5 -30
- package/src/commands/professional-proof.mjs +506 -0
- package/src/commands/setup.mjs +16 -5
- package/src/commands/verify-records.mjs +14 -0
- package/src/core/baseline.mjs +9 -1
- package/src/core/derived-artifact-gates.mjs +38 -9
- package/src/core/redact.mjs +12 -5
- package/src/core/source-authority.mjs +28 -3
- package/src/npm/npm-entry-closure.mjs +71 -9
- package/src/producers/build-adapters.mjs +18 -5
- package/src/producers/foundation-resource-projection.mjs +3 -3
- package/src/producers/render-public-assets.mjs +2 -1
- package/src/producers/sync-skills.mjs +2 -1
- package/src/schemas/file-set-apply-request.schema.json +78 -0
- package/src/schemas/file-set-event-payload.schema.json +55 -0
- package/src/schemas/file-set-prune-request.schema.json +17 -0
- package/src/schemas/file-set-recovery-request.schema.json +29 -0
- package/src/schemas/file-set-result.schema.json +79 -0
- package/src/schemas/professional-conclusion.schema.json +132 -0
- package/src/schemas/project-manifest.schema.json +91 -0
- package/src/schemas/state-store-recovery-observation.schema.json +129 -0
- package/src/snapshot/frozen.mjs +19 -14
- package/src/core/run-retention.mjs +0 -227
|
@@ -37,7 +37,7 @@ registerPathRedactor(redactSensitivePaths);
|
|
|
37
37
|
|
|
38
38
|
const execFile = promisify(execFileCb);
|
|
39
39
|
|
|
40
|
-
const COMMANDS = new Set(['help', 'setup', 'assess', 'prepare', 'approve', 'publish', 'reconcile', 'verify', 'verify-records', 'postverify', 'ship', 'post-release', 'attest', 'hooks', 'artifacts', 'docs', 'distribute', 'route', 'lineage']);
|
|
40
|
+
const COMMANDS = new Set(['help', 'setup', 'assess', 'prepare', 'approve', 'publish', 'reconcile', 'verify', 'verify-records', 'read-proof', 'postverify', 'ship', 'post-release', 'attest', 'hooks', 'artifacts', 'docs', 'distribute', 'route', 'lineage']);
|
|
41
41
|
|
|
42
42
|
function printHubManualTargets(targets = []) {
|
|
43
43
|
for (const target of targets) {
|
|
@@ -366,6 +366,7 @@ Commands:
|
|
|
366
366
|
reconcile Resume PARTIAL state from evidence; conflicts require a human
|
|
367
367
|
verify Fresh remote and consumer verification; only this reaches VERIFIED
|
|
368
368
|
verify-records Verify explicitly supplied historical plan, approval, and run records offline
|
|
369
|
+
read-proof Read one family professional-conclusion file without rescanning the target
|
|
369
370
|
postverify Run approved postVerify hooks from a VERIFIED run in an independent run
|
|
370
371
|
ship Resume one durable prepare -> approve -> publish -> verify flow; completes a parked
|
|
371
372
|
postVerify hook once its checkpoint approval is provided (--hook-approval)
|
|
@@ -389,6 +390,9 @@ Options:
|
|
|
389
390
|
--approval <path> Path to the release-level approval record (required for publish/postverify)
|
|
390
391
|
--production Prepare immutable Git/npm production artifacts
|
|
391
392
|
--output <path> Override prepare/approve output path (non-production only)
|
|
393
|
+
--conclusion-output <absolute-path> Exclusive professional-conclusion file for setup --assess-adoption, assess --offline, or verify-records
|
|
394
|
+
--proof-root <path> Root that may be read by read-proof
|
|
395
|
+
--proof <relative> Contained relative proof path for read-proof
|
|
392
396
|
--run-dir <path> Override prepare run directory; production requires one direct child of .release-skill/runs
|
|
393
397
|
--workflow <full|docs|config|marketplace> Workflow profile for prepare (default full). docs/config/marketplace
|
|
394
398
|
deterministically trim code-class gates (declared hooks, snapshot-verify gates,
|
|
@@ -741,7 +745,26 @@ Options:
|
|
|
741
745
|
|
|
742
746
|
The command reads only these explicit paths. It never scans .release-skill,
|
|
743
747
|
follows paths carried inside records, contacts a remote, writes a file, or
|
|
744
|
-
changes release state
|
|
748
|
+
changes release state. Optional --conclusion-output <absolute-path> creates one
|
|
749
|
+
new professional-conclusion file; existing files are not overwritten.`);
|
|
750
|
+
await exitAfterFlush(0);
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
if (command === 'read-proof' && (args.includes('--help') || args.includes('-h'))) {
|
|
754
|
+
console.log(`release-skill read-proof - Read one family professional-conclusion file
|
|
755
|
+
|
|
756
|
+
Usage:
|
|
757
|
+
release-skill read-proof --proof-root <root> --proof <relative> --json
|
|
758
|
+
|
|
759
|
+
Options:
|
|
760
|
+
--proof-root <path> Root the caller allows this command to read
|
|
761
|
+
--proof <relative> Contained relative path of the proof file
|
|
762
|
+
--json Required; output one JSON result
|
|
763
|
+
-h, --help Show this help message and exit
|
|
764
|
+
|
|
765
|
+
The command reads only that relative path. It does not rescan the target,
|
|
766
|
+
follow paths inside the proof body, execute the target, or call verify-records
|
|
767
|
+
to reload historical records.`);
|
|
745
768
|
await exitAfterFlush(0);
|
|
746
769
|
}
|
|
747
770
|
|
|
@@ -806,8 +829,9 @@ if (command === 'verify-records') {
|
|
|
806
829
|
const {
|
|
807
830
|
VERIFY_RECORDS_EXIT_CODES,
|
|
808
831
|
verifyReleaseRecords,
|
|
832
|
+
attachVerifyRecordsConclusion,
|
|
809
833
|
} = await import('../src/commands/verify-records.mjs');
|
|
810
|
-
|
|
834
|
+
let result = verifyReleaseRecords({
|
|
811
835
|
plan,
|
|
812
836
|
approval,
|
|
813
837
|
targetRun,
|
|
@@ -815,10 +839,53 @@ if (command === 'verify-records') {
|
|
|
815
839
|
unitId,
|
|
816
840
|
targetVersion,
|
|
817
841
|
});
|
|
842
|
+
try {
|
|
843
|
+
result = await attachVerifyRecordsConclusion(
|
|
844
|
+
result,
|
|
845
|
+
value('--conclusion-output'),
|
|
846
|
+
`${unitId ?? 'missing-unit'}@${targetVersion ?? 'missing-version'}`,
|
|
847
|
+
);
|
|
848
|
+
} catch (err) {
|
|
849
|
+
console.log(JSON.stringify({
|
|
850
|
+
error: err.code ?? 'UNKNOWN_ERROR',
|
|
851
|
+
message: err.message,
|
|
852
|
+
details: publicErrorDetails(err),
|
|
853
|
+
exitCode: err.exitCode ?? 1,
|
|
854
|
+
}));
|
|
855
|
+
await exitAfterFlush(err.exitCode ?? 1);
|
|
856
|
+
}
|
|
818
857
|
console.log(JSON.stringify(result));
|
|
819
858
|
await exitAfterFlush(VERIFY_RECORDS_EXIT_CODES[result.status]);
|
|
820
859
|
}
|
|
821
860
|
|
|
861
|
+
if (command === 'read-proof') {
|
|
862
|
+
const value = (flag) => {
|
|
863
|
+
const index = args.indexOf(flag);
|
|
864
|
+
return index !== -1 && args[index + 1] && !args[index + 1].startsWith('--')
|
|
865
|
+
? args[index + 1]
|
|
866
|
+
: undefined;
|
|
867
|
+
};
|
|
868
|
+
if (!hasJson) {
|
|
869
|
+
console.log(JSON.stringify({
|
|
870
|
+
status: 'unavailable',
|
|
871
|
+
reason: '--json is required for read-proof',
|
|
872
|
+
provider: null,
|
|
873
|
+
conclusion: null,
|
|
874
|
+
}));
|
|
875
|
+
await exitAfterFlush(2);
|
|
876
|
+
}
|
|
877
|
+
const {
|
|
878
|
+
READ_EXIT_CODES,
|
|
879
|
+
readProfessionalProof,
|
|
880
|
+
} = await import('../src/commands/professional-proof.mjs');
|
|
881
|
+
const result = await readProfessionalProof({
|
|
882
|
+
proofRoot: value('--proof-root'),
|
|
883
|
+
proofPath: value('--proof'),
|
|
884
|
+
});
|
|
885
|
+
console.log(JSON.stringify(result));
|
|
886
|
+
await exitAfterFlush(READ_EXIT_CODES[result.status] ?? 2);
|
|
887
|
+
}
|
|
888
|
+
|
|
822
889
|
// --- Setup command routing ---
|
|
823
890
|
if (command === 'setup') {
|
|
824
891
|
const rootIdx = args.indexOf('--root');
|
|
@@ -836,8 +903,12 @@ if (command === 'setup') {
|
|
|
836
903
|
// observations, structured gate drafts. Never writes, never goes remote.
|
|
837
904
|
if (args.includes('--assess-adoption')) {
|
|
838
905
|
try {
|
|
906
|
+
const conclusionIdx = args.indexOf('--conclusion-output');
|
|
907
|
+
const conclusionOutput = conclusionIdx !== -1 && args[conclusionIdx + 1] && !args[conclusionIdx + 1].startsWith('--')
|
|
908
|
+
? args[conclusionIdx + 1]
|
|
909
|
+
: undefined;
|
|
839
910
|
const setupModule = await import('../src/commands/setup.mjs');
|
|
840
|
-
const report = await setupModule.assessAdoption({ root });
|
|
911
|
+
const report = await setupModule.assessAdoption({ root, conclusionOutput });
|
|
841
912
|
if (hasJson) {
|
|
842
913
|
console.log(JSON.stringify(report, null, 2));
|
|
843
914
|
} else {
|
|
@@ -955,10 +1026,14 @@ if (command === 'assess') {
|
|
|
955
1026
|
const offline = args.includes('--offline') || !args.includes('--online');
|
|
956
1027
|
const outputIdx = args.indexOf('--output');
|
|
957
1028
|
const output = outputIdx !== -1 && args[outputIdx + 1] ? args[outputIdx + 1] : undefined;
|
|
1029
|
+
const conclusionIdx = args.indexOf('--conclusion-output');
|
|
1030
|
+
const conclusionOutput = conclusionIdx !== -1 && args[conclusionIdx + 1] && !args[conclusionIdx + 1].startsWith('--')
|
|
1031
|
+
? args[conclusionIdx + 1]
|
|
1032
|
+
: undefined;
|
|
958
1033
|
|
|
959
1034
|
try {
|
|
960
1035
|
const { assessProject } = await import('../src/commands/assess.mjs');
|
|
961
|
-
const report = await assessProject({ root, offline, output });
|
|
1036
|
+
const report = await assessProject({ root, offline, output, conclusionOutput });
|
|
962
1037
|
|
|
963
1038
|
if (hasJson) {
|
|
964
1039
|
console.log(JSON.stringify(report, null, 2));
|