@skyf0xx/hedgehog 3.0.10 → 3.0.12
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/README.md
CHANGED
|
@@ -48,6 +48,18 @@ The build order is encoded into the project. The AI does not have to remember wh
|
|
|
48
48
|
|
|
49
49
|

|
|
50
50
|
|
|
51
|
+
## Your build order is a graph
|
|
52
|
+
|
|
53
|
+
**Every task** Hedgehog generates **is a node** with explicit dependencies in sqlite.
|
|
54
|
+
|
|
55
|
+
Unlike stories and epics, **the graph locks build order** into an **signal-dense, context-light** path the agents can use.
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
npx @skyf0xx/hedgehog graph
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+

|
|
62
|
+
|
|
51
63
|
## What Hedgehog builds
|
|
52
64
|
|
|
53
65
|
### Full-stack applications
|
|
@@ -156,15 +168,6 @@ from them. It never touches the instructions file, the build graph, the
|
|
|
156
168
|
core workspace, or `skills/BMAD`, since those carry project-specific or
|
|
157
169
|
write-once content.
|
|
158
170
|
|
|
159
|
-
To see the build graph:
|
|
160
|
-
|
|
161
|
-
``` bash
|
|
162
|
-
npx @skyf0xx/hedgehog graph
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
Starts a small local server and opens a live, read-only diagram of every
|
|
166
|
-
task, status and its dependencies.
|
|
167
|
-
|
|
168
171
|
## Why Hedgehog
|
|
169
172
|
|
|
170
173
|
Most AI coding tools improve prompting.
|
package/package.json
CHANGED
|
@@ -15,9 +15,16 @@ schedule — the orchestration wiring: what runs when, retries, backfill entry
|
|
|
15
15
|
|
|
16
16
|
## Adaptation points
|
|
17
17
|
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
- On the Dagster stack, `schedule` is Dagster's own schedule/sensor
|
|
19
|
+
definitions plus the retry policy on each op — real orchestration
|
|
20
|
+
surface that belongs in this repo and earns its own layer.
|
|
21
|
+
- On the stdlib/argparse stack, or when a pipeline is invoked externally
|
|
22
|
+
regardless of stack (cron calling a script, an orchestrator defined
|
|
23
|
+
outside this repo), there is no in-repo orchestrator to retry or
|
|
24
|
+
backfill through: merge `schedule` into `load` and scope it to
|
|
25
|
+
whatever the script itself can do (an idempotent upsert key, a
|
|
26
|
+
`--since`/`--backfill` flag `load` reads), and record retries/
|
|
27
|
+
scheduling as owned by the caller rather than as a gap in this layer.
|
|
21
28
|
- Split `extract` per source (`extract/{module}`) when the pipeline pulls
|
|
22
29
|
from several genuinely different systems with independent failure modes
|
|
23
30
|
and auth; keep one `extract` layer for a single source.
|
|
@@ -15,9 +15,16 @@ cli — argv, output rendering, and the confirmation gate in front of apply
|
|
|
15
15
|
|
|
16
16
|
## Adaptation points
|
|
17
17
|
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
- On the TypeScript substitute (a thin wrapper generating config/manifests
|
|
19
|
+
with no systems-level need), `provider` isn't a live target system —
|
|
20
|
+
there's no observed state to read, so `plan` and `apply` collapse into
|
|
21
|
+
one `render` layer producing the config/manifest text, and `provider`
|
|
22
|
+
drops entirely. The dry-run safety property below doesn't apply: the
|
|
23
|
+
tool's output *is* the printable, diffable artifact, so there's nothing
|
|
24
|
+
further to preview.
|
|
25
|
+
- Merge `plan` into `apply` only for a Go-stack tool that is genuinely
|
|
26
|
+
fire-and-forget (a one-shot bootstrap script) — and note that this gives
|
|
27
|
+
up the dry-run surface, which is the main reason to reach for this shape.
|
|
21
28
|
- Split `provider` per target (`provider/{module}`) when the tool spans
|
|
22
29
|
several systems with independent auth and failure modes; keep one layer
|
|
23
30
|
for a single target.
|
|
@@ -31,4 +38,6 @@ what a plan named. A tool that mutates during planning can't offer a
|
|
|
31
38
|
trustworthy dry run, and dry run is the safety property this shape exists
|
|
32
39
|
to provide — an infra tool without it is a script that edits production
|
|
33
40
|
with no preview. `plan` must be printable and diffable on its own, with
|
|
34
|
-
no credentials required beyond reading observed state.
|
|
41
|
+
no credentials required beyond reading observed state. This boundary is
|
|
42
|
+
moot on the TS/`render`-collapsed substitute above, where there's no live
|
|
43
|
+
target to mutate in the first place.
|