@pourkit/cli 0.0.0-next-20260704180701 → 0.0.0-next-20260707180736
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -3,7 +3,7 @@ name: codebase-pattern-finder
|
|
|
3
3
|
description: codebase-pattern-finder is a useful subagent_type for finding similar implementations, usage examples, or existing patterns that can be modeled after. It will give you concrete code examples based on what you're looking for! It's sorta like codebase-locator, but it will not only tell you the location of files, it will also give you code details!
|
|
4
4
|
mode: subagent
|
|
5
5
|
hidden: true
|
|
6
|
-
model: opencode-go/deepseek-v4-
|
|
6
|
+
model: opencode-go/deepseek-v4-flash
|
|
7
7
|
permission:
|
|
8
8
|
grep: allow
|
|
9
9
|
glob: allow
|
package/dist/cli.js
CHANGED
|
@@ -10288,19 +10288,14 @@ function runQueueLoopEffect(options, results) {
|
|
|
10288
10288
|
};
|
|
10289
10289
|
}
|
|
10290
10290
|
const newResults = [...results, outcome];
|
|
10291
|
-
|
|
10292
|
-
|
|
10293
|
-
|
|
10294
|
-
|
|
10295
|
-
|
|
10296
|
-
|
|
10297
|
-
|
|
10298
|
-
|
|
10299
|
-
allProcessedIssuesFinalizedIntoPrdBranch: Boolean(options.queueRunContext?.prdBranch) && newResults.length > 0 && newResults.every(
|
|
10300
|
-
(result) => result.runResult.publicationStatus === "merged"
|
|
10301
|
-
)
|
|
10302
|
-
};
|
|
10303
|
-
}
|
|
10291
|
+
const nextOptions = options.queueRunContext?.resumeIssueNumber !== void 0 ? {
|
|
10292
|
+
...options,
|
|
10293
|
+
queueRunContext: {
|
|
10294
|
+
prdRef: options.queueRunContext.prdRef,
|
|
10295
|
+
prdBranch: options.queueRunContext.prdBranch,
|
|
10296
|
+
...options.queueRunContext.beadsChild ? { beadsChild: options.queueRunContext.beadsChild } : {}
|
|
10297
|
+
}
|
|
10298
|
+
} : options;
|
|
10304
10299
|
const processedIssue = yield* Effect9.tryPromise({
|
|
10305
10300
|
try: () => options.issueProvider.fetchIssue(outcome.selected.number),
|
|
10306
10301
|
catch: (e) => {
|
|
@@ -10311,9 +10306,9 @@ function runQueueLoopEffect(options, results) {
|
|
|
10311
10306
|
}
|
|
10312
10307
|
});
|
|
10313
10308
|
if (processedIssue.state === "closed") {
|
|
10314
|
-
yield* reconcileBlockedEffect(
|
|
10309
|
+
yield* reconcileBlockedEffect(nextOptions);
|
|
10315
10310
|
}
|
|
10316
|
-
return yield* runQueueLoopEffect(
|
|
10311
|
+
return yield* runQueueLoopEffect(nextOptions, newResults);
|
|
10317
10312
|
});
|
|
10318
10313
|
}
|
|
10319
10314
|
function runQueueLoop(options) {
|
|
@@ -13355,6 +13350,7 @@ var BASELINE_MANAGED_SKILLS = [
|
|
|
13355
13350
|
"code-review",
|
|
13356
13351
|
"diagnose",
|
|
13357
13352
|
"explain",
|
|
13353
|
+
"explore-codebase",
|
|
13358
13354
|
"grill-with-docs",
|
|
13359
13355
|
"handoff",
|
|
13360
13356
|
"improve-codebase-architecture",
|
|
@@ -13625,25 +13621,7 @@ function resolveSourceAssetPath(sourceRoot, ...segments) {
|
|
|
13625
13621
|
}
|
|
13626
13622
|
return path5.join(sourceRoot, "pourkit", ...segments);
|
|
13627
13623
|
}
|
|
13628
|
-
var BASELINE_SKILL_NAMES =
|
|
13629
|
-
"code-review",
|
|
13630
|
-
"diagnose",
|
|
13631
|
-
"explain",
|
|
13632
|
-
"grill-with-docs",
|
|
13633
|
-
"handoff",
|
|
13634
|
-
"improve-codebase-architecture",
|
|
13635
|
-
"publish-prd",
|
|
13636
|
-
"secret-commit-guard",
|
|
13637
|
-
"security-review",
|
|
13638
|
-
"ship-current-changes",
|
|
13639
|
-
"tdd",
|
|
13640
|
-
"to-issues",
|
|
13641
|
-
"to-oneshot",
|
|
13642
|
-
"to-prd",
|
|
13643
|
-
"triage",
|
|
13644
|
-
"write-a-skill",
|
|
13645
|
-
"zoom-out"
|
|
13646
|
-
];
|
|
13624
|
+
var BASELINE_SKILL_NAMES = getBaselineManagedSkillNames();
|
|
13647
13625
|
var NO_TOKEN_LABEL_PROVISIONING_WARNING = "Skipped GitHub label provisioning because no GitHub token was provided.";
|
|
13648
13626
|
var DEFAULT_RUNNER_LABELS = {
|
|
13649
13627
|
readyForAgent: "ready-for-agent",
|
|
@@ -16203,48 +16181,53 @@ async function validateWorkflowPack(cwd) {
|
|
|
16203
16181
|
}
|
|
16204
16182
|
for (const skillName of baselineSkills) {
|
|
16205
16183
|
const skillDir = resolve4(cwd, `.pourkit/managed/skills/${skillName}`);
|
|
16184
|
+
const skillSourcePath = resolve4(skillDir, "SKILL.md");
|
|
16206
16185
|
if (!existsSync18(skillDir)) {
|
|
16207
16186
|
failures.push({
|
|
16208
16187
|
severity: "failure",
|
|
16209
16188
|
kind: "missing_managed_asset",
|
|
16210
|
-
path: `.pourkit/managed/skills/${skillName}`,
|
|
16189
|
+
path: `.pourkit/managed/skills/${skillName}/SKILL.md`,
|
|
16211
16190
|
message: `Missing managed skill: ${skillName}`
|
|
16212
16191
|
});
|
|
16192
|
+
} else if (!existsSync18(skillSourcePath)) {
|
|
16193
|
+
failures.push({
|
|
16194
|
+
severity: "failure",
|
|
16195
|
+
kind: "missing_managed_asset",
|
|
16196
|
+
path: `.pourkit/managed/skills/${skillName}/SKILL.md`,
|
|
16197
|
+
message: `Missing managed skill source: ${skillName}/SKILL.md`
|
|
16198
|
+
});
|
|
16213
16199
|
} else {
|
|
16214
|
-
const
|
|
16215
|
-
|
|
16216
|
-
|
|
16217
|
-
|
|
16218
|
-
|
|
16219
|
-
|
|
16220
|
-
|
|
16221
|
-
|
|
16222
|
-
|
|
16223
|
-
|
|
16224
|
-
const
|
|
16225
|
-
|
|
16226
|
-
|
|
16227
|
-
|
|
16228
|
-
|
|
16229
|
-
|
|
16230
|
-
|
|
16231
|
-
|
|
16232
|
-
|
|
16233
|
-
|
|
16234
|
-
|
|
16235
|
-
|
|
16236
|
-
|
|
16237
|
-
|
|
16238
|
-
|
|
16239
|
-
|
|
16240
|
-
|
|
16241
|
-
|
|
16242
|
-
message: `Managed skill ${skillName} content differs from packaged source. Run 'pourkit sync workflow-pack' to repair.`
|
|
16243
|
-
});
|
|
16244
|
-
}
|
|
16200
|
+
const packagedSkillPath = resolvePackagedManagedPath(
|
|
16201
|
+
"skills",
|
|
16202
|
+
skillName,
|
|
16203
|
+
"SKILL.md"
|
|
16204
|
+
);
|
|
16205
|
+
const packagedContent = await readPackagedTextFile(packagedSkillPath);
|
|
16206
|
+
if (packagedContent !== null) {
|
|
16207
|
+
try {
|
|
16208
|
+
const localContent = await readFile6(skillSourcePath, "utf-8");
|
|
16209
|
+
if (localContent !== packagedContent) {
|
|
16210
|
+
const overridePath = resolve4(
|
|
16211
|
+
cwd,
|
|
16212
|
+
`.pourkit/overrides/skills/${skillName}/SKILL.md`
|
|
16213
|
+
);
|
|
16214
|
+
if (existsSync18(overridePath)) {
|
|
16215
|
+
warnings.push({
|
|
16216
|
+
severity: "warning",
|
|
16217
|
+
kind: "overridden",
|
|
16218
|
+
path: `.pourkit/overrides/skills/${skillName}/SKILL.md`,
|
|
16219
|
+
message: `Managed skill ${skillName} is overridden by explicit override.`
|
|
16220
|
+
});
|
|
16221
|
+
} else {
|
|
16222
|
+
failures.push({
|
|
16223
|
+
severity: "failure",
|
|
16224
|
+
kind: "managed_asset_drift",
|
|
16225
|
+
path: `.pourkit/managed/skills/${skillName}/SKILL.md`,
|
|
16226
|
+
message: `Managed skill ${skillName} content differs from packaged source. Run 'pourkit sync workflow-pack' to repair.`
|
|
16227
|
+
});
|
|
16245
16228
|
}
|
|
16246
|
-
} catch {
|
|
16247
16229
|
}
|
|
16230
|
+
} catch {
|
|
16248
16231
|
}
|
|
16249
16232
|
}
|
|
16250
16233
|
}
|
|
@@ -16262,39 +16245,44 @@ async function validateWorkflowPack(cwd) {
|
|
|
16262
16245
|
}
|
|
16263
16246
|
for (const skillName of baselineSkills) {
|
|
16264
16247
|
const projectionDir = resolve4(cwd, `.agents/skills/${skillName}`);
|
|
16248
|
+
const projectionPath = resolve4(projectionDir, "SKILL.md");
|
|
16265
16249
|
if (!existsSync18(projectionDir)) {
|
|
16266
16250
|
warnings.push({
|
|
16267
16251
|
severity: "warning",
|
|
16268
16252
|
kind: "projection_stale",
|
|
16269
|
-
path: `.agents/skills/${skillName}`,
|
|
16253
|
+
path: `.agents/skills/${skillName}/SKILL.md`,
|
|
16270
16254
|
message: `Missing skill projection for ${skillName}. Run 'pourkit sync workflow-pack' to regenerate.`
|
|
16271
16255
|
});
|
|
16256
|
+
} else if (!existsSync18(projectionPath)) {
|
|
16257
|
+
warnings.push({
|
|
16258
|
+
severity: "warning",
|
|
16259
|
+
kind: "projection_stale",
|
|
16260
|
+
path: `.agents/skills/${skillName}/SKILL.md`,
|
|
16261
|
+
message: `Missing skill projection source for ${skillName}. Run 'pourkit sync workflow-pack' to regenerate.`
|
|
16262
|
+
});
|
|
16272
16263
|
} else {
|
|
16273
|
-
const
|
|
16274
|
-
|
|
16275
|
-
|
|
16276
|
-
|
|
16277
|
-
|
|
16278
|
-
|
|
16279
|
-
|
|
16280
|
-
|
|
16281
|
-
|
|
16282
|
-
|
|
16283
|
-
|
|
16284
|
-
|
|
16285
|
-
|
|
16286
|
-
|
|
16287
|
-
|
|
16288
|
-
|
|
16289
|
-
|
|
16290
|
-
|
|
16291
|
-
|
|
16292
|
-
|
|
16293
|
-
message: `Projection for ${skillName} differs from managed source. Run 'pourkit sync workflow-pack' to regenerate.`
|
|
16294
|
-
});
|
|
16295
|
-
}
|
|
16296
|
-
} catch {
|
|
16264
|
+
const managedSourcePath = resolvePackagedManagedPath(
|
|
16265
|
+
"skills",
|
|
16266
|
+
skillName,
|
|
16267
|
+
"SKILL.md"
|
|
16268
|
+
);
|
|
16269
|
+
const packagedContent = await readPackagedTextFile(managedSourcePath);
|
|
16270
|
+
if (packagedContent !== null) {
|
|
16271
|
+
try {
|
|
16272
|
+
const projectionContent = await readFile6(projectionPath, "utf-8");
|
|
16273
|
+
const managedSourceRelativePath = `.pourkit/managed/skills/${skillName}/SKILL.md`;
|
|
16274
|
+
if (projectionContent !== buildOpenCodeSkillProjectionContent(
|
|
16275
|
+
managedSourceRelativePath,
|
|
16276
|
+
packagedContent
|
|
16277
|
+
)) {
|
|
16278
|
+
warnings.push({
|
|
16279
|
+
severity: "warning",
|
|
16280
|
+
kind: "projection_stale",
|
|
16281
|
+
path: `.agents/skills/${skillName}/SKILL.md`,
|
|
16282
|
+
message: `Projection for ${skillName} differs from managed source. Run 'pourkit sync workflow-pack' to regenerate.`
|
|
16283
|
+
});
|
|
16297
16284
|
}
|
|
16285
|
+
} catch {
|
|
16298
16286
|
}
|
|
16299
16287
|
}
|
|
16300
16288
|
}
|
|
@@ -19339,11 +19327,11 @@ function createCliProgram(version) {
|
|
|
19339
19327
|
return program;
|
|
19340
19328
|
}
|
|
19341
19329
|
async function resolveCliVersion() {
|
|
19342
|
-
if (isPackageVersion("0.0.0-next-
|
|
19343
|
-
return "0.0.0-next-
|
|
19330
|
+
if (isPackageVersion("0.0.0-next-20260707180736")) {
|
|
19331
|
+
return "0.0.0-next-20260707180736";
|
|
19344
19332
|
}
|
|
19345
|
-
if (isReleaseVersion("0.0.0-next-
|
|
19346
|
-
return "0.0.0-next-
|
|
19333
|
+
if (isReleaseVersion("0.0.0-next-20260707180736")) {
|
|
19334
|
+
return "0.0.0-next-20260707180736";
|
|
19347
19335
|
}
|
|
19348
19336
|
try {
|
|
19349
19337
|
const root = repoRoot();
|