@fro.bot/systematic 3.14.4 → 3.14.5
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/package.json
CHANGED
|
@@ -127,20 +127,22 @@ Launch research subagents. Each returns text data to the orchestrator.
|
|
|
127
127
|
- Identifies cross-references and links
|
|
128
128
|
- Finds related GitHub issues
|
|
129
129
|
- Flags any related learning or pattern docs that may now be stale, contradicted, or overly broad
|
|
130
|
-
- **Assesses overlap** with the new doc being created across five dimensions: problem statement, root cause, solution approach, referenced files, and prevention rules.
|
|
130
|
+
- **Assesses overlap** with the new doc being created across five dimensions: problem statement, root cause, solution approach, referenced files, and prevention rules. Judge each dimension as match or no-match first, then count the matches, then read the score off the count:
|
|
131
131
|
- **High**: 4-5 dimensions match — essentially the same problem solved again
|
|
132
132
|
- **Moderate**: 2-3 dimensions match — same area but different angle or solution
|
|
133
133
|
- **Low**: 0-1 dimensions match — related but distinct
|
|
134
|
-
|
|
134
|
+
|
|
135
|
+
The score is a function of the count, not a separate judgment about how related the docs feel. Two docs on the same topic that match on one dimension score Low. When the score you are inclined to write disagrees with the count, the count wins.
|
|
136
|
+
- Returns: Links, relationships, refresh candidates, and overlap assessment. State the per-dimension verdicts, then the resulting count, then the score, in that order. Two consistency checks apply in sequence and both must hold: the score follows the count, and the recommendation follows the score. High overlap means update the existing doc, so an assessment that scores High while recommending a new doc has broken the second check even if the first one held. Either break is a defect to re-derive, not a nuance to note.
|
|
135
137
|
|
|
136
138
|
**Search strategy (grep-first filtering for efficiency):**
|
|
137
139
|
|
|
138
|
-
1. Extract keywords from the problem context:
|
|
140
|
+
1. Extract keywords from the problem context: technical terms, error messages, component types. Separately, enumerate the `module:` values already in use across `docs/solutions/` and pick the one or two closest to this problem, rather than inferring a module name from the problem text. Module values are curated identifiers that often do not appear in a problem description at all, so keyword search alone will not find docs clustered under one — and docs sharing a module are among the highest-value candidates.
|
|
139
141
|
2. If the problem category is clear, narrow search to the matching `docs/solutions/<category>/` directory
|
|
140
142
|
3. Use the native content-search tool (e.g., Grep in OpenCode) to pre-filter candidate files BEFORE reading any content. Run multiple searches in parallel, case-insensitive, targeting frontmatter fields. These are template patterns -- substitute actual keywords:
|
|
141
143
|
- `title:.*<keyword>`
|
|
142
144
|
- `tags:.*(<keyword1>|<keyword2>)`
|
|
143
|
-
- `module:.*<module name>`
|
|
145
|
+
- `module:.*<module name>` — fill from the values enumerated in step 1, not from free-text keywords
|
|
144
146
|
- `component:.*<component>`
|
|
145
147
|
4. If search returns >25 candidates, re-run with more specific patterns. If <3, broaden to full content search
|
|
146
148
|
5. Read only frontmatter (first 30 lines) of candidate files to score relevance
|
|
@@ -422,6 +424,7 @@ What's next?
|
|
|
422
424
|
|
|
423
425
|
Overlap detected: docs/solutions/performance-issues/n-plus-one-queries.md
|
|
424
426
|
Matched dimensions: problem statement, root cause, solution, referenced files
|
|
427
|
+
Count: 4 of 5 -> High
|
|
425
428
|
Action: Updated existing doc with fresher code examples and prevention tips
|
|
426
429
|
|
|
427
430
|
File updated:
|