@mrciphersmith/keryx 0.3.118 → 0.3.120
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/dist/cli.js +104554 -96795
- package/dist/core.js +1767 -1061
- package/package.json +1 -1
- package/src/gdgraph/service.ts +4 -0
- package/src/gdgraph/symbol-reach.ts +1069 -0
- package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/SKILL.md +37 -40
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.md +6 -6
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/orchestrator-prompt.md +1 -1
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.md +12 -18
- package/src/gdskills/bundled/skills/orchestration/task-implementer/input-contract.schema.json +8 -0
- package/src/gdskills/bundled/skills/orchestration/task-implementer/output-contract.schema.json +19 -0
- package/src/gdskills/bundled/skills/platform/scheduled-tasks/SKILL.md +2 -2
- package/src/gdskills/bundled/skills/review/review-architecture/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-backend/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-clean-code/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-core-boundaries/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-flow-graph/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-frontend/SKILL.md +3 -7
- package/src/gdskills/bundled/skills/review/review-frontend-conventions/SKILL.md +4 -6
- package/src/gdskills/bundled/skills/review/review-highload/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-logic/SKILL.md +2 -2
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.detail.md +82 -17
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.md +78 -111
- package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-finding.schema.json +13 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-input.schema.json +38 -0
- package/src/gdskills/bundled/skills/review/review-performance/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-pr-feedback/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-regression/SKILL.md +2 -2
- package/src/gdskills/bundled/skills/review/review-security-code/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-style/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-testing-practices/SKILL.md +1 -1
- package/src/gdskills/bundled/skills/review/review-verifier/SKILL.md +3 -3
- package/src/gdskills/contracts/review-finding.schema.json +25 -0
|
@@ -101,9 +101,9 @@ available, not the strongest one you can describe.**
|
|
|
101
101
|
|
|
102
102
|
### 1. `execution` — run something that fails if the finding is real
|
|
103
103
|
|
|
104
|
-
This is the method that works,
|
|
105
|
-
|
|
106
|
-
|
|
104
|
+
This is the method that works: the project's own test command on one file (`bun test <file>` where the project runs Bun, its `test` script otherwise), its type check, or a three-line script.
|
|
105
|
+
With no shell (a keryx shell child has none), the orchestrator runs it for you — `keryx review verify-run --package <review-dir> --finding <id> -- <command>` — and hands you the saved
|
|
106
|
+
`research-evidence/verify-<id>-<n>.txt`; cite that file as the evidence and the claim is recorded as executed. Without either, the method is not available.
|
|
107
107
|
|
|
108
108
|
The test is not "does the suite pass". It is: **construct the situation the
|
|
109
109
|
finding claims is broken, and see whether it breaks.**
|
|
@@ -24,6 +24,27 @@
|
|
|
24
24
|
"pattern": "^[^#]+#[^#]+$"
|
|
25
25
|
},
|
|
26
26
|
"reviewer": { "type": "string" },
|
|
27
|
+
"reported_by": {
|
|
28
|
+
"title": "Every reviewer that reported this finding, when ingest merged duplicates into it",
|
|
29
|
+
"description": "Written only by the ingest duplicate merge (src/review/dedupe.ts): two or more reviewers reported the same defect — same file, located line within 3 or the same quote, same mechanism — and the round keeps ONE finding instead of N with drifting severity. `reviewer` stays the reviewer whose report became the canonical record; this lists all of them, that one first. Absent means one reviewer reported it.",
|
|
30
|
+
"type": "array",
|
|
31
|
+
"minItems": 2,
|
|
32
|
+
"items": { "type": "string", "minLength": 1 }
|
|
33
|
+
},
|
|
34
|
+
"merged_from": {
|
|
35
|
+
"title": "The findings the duplicate merge folded into this one",
|
|
36
|
+
"description": "Their `global_id` (or `id` when none was minted), so a verifier claim, a commit message or a later round that names an absorbed finding can still be traced to the record that now carries it. Present exactly when `reported_by` is.",
|
|
37
|
+
"type": "array",
|
|
38
|
+
"minItems": 1,
|
|
39
|
+
"items": { "type": "string", "minLength": 1 }
|
|
40
|
+
},
|
|
41
|
+
"merged_problems": {
|
|
42
|
+
"title": "The problem statements of the findings the duplicate merge folded into this one",
|
|
43
|
+
"description": "Written only by the ingest duplicate merge, and only those that differ from this finding's own `problem`: a merge keeps one record per defect but never drops what another reviewer said the defect was.",
|
|
44
|
+
"type": "array",
|
|
45
|
+
"minItems": 1,
|
|
46
|
+
"items": { "type": "string", "minLength": 1 }
|
|
47
|
+
},
|
|
27
48
|
"disposition": {
|
|
28
49
|
"title": "What became of this finding, and the evidence for saying so",
|
|
29
50
|
"description": "Declared HERE and deliberately NOT in the bundled reviewer-finding.schema.json: a reviewer states what is wrong, it never states what became of the finding. The measured reason this exists: precision = acted-on / (acted-on + dismissed-incorrect) computed over the recorded corpus returned 53/53 = 100%, not because the reviewers were right but because nothing on disk could express a wrong finding. `classification` looked like a validity verdict and was assigned from the ingest MODE; decisions.md said the same sentence for every finding. Only `acted-on` and `dismissed-incorrect` say anything about reviewer accuracy, which is why the three non-accuracy dismissals are separate states rather than one `dismissed` bucket — collapsing them is what makes a dismissal rate meaningless.",
|
|
@@ -134,6 +155,10 @@
|
|
|
134
155
|
}
|
|
135
156
|
]
|
|
136
157
|
},
|
|
158
|
+
"path_missing": {
|
|
159
|
+
"type": "boolean",
|
|
160
|
+
"description": "Written, as true, only by `review ingest` when `file` does not exist at the round's reviewed head (a cat-file existence check of `<head>:<file>`). The finding is kept, never dropped, and is listed in scope.md: a finding that cites a path nobody can open is the reviewer's claim, not a located site."
|
|
161
|
+
},
|
|
137
162
|
"symbol": { "type": ["string", "null"] },
|
|
138
163
|
"problem": { "type": "string" },
|
|
139
164
|
"impact": { "type": "string" },
|