create-pathfinder 3.1.0 → 4.0.0

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.
@@ -1,45 +0,0 @@
1
- # Feature: Load
2
-
3
- Prepare one Feature for execution.
4
-
5
- 1. Select the Feature the human named. Being invoked on it is the approval to
6
- prepare it for execution, so its spec does not already have to say `Ready`.
7
- Its spec is `NN-feature-name.md` in the spec source, and `NN` is its Feature
8
- number.
9
- 2. Read the Feature spec.
10
- 3. Read only the files or context needed for the current work.
11
- 4. Inspect the current Git state.
12
- 5. Stop if a required human decision or explicit dependency blocks the work.
13
- 6. Record the approval in the Feature spec's `## Status`, which holds the
14
- durable lifecycle state:
15
- - `Proposed` becomes `Ready`. That is the only value this action writes.
16
- - `Ready` or `In Progress` is left exactly as it is. Reloading a Feature
17
- mid-work is normal and must not rewrite its state.
18
- - `Complete`, `Cancelled`, or `Superseded` blocks the load. Report it and
19
- stop. Reopening terminal work is the human's decision.
20
-
21
- Do this only once steps 1-5 found no blocker, and before the next step, so a
22
- blocked load never leaves a promoted spec behind.
23
- 7. Create or update `context/current-feature.md` — it does not ship, so the
24
- first load writes it — with:
25
- - Feature number, name, and spec path
26
- - active delivery chunk
27
- - Git state
28
- - blocker, if any
29
- - next action
30
-
31
- Do not record the lifecycle status here. This file is transient workspace
32
- state belonging to one session on one machine; the spec carries the durable
33
- status.
34
- 8. If `context/tracker.md` exists, name the tracked item for this Feature —
35
- its key is that Feature number. Do nothing here if it does not.
36
- 9. Present a short readiness summary.
37
-
38
- Do not implement the Feature. That is `/feature start`.
39
-
40
- Do not scan unrelated repository areas, load history or roadmap by default, or
41
- silently resolve `TBD` decisions.
42
-
43
- Do not rewrite the Feature's substance — its Goal, Context, Requirements, Out of
44
- Scope, Delivery Chunks, or Acceptance Criteria. `## Status` is the one field this
45
- action maintains.
@@ -1,32 +0,0 @@
1
- # Feature: Review
2
-
3
- Review the actual diff and behavior, not only the developer's summary.
4
-
5
- ## Check
6
-
7
- - acceptance criteria
8
- - regressions and important edge cases
9
- - security/privacy when relevant
10
- - accessibility, performance, compatibility, and operations when relevant
11
- - tests and verification
12
- - scope creep
13
- - documentation accuracy
14
-
15
- Use the project's quality priorities and existing standards where relevant.
16
-
17
- ## Output
18
-
19
- Report:
20
-
21
- - `PASS`, or findings by severity
22
- - file/location and impact for each finding
23
- - what was actually verified
24
- - anything important that remains unverified
25
-
26
- Do not modify the implementation unless the human explicitly asks.
27
-
28
- Do not invent findings or treat passing tests as automatic acceptance.
29
-
30
- Do not write the Feature's `## Status`. Review is workflow activity, not
31
- lifecycle state, and a reviewed Feature stays `In Progress` until it is
32
- completed.
@@ -1,33 +0,0 @@
1
- # Feature: Start
2
-
3
- Implement the active delivery chunk.
4
-
5
- 1. Read only the context needed for the current work.
6
- 2. Restate the pre-implementation summary the project's agent guide requires,
7
- and wait for it to be answered where it names a human decision. Do not edit
8
- any file before this step is done.
9
- 3. Record the Feature spec's `## Status` as `In Progress`, before the first file
10
- edit of the first chunk:
11
- - `Ready` becomes `In Progress`. That is the only value this action writes.
12
- - `In Progress` is left exactly as it is. Continuing a Feature across
13
- sessions and chunks is normal and must not rewrite its state.
14
- - Any other status stops the session. Report it. A Feature that was never
15
- loaded is not approved for execution, and terminal work is the human's to
16
- reopen.
17
- 4. Follow the Feature and existing project conventions.
18
- 5. Make the smallest complete change.
19
- 6. Verify the behavior you changed.
20
- 7. Keep the repository stable.
21
- 8. Create or update `context/current-feature.md` with the current state and next
22
- action. Do not record the lifecycle status there; the spec carries it.
23
-
24
- ## Rules
25
-
26
- - Stay inside the approved scope.
27
- - Stop if implementation requires a human decision or material scope change.
28
- - Do not silently add dependencies or adopt prototype code.
29
- - Follow the project's approval and Git rules.
30
- - Do not decide that your own work is accepted.
31
-
32
- When the chunk is done, report what changed, what was verified, and anything
33
- unresolved.
@@ -1,81 +0,0 @@
1
- ---
2
- name: sync-tracker
3
- description: Project Feature specs onto the configured work tracker.
4
- ---
5
-
6
- # Sync Tracker
7
-
8
- Sync project Features to the tracker configured in `context/tracker.md`.
9
-
10
- The repository is canonical.
11
- Tracker state never changes Pathfinder state.
12
-
13
- ## Process
14
-
15
- 1. If `context/tracker.md` does not exist, report that tracking is not
16
- configured and stop. Do not propose configuring one.
17
- 2. Read the tracker configuration. It names the tracker, how to reach it, the
18
- spec source, and how a published item records its Pathfinder key. Stop if it
19
- does not say how the key is recorded — without it a re-run cannot recognise
20
- what it published last time, and would duplicate every item.
21
- 3. Read the approved Feature specs from the spec source. A config that names
22
- none means `context/features/`. If the named source does not exist, report
23
- it and stop rather than falling back.
24
- 4. Build one item per Feature: key, title, and body, composed only from the
25
- spec.
26
- 5. Show the proposed writes.
27
- 6. Ask before the first write that leaves this repository. One approval covers
28
- the run. A projection onto files inside the repository is an ordinary file
29
- write and is not gated.
30
- 7. Create or update only the items that changed.
31
- 8. Report created, updated, and unchanged as counts of writes, not as final
32
- tracker state.
33
-
34
- ## Identity
35
-
36
- Each Feature has one stable key derived from the number in its spec filename.
37
- `to-specs` names every spec `NN-feature-name.md`, so
38
- `27-export-saved-searches.md` is `pathfinder:feature/27` in whichever directory
39
- it sits — moving specs orphans nothing.
40
-
41
- Read the number from the basename only. Never from the directory above it, the
42
- title inside it, or the order the specs happen to be read in.
43
-
44
- Match published items on that key alone. Titles are edited by humans.
45
-
46
- Skip a spec whose filename carries no number and report it by name. Do not
47
- assign one — numbering is `to-specs`' job, and inventing one here would publish
48
- an item that the next run cannot recognise.
49
-
50
- ## Idempotency
51
-
52
- A second run over unchanged Features must issue **zero writes** — not writes
53
- that happen to be no-ops.
54
-
55
- - Compose the body as a pure function of the spec: fixed section order, no
56
- timestamps, no counters, nothing derived from the run.
57
- - Compare normalized, never raw bytes. Strip trailing whitespace per line and
58
- collapse trailing blank lines, on both sides. A tracker is not obliged to
59
- return a body byte-for-byte, and a naive comparison then rewrites every item
60
- forever while looking like working sync.
61
- - Where the config defines tags, compare them as sets, not ordered lists.
62
- - Edit in place. Never close, reopen, delete, or recreate an item.
63
- - Leave any item whose key is absent from this run completely alone.
64
-
65
- `3 items, 0 changes` is the expected second run and the most important line of
66
- output.
67
-
68
- ## Rules
69
-
70
- - Do not decompose Features into tickets.
71
- - Do not derive dependency edges, ordering, or a graph from a spec. A Feature
72
- may mention a dependency under `## Notes / Decisions` for a human to read;
73
- it is prose, not structure, and this skill does not parse or orchestrate it.
74
- - Do not infer labels, tags, status, or other metadata.
75
- - Do not modify Feature specs from tracker state.
76
- - Do not read tracker state back into anything.
77
- - Do not delete tracker items automatically.
78
- - Do not rewrite unchanged items.
79
- - Local Markdown tracking is an ordinary repository/file write.
80
- - External trackers require human approval before writing.
81
- - Stop and report when the config, the specs, and the tracker disagree.