@skyf0xx/hedgehog-core-deepseek-harness 0.3.2 → 0.3.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyf0xx/hedgehog-core-deepseek-harness",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "description": "Hedgehog's deepseek-harness core: a pinned DSH/Cordis plugin workspace, a tool-plugin generator, and the skills that drive building DeepSeek Harness plugins with Hedgehog's build discipline.",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -1,14 +1,25 @@
1
1
  ---
2
2
  name: dsh-pin-upgrade
3
- description: Use when a new DeepSeek Harness (DSH) release appears and this repo's pin (workspace/package.json's @deepseek-ai/dsh and @deepseek-ai/dsh-tools) may need bumping to it. Triggers on "new DSH release", "deepseek-harness released", "check for a DSH update", "bump the DSH pin", or a deepseek-ai/deepseek-harness release URL. Covers this core package's own maintenance — not something a consuming project or harness-eng runs.
3
+ description: Use when a new DeepSeek Harness (DSH) release appears and this repo's pin (workspace/package.json's @deepseek-ai/dsh and @deepseek-ai/dsh-tools) may need bumping to it. Triggers on "new DSH release", "deepseek-harness released", "check for a DSH update", "bump the DSH pin", or a deepseek-ai/deepseek-harness release URL. Covers this core package's own upgrade to feature parity with upstream — not something a consuming project or harness-eng runs.
4
4
  ---
5
5
 
6
6
  # DSH Pin Upgrade
7
7
 
8
- This is maintenance on **this repo**, the core package — not on a
8
+ This is an upgrade of **this repo**, the core package — not on a
9
9
  project built with it. `harness-eng` and the other shipped skills never
10
10
  invoke this one; it doesn't belong in `hedgehog-core.yaml`'s manifest.
11
11
 
12
+ **The goal is feature parity with the tag being adopted, every time —
13
+ not damage control.** A bump that only confirms nothing broke and stops
14
+ there is an incomplete run of this skill. If the new tag documents a
15
+ capability this skill's shapes don't yet catalog — a new confirmed
16
+ event, a new `ctx.*` service, a subsystem doc that graduated from thin
17
+ to worked-example-complete — cataloging it is not optional follow-up
18
+ work; it's what step 4 is for, on every bump, not just the ones where
19
+ something looks broken. A pin bump that leaves `dsh-plugin-shapes` only
20
+ as current as it needs to be to avoid lying, rather than as current as
21
+ the new tag actually allows, has not finished the job.
22
+
12
23
  DSH is pre-1.0 and moves fast. `workspace/package.json` pins
13
24
  `@deepseek-ai/dsh` and `@deepseek-ai/dsh-tools` to an exact tag rather
14
25
  than a caret range (`README.md`'s "Working on this core" section is the
@@ -28,32 +39,51 @@ the pin without re-verifying that file first.**
28
39
 
29
40
  2. **Read the release notes for every version between the current pin
30
41
  and the target**, not just the target's own notes — a skipped
31
- intermediate alpha can carry a breaking change the latest one's notes
32
- don't restate. This step is a *trigger for investigation*, not
33
- something step 4's doc diff automatically covers on its own: for
34
- every breaking-change, removal, or API-shape item you find (a
35
- `ctx.something` removed, a type demoted from class to interface, a
36
- renamed method), identify which specific subsystem doc file owns that
37
- symbol — don't assume it falls inside whatever doc set step 4 happens
38
- to check. Add that doc file to step 4's fetch list explicitly if
42
+ intermediate alpha can carry a change the latest one's notes don't
43
+ restate. Read for **both directions of change, weighted equally**:
44
+ removals/renames/breaking API shifts, *and* new features, new
45
+ sections, new services, or a previously-thin doc becoming complete
46
+ enough to catalog. A new capability that this core doesn't yet teach
47
+ is exactly as much this step's business as a removal that would make
48
+ it teach something false — don't let the word "breaking" narrow what
49
+ counts as worth chasing.
50
+
51
+ This step is a *trigger for investigation*, not something step 4's
52
+ doc diff automatically covers on its own: for every item you find —
53
+ a `ctx.something` removed or added, a type demoted from class to
54
+ interface, a renamed method, a new event, a new subsystem, an "Out of
55
+ scope" item in `dsh-plugin-shapes/SKILL.md` that a doc now resolves —
56
+ identify which specific subsystem doc file owns that symbol. Don't
57
+ assume it falls inside whatever doc set step 4 happens to check. Add
58
+ that doc file to step 4's fetch list explicitly if
39
59
  `dsh-plugin-shapes/SKILL.md` doesn't already cite it, and fetch it
40
- before treating the item as resolved. A symbol change that release
41
- notes surface but no subsystem doc confirms is friction to log via
42
- `hedgehog friction add`, not something to wave through on the
43
- changelog line alone.
44
-
45
- 3. **Grep this repo for anything a breaking or removed feature touches.**
46
- A change in DSH's release notes only matters here if this core's
47
- skills, agents, generator, or templates reference it. If the grep
48
- comes back empty, that feature isn't part of what this core teaches
49
- or scaffolds — note that and move on, don't block the bump on it. An
50
- empty grep result only means nothing in this repo *currently* calls
51
- the changed symbol; it says nothing about whether `dsh-plugin-shapes`'s
52
- catalog makes a claim about that symbol that the new tag has now
53
- falsified. A stale "doesn't exist" or "confirmed" claim about a
54
- symbol nothing in this repo happens to call yet is still a claim this
55
- skill is on the hook for — step 4 is what closes it out, via the
56
- owning doc identified in step 2.
60
+ before treating the item as resolved (added, corrected, or
61
+ deliberately left out with a reason — not merely noticed). A symbol
62
+ change or new feature that release notes surface but no subsystem doc
63
+ confirms is friction to log via `hedgehog friction add`, not something
64
+ to wave through on the changelog line alone, and not something to
65
+ drop just because it's additive rather than breaking.
66
+
67
+ 3. **Grep this repo for anything a removed or changed feature touches.**
68
+ A *removal or rename* in DSH's release notes only requires a code fix
69
+ here if this core's skills, agents, generator, or templates reference
70
+ the old symbol. If that grep comes back empty, no existing code needs
71
+ fixing — note that and move on.
72
+
73
+ This grep step is about existing code only; it says nothing about
74
+ whether to catalog a **new** feature. Don't run the same "empty grep,
75
+ move on" logic against additions — a new `ctx.*` service or event
76
+ won't appear in a grep of this repo precisely because nothing here
77
+ uses it yet, and that absence is the parity gap, not a reason to skip
78
+ it. Every new-feature item step 2 surfaced goes to step 4 regardless
79
+ of what this grep finds.
80
+
81
+ An empty grep result also says nothing about whether
82
+ `dsh-plugin-shapes`'s catalog makes a claim about that symbol that the
83
+ new tag has now falsified. A stale "doesn't exist" or "confirmed"
84
+ claim about a symbol nothing in this repo happens to call yet is still
85
+ a claim this skill is on the hook for — step 4 is what closes it out,
86
+ via the owning doc identified in step 2.
57
87
 
58
88
  4. **Re-verify `dsh-plugin-shapes/SKILL.md` against the new tag's own
59
89
  docs — using that file's citation list, read live, not a copy pasted
@@ -68,12 +98,32 @@ the pin without re-verifying that file first.**
68
98
 
69
99
  Fetch that full set at the new tag and diff each doc claim-by-claim
70
100
  against the skill's catalog: every confirmed event name, confirmed
71
- service/method signature, and "doesn't exist"/"was removed" claim. If
72
- something changed, update the skill's catalog to match — including
73
- its "Verified against" section, so it lists exactly the doc set this
74
- re-check used — before touching the pin line, not after. If nothing
75
- changed, still update the "Verified against DSH tag" line (and add
76
- any doc filenames step 2 surfaced) to the new tag.
101
+ service/method signature, and "doesn't exist"/"was removed" claim —
102
+ and also every section of a cited doc the catalog doesn't yet cover
103
+ at all. Treat these as equally mandatory, not the second one as
104
+ optional polish:
105
+ - **Corrections**: something the catalog claims is now wrong (renamed,
106
+ removed, signature changed) — fix it.
107
+ - **Parity additions**: a confirmed event, service, method, or shape
108
+ the new tag's docs support that the catalog doesn't catalog yet,
109
+ including an "Out of scope, and why" entry whose stated blocker (a
110
+ thin doc, a missing example) the new tag has resolved — add it as a
111
+ new shape or extend an existing one, with the same doc-verified
112
+ code and honesty-note treatment as the rest of the file. A `dsh`
113
+ release note calling something out under "New Features" is a
114
+ prompt to check whether it's plugin-authoring surface the same way
115
+ a breaking-change note is a prompt to check whether it's a
116
+ correction — don't apply that scrutiny to one direction and not the
117
+ other.
118
+
119
+ Update the skill's catalog to match what you find — including its
120
+ "Verified against" section, so it lists exactly the doc set this
121
+ re-check used — before touching the pin line, not after. Do this even
122
+ when the only outcome is "nothing to correct, nothing new to add";
123
+ still update the "Verified against DSH tag" line (and add any doc
124
+ filenames step 2 surfaced) to the new tag. But don't reach for that
125
+ outcome by only checking for corrections and skipping the parity
126
+ pass — the two checks are separate and both required.
77
127
 
78
128
  Also re-check the skill's "Out of scope, and why" section against
79
129
  this same live reading — a tag that adds a `ctx.*` service to a
@@ -115,6 +165,15 @@ the pin without re-verifying that file first.**
115
165
  - Don't bump the pin on release notes alone. The grep-and-diff steps
116
166
  above are what makes the bump safe — skipping them is exactly the
117
167
  drift `dsh-plugin-shapes`'s own header warns against.
168
+ - Don't treat this as maintenance whose job is done once nothing is
169
+ broken. A bump that re-verifies existing claims but never asks "does
170
+ the new tag teach something we don't yet catalog" has only done half
171
+ of step 4. The point of bumping the pin is to stay at feature parity
172
+ with upstream, not just to avoid shipping a stale or false claim.
173
+ - Don't skip a new-feature item because grepping this repo for it comes
174
+ back empty. That emptiness is expected — it's *why* the feature isn't
175
+ covered yet — not a signal to drop it. Only step 3's removal/rename
176
+ check gets to use an empty grep as a reason to stop.
118
177
  - Don't add this skill to `hedgehog-core.yaml`. It's not part of what
119
178
  ships to a consuming project.
120
179
  - Don't treat an app-runtime change (UI behavior, performance, a removed