opencode-swarm 7.109.2 → 7.109.3
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/.opencode/skills/ci-failure-batching/SKILL.md +39 -0
- package/.opencode/skills/gate-attribution/SKILL.md +31 -0
- package/.opencode/skills/merge-queue-readiness/SKILL.md +37 -0
- package/.opencode/skills/skill-edit-validation/SKILL.md +29 -0
- package/.opencode/skills/worktree-retry-cleanup/SKILL.md +24 -0
- package/dist/cli/{curator-6p9tpprq.js → curator-9q3m25va.js} +6 -6
- package/dist/cli/{curator-llm-factory-wqbm9mwr.js → curator-llm-factory-78dyv010.js} +6 -6
- package/dist/cli/{guardrail-explain-ynge4ww3.js → guardrail-explain-csnawe0d.js} +7 -7
- package/dist/cli/{hive-promoter-qh2rh8x2.js → hive-promoter-xnx734y3.js} +6 -6
- package/dist/cli/{index-3qwaydq1.js → index-3nd7bz90.js} +7 -7
- package/dist/cli/{index-fz1jgbvw.js → index-41fgssqr.js} +22 -2
- package/dist/cli/{index-wg0665ft.js → index-8f10r7ay.js} +2 -2
- package/dist/cli/{index-9qxntjtx.js → index-b15qbvph.js} +190 -41
- package/dist/cli/{index-5gnp8fyw.js → index-mtzjbaaa.js} +3 -3
- package/dist/cli/{index-8a8b5wjf.js → index-r9dbs4zr.js} +1 -1
- package/dist/cli/{index-cqbqynzp.js → index-xyz8epk6.js} +643 -548
- package/dist/cli/{index-mmny81g1.js → index-y5z2qdvk.js} +1 -1
- package/dist/cli/index.js +6 -6
- package/dist/cli/{knowledge-escalator-6v7sjprx.js → knowledge-escalator-9ksrgq7h.js} +3 -3
- package/dist/cli/{knowledge-events-6n3x3he2.js → knowledge-events-ymysgtrr.js} +1 -1
- package/dist/cli/{knowledge-store-exkw6yb1.js → knowledge-store-562fefjy.js} +1 -1
- package/dist/cli/{knowledge-validator-exymfcb9.js → knowledge-validator-b9nvmzjc.js} +4 -2
- package/dist/cli/{skill-generator-mx9br4ty.js → skill-generator-mjfqvnn0.js} +15 -5
- package/dist/config/bundled-skills.d.ts +1 -1
- package/dist/hooks/knowledge-types.d.ts +6 -0
- package/dist/hooks/knowledge-validator.d.ts +5 -0
- package/dist/hooks/skill-invalidator.d.ts +48 -0
- package/dist/index.js +215 -214
- package/dist/services/skill-generator.d.ts +47 -2
- package/dist/tools/knowledge-remove.d.ts +3 -8
- package/package.json +6 -1
|
@@ -594,7 +594,7 @@ async function applyKnowledgeVerdictFeedback(directory, options) {
|
|
|
594
594
|
deltas.push({ id, delta });
|
|
595
595
|
}
|
|
596
596
|
if (deltas.length > 0) {
|
|
597
|
-
const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-
|
|
597
|
+
const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-562fefjy.js");
|
|
598
598
|
await bumpKnowledgeConfidenceBatch(directory, deltas, options?.floorOptions);
|
|
599
599
|
}
|
|
600
600
|
return {
|
package/dist/cli/index.js
CHANGED
|
@@ -7,9 +7,9 @@ import {
|
|
|
7
7
|
getPluginLockFilePaths,
|
|
8
8
|
package_default,
|
|
9
9
|
resolveCommand
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-xyz8epk6.js";
|
|
11
11
|
import"./index-wj4jeavn.js";
|
|
12
|
-
import"./index-
|
|
12
|
+
import"./index-mtzjbaaa.js";
|
|
13
13
|
import"./index-c8s9a3zh.js";
|
|
14
14
|
import"./index-fm7xz1ne.js";
|
|
15
15
|
import"./index-j2v3w1ds.js";
|
|
@@ -20,10 +20,10 @@ import"./index-09xpycan.js";
|
|
|
20
20
|
import {
|
|
21
21
|
DEFAULT_AGENT_CONFIGS
|
|
22
22
|
} from "./index-h4c4rrwx.js";
|
|
23
|
-
import"./index-
|
|
24
|
-
import"./index-
|
|
25
|
-
import"./index-
|
|
26
|
-
import"./index-
|
|
23
|
+
import"./index-b15qbvph.js";
|
|
24
|
+
import"./index-y5z2qdvk.js";
|
|
25
|
+
import"./index-41fgssqr.js";
|
|
26
|
+
import"./index-8f10r7ay.js";
|
|
27
27
|
import"./index-2nt4mq9n.js";
|
|
28
28
|
import"./index-bfwt3abw.js";
|
|
29
29
|
import"./index-wvrj16f0.js";
|
|
@@ -8,9 +8,9 @@ import {
|
|
|
8
8
|
maybeEscalateOnViolation,
|
|
9
9
|
maybeQuarantineOnContradiction,
|
|
10
10
|
readRecentEscalations
|
|
11
|
-
} from "./index-
|
|
12
|
-
import"./index-
|
|
13
|
-
import"./index-
|
|
11
|
+
} from "./index-mtzjbaaa.js";
|
|
12
|
+
import"./index-y5z2qdvk.js";
|
|
13
|
+
import"./index-8f10r7ay.js";
|
|
14
14
|
import"./index-2nt4mq9n.js";
|
|
15
15
|
import"./index-bfwt3abw.js";
|
|
16
16
|
import"./index-jtqkh8jf.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
resolveKnowledgeCounterBaselinePath,
|
|
26
26
|
resolveKnowledgeEventsPath,
|
|
27
27
|
resolveLegacyApplicationLogPath
|
|
28
|
-
} from "./index-
|
|
28
|
+
} from "./index-y5z2qdvk.js";
|
|
29
29
|
import"./index-2nt4mq9n.js";
|
|
30
30
|
import"./index-zgwm4ryv.js";
|
|
31
31
|
import"./index-1cn967sa.js";
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
DANGEROUS_COMMAND_WARNING_PATTERNS,
|
|
9
9
|
INJECTION_PATTERNS,
|
|
10
10
|
INVISIBLE_FORMAT_CHARS,
|
|
11
|
+
RETIRED_SKILL_HISTORY_MAX,
|
|
11
12
|
SECURITY_DEGRADING_PATTERNS,
|
|
12
13
|
_internals,
|
|
13
14
|
appendUnactionable,
|
|
@@ -21,8 +22,8 @@ import {
|
|
|
21
22
|
validateLesson,
|
|
22
23
|
validateSkillCandidatePath,
|
|
23
24
|
validateSkillPath
|
|
24
|
-
} from "./index-
|
|
25
|
-
import"./index-
|
|
25
|
+
} from "./index-41fgssqr.js";
|
|
26
|
+
import"./index-8f10r7ay.js";
|
|
26
27
|
import"./index-2nt4mq9n.js";
|
|
27
28
|
import"./index-bfwt3abw.js";
|
|
28
29
|
import"./index-jtqkh8jf.js";
|
|
@@ -47,6 +48,7 @@ export {
|
|
|
47
48
|
appendUnactionable,
|
|
48
49
|
_internals,
|
|
49
50
|
SECURITY_DEGRADING_PATTERNS,
|
|
51
|
+
RETIRED_SKILL_HISTORY_MAX,
|
|
50
52
|
INVISIBLE_FORMAT_CHARS,
|
|
51
53
|
INJECTION_PATTERNS,
|
|
52
54
|
DANGEROUS_COMMAND_WARNING_PATTERNS,
|
|
@@ -9,10 +9,13 @@ import {
|
|
|
9
9
|
activePath,
|
|
10
10
|
activeRepoRelativePath,
|
|
11
11
|
autoApplyProposals,
|
|
12
|
+
clearDraftSkillLinks,
|
|
13
|
+
clearRetiredSkillLinks,
|
|
12
14
|
clearSkillStale,
|
|
13
15
|
clusterEntries,
|
|
14
16
|
findSkillsBySourceKnowledgeId,
|
|
15
17
|
findStaleSkillsBySourceKnowledgeId,
|
|
18
|
+
generateEvalStub,
|
|
16
19
|
generateSkills,
|
|
17
20
|
inspectSkill,
|
|
18
21
|
isSkillMaturityEligible,
|
|
@@ -21,16 +24,18 @@ import {
|
|
|
21
24
|
markSkillStale,
|
|
22
25
|
parseDraftFrontmatter,
|
|
23
26
|
proposalPath,
|
|
27
|
+
proposalRepoRelativePath,
|
|
24
28
|
regenerateSkill,
|
|
25
29
|
renderSkillMarkdown,
|
|
26
30
|
retireOrMarkStale,
|
|
27
31
|
retireSkill,
|
|
28
32
|
sanitizeSlug,
|
|
29
|
-
selectCandidateEntries
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
import"./index-
|
|
33
|
-
import"./index-
|
|
33
|
+
selectCandidateEntries,
|
|
34
|
+
writeEvalStub
|
|
35
|
+
} from "./index-b15qbvph.js";
|
|
36
|
+
import"./index-y5z2qdvk.js";
|
|
37
|
+
import"./index-41fgssqr.js";
|
|
38
|
+
import"./index-8f10r7ay.js";
|
|
34
39
|
import"./index-2nt4mq9n.js";
|
|
35
40
|
import"./index-bfwt3abw.js";
|
|
36
41
|
import"./index-jtqkh8jf.js";
|
|
@@ -42,12 +47,14 @@ import"./index-vvk2g744.js";
|
|
|
42
47
|
import"./index-7xgqky26.js";
|
|
43
48
|
import"./index-a76rekgs.js";
|
|
44
49
|
export {
|
|
50
|
+
writeEvalStub,
|
|
45
51
|
selectCandidateEntries,
|
|
46
52
|
sanitizeSlug,
|
|
47
53
|
retireSkill,
|
|
48
54
|
retireOrMarkStale,
|
|
49
55
|
renderSkillMarkdown,
|
|
50
56
|
regenerateSkill,
|
|
57
|
+
proposalRepoRelativePath,
|
|
51
58
|
proposalPath,
|
|
52
59
|
parseDraftFrontmatter,
|
|
53
60
|
markSkillStale,
|
|
@@ -56,10 +63,13 @@ export {
|
|
|
56
63
|
isSkillMaturityEligible,
|
|
57
64
|
inspectSkill,
|
|
58
65
|
generateSkills,
|
|
66
|
+
generateEvalStub,
|
|
59
67
|
findStaleSkillsBySourceKnowledgeId,
|
|
60
68
|
findSkillsBySourceKnowledgeId,
|
|
61
69
|
clusterEntries,
|
|
62
70
|
clearSkillStale,
|
|
71
|
+
clearRetiredSkillLinks,
|
|
72
|
+
clearDraftSkillLinks,
|
|
63
73
|
autoApplyProposals,
|
|
64
74
|
activeRepoRelativePath,
|
|
65
75
|
activePath,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const BUNDLED_PROJECT_SKILLS: readonly ["brainstorm", "specify", "clarify-spec", "resume", "clarify", "discover", "consult", "pre-phase-briefing", "council", "deep-dive", "deep-research", "codebase-review-swarm", "swarm-implement", "design-docs", "swarm-pr-review", "swarm-pr-feedback", "swarm-pr-subscribe", "issue-ingest", "plan", "critic-gate", "execute", "phase-wrap", "loop", "writing-tests", "running-tests", "engineering-conventions", "commit-pr"];
|
|
1
|
+
export declare const BUNDLED_PROJECT_SKILLS: readonly ["brainstorm", "specify", "clarify-spec", "resume", "clarify", "discover", "consult", "pre-phase-briefing", "council", "deep-dive", "deep-research", "codebase-review-swarm", "swarm-implement", "design-docs", "swarm-pr-review", "swarm-pr-feedback", "swarm-pr-subscribe", "issue-ingest", "plan", "critic-gate", "execute", "phase-wrap", "loop", "writing-tests", "running-tests", "engineering-conventions", "commit-pr", "worktree-retry-cleanup", "skill-edit-validation", "merge-queue-readiness", "gate-attribution", "ci-failure-batching"];
|
|
2
2
|
interface CopyState {
|
|
3
3
|
files: number;
|
|
4
4
|
bytes: number;
|
|
@@ -90,6 +90,12 @@ export interface ActionableDirectiveFields {
|
|
|
90
90
|
generated_skill_slug?: string;
|
|
91
91
|
/** Repo-local path to generated SKILL.md. */
|
|
92
92
|
generated_skill_path?: string;
|
|
93
|
+
/** G10 (issue #1717): slug of a draft proposal compiled from this entry. */
|
|
94
|
+
draft_generated_skill_slug?: string;
|
|
95
|
+
/** G10 (issue #1717): repo-local path to the draft proposal. */
|
|
96
|
+
draft_generated_skill_path?: string;
|
|
97
|
+
/** G12 (issue #1717): retired skill slugs previously generated from this entry. */
|
|
98
|
+
retired_skill_history?: string[];
|
|
93
99
|
/** Directive priority for ranking/enforcement. */
|
|
94
100
|
directive_priority?: DirectivePriority;
|
|
95
101
|
/**
|
|
@@ -35,6 +35,11 @@ export declare function validateLesson(candidate: string, existingLessons: strin
|
|
|
35
35
|
export declare const ACTIONABLE_STRING_MAX = 200;
|
|
36
36
|
/** Maximum number of items in any actionable list (triggers, required_actions, etc.). */
|
|
37
37
|
export declare const ACTIONABLE_LIST_MAX = 20;
|
|
38
|
+
/**
|
|
39
|
+
* Maximum retired_skill_history entries. Must match the FIFO cap in
|
|
40
|
+
* src/services/skill-generator.ts's clearSkillLinks (`if (history.length > 50)`).
|
|
41
|
+
*/
|
|
42
|
+
export declare const RETIRED_SKILL_HISTORY_MAX = 50;
|
|
38
43
|
/** Generated skill paths must be repo-local under one of these prefixes. */
|
|
39
44
|
export declare const ALLOWED_SKILL_PATH_PREFIXES: string[];
|
|
40
45
|
export interface ActionableValidationResult {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared skill-invalidation helper for knowledge archival/removal paths.
|
|
3
|
+
*
|
|
4
|
+
* Issue #1717 (G11): the tombstone + retire/stale invalidation sequence was
|
|
5
|
+
* inlined independently in `knowledge-archive.ts` and `knowledge-remove.ts`,
|
|
6
|
+
* and was entirely absent from the curator archive recommendation path. This
|
|
7
|
+
* module is the single shared entry point all three callers use so they can
|
|
8
|
+
* no longer diverge.
|
|
9
|
+
*
|
|
10
|
+
* Contract:
|
|
11
|
+
* - Writes an audit tombstone (fire-and-forget, fail-open) unless
|
|
12
|
+
* `skipTombstone:true` (knowledge-remove hard-deletes and historically
|
|
13
|
+
* wrote no tombstone; that behavior is preserved).
|
|
14
|
+
* - Schedules a microtask that retires/marks-stale every generated skill
|
|
15
|
+
* whose source_knowledge_ids reference the archived entry.
|
|
16
|
+
* - Never throws.
|
|
17
|
+
*/
|
|
18
|
+
import { findSkillsBySourceKnowledgeId, findStaleSkillsBySourceKnowledgeId, retireOrMarkStale } from '../services/skill-generator.js';
|
|
19
|
+
import { recordHiveKnowledgeEvent, recordKnowledgeEvent } from './knowledge-events.js';
|
|
20
|
+
import { getArchivedKnowledgeIds } from './knowledge-store.js';
|
|
21
|
+
export interface ArchiveInvalidationContext {
|
|
22
|
+
directory: string;
|
|
23
|
+
entryId: string;
|
|
24
|
+
tier: 'swarm' | 'hive';
|
|
25
|
+
actor: string;
|
|
26
|
+
reason: string;
|
|
27
|
+
mode: 'archive' | 'quarantine' | 'purge';
|
|
28
|
+
evidence?: string;
|
|
29
|
+
previousStatus?: string;
|
|
30
|
+
skipTombstone?: boolean;
|
|
31
|
+
sourceLabel?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Pre-computed archived-ID set for callers invalidating multiple entries
|
|
34
|
+
* in one batch (e.g. curator processing several archive recommendations).
|
|
35
|
+
* Skips this call's own `getArchivedKnowledgeIds` scan when provided.
|
|
36
|
+
*/
|
|
37
|
+
precomputedArchivedIds?: Set<string>;
|
|
38
|
+
}
|
|
39
|
+
export declare function writeArchiveTombstoneAndInvalidateSkills(ctx: ArchiveInvalidationContext): Promise<void>;
|
|
40
|
+
export declare const _internals: {
|
|
41
|
+
writeArchiveTombstoneAndInvalidateSkills: typeof writeArchiveTombstoneAndInvalidateSkills;
|
|
42
|
+
recordKnowledgeEvent: typeof recordKnowledgeEvent;
|
|
43
|
+
recordHiveKnowledgeEvent: typeof recordHiveKnowledgeEvent;
|
|
44
|
+
getArchivedKnowledgeIds: typeof getArchivedKnowledgeIds;
|
|
45
|
+
findSkillsBySourceKnowledgeId: typeof findSkillsBySourceKnowledgeId;
|
|
46
|
+
findStaleSkillsBySourceKnowledgeId: typeof findStaleSkillsBySourceKnowledgeId;
|
|
47
|
+
retireOrMarkStale: typeof retireOrMarkStale;
|
|
48
|
+
};
|