@punk6529/playbook 0.2.3 → 0.2.4
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 +1 -1
- package/src/manifest.js +0 -12
- package/templates/global/INDEX.json +1 -9
- package/templates/project/docs/playbook/INDEX.json +1 -23
- package/templates/project/docs/playbook/cases/_example-001-delete-me.md +0 -24
- package/templates/project/docs/playbook/checklists/_example-001-delete-me.md +0 -10
- package/templates/project/docs/playbook/patterns/_example-001-delete-me.md +0 -15
package/package.json
CHANGED
package/src/manifest.js
CHANGED
|
@@ -9,18 +9,6 @@ const PROJECT_MANAGED_FILES = [
|
|
|
9
9
|
relativePath: "docs/playbook/INDEX.json",
|
|
10
10
|
templatePath: "project/docs/playbook/INDEX.json",
|
|
11
11
|
},
|
|
12
|
-
{
|
|
13
|
-
relativePath: "docs/playbook/cases/_example-001-delete-me.md",
|
|
14
|
-
templatePath: "project/docs/playbook/cases/_example-001-delete-me.md",
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
relativePath: "docs/playbook/patterns/_example-001-delete-me.md",
|
|
18
|
-
templatePath: "project/docs/playbook/patterns/_example-001-delete-me.md",
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
relativePath: "docs/playbook/checklists/_example-001-delete-me.md",
|
|
22
|
-
templatePath: "project/docs/playbook/checklists/_example-001-delete-me.md",
|
|
23
|
-
},
|
|
24
12
|
{
|
|
25
13
|
relativePath: ".codex/skills/playbook-query/SKILL.md",
|
|
26
14
|
templatePath: "project/skills/playbook-query/SKILL.md",
|
|
@@ -1,23 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"case-001-example-node-version-mismatch": {
|
|
3
|
-
"type": "case",
|
|
4
|
-
"title": "Deployment failed due to Node.js version mismatch",
|
|
5
|
-
"tags": ["env", "ci"],
|
|
6
|
-
"path": "cases/_example-001-delete-me.md",
|
|
7
|
-
"created": "2026-01-01"
|
|
8
|
-
},
|
|
9
|
-
"pattern-001-example-pin-runtime-versions": {
|
|
10
|
-
"type": "pattern",
|
|
11
|
-
"title": "Pin runtime versions before upgrading dependencies",
|
|
12
|
-
"tags": ["env", "workflow"],
|
|
13
|
-
"path": "patterns/_example-001-delete-me.md",
|
|
14
|
-
"created": "2026-01-01"
|
|
15
|
-
},
|
|
16
|
-
"checklist-001-example-pre-publish": {
|
|
17
|
-
"type": "checklist",
|
|
18
|
-
"title": "Pre-publish checklist",
|
|
19
|
-
"tags": ["workflow", "ci"],
|
|
20
|
-
"path": "checklists/_example-001-delete-me.md",
|
|
21
|
-
"created": "2026-01-01"
|
|
22
|
-
}
|
|
23
|
-
}
|
|
1
|
+
{}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# Deployment failed due to Node.js version mismatch
|
|
2
|
-
|
|
3
|
-
> Delete this example file and create real cases using the playbook-case skill.
|
|
4
|
-
|
|
5
|
-
## Problem
|
|
6
|
-
|
|
7
|
-
Production deployment failed silently. The build succeeded locally but crashed on startup in CI with `SyntaxError: Unexpected token ??=`.
|
|
8
|
-
|
|
9
|
-
## Context
|
|
10
|
-
|
|
11
|
-
- Local dev environment: Node 20
|
|
12
|
-
- CI runner: Node 16 (inherited from base image, not pinned)
|
|
13
|
-
- The `??=` operator (logical nullish assignment) requires Node 15+
|
|
14
|
-
- No `engines` field in package.json to catch this earlier
|
|
15
|
-
|
|
16
|
-
## Solution
|
|
17
|
-
|
|
18
|
-
1. Added `"engines": { "node": ">=20" }` to package.json
|
|
19
|
-
2. Updated CI base image to `node:20-slim`
|
|
20
|
-
3. Added `engine-strict=true` to `.npmrc` so mismatches fail fast on `npm install`
|
|
21
|
-
|
|
22
|
-
## Takeaway
|
|
23
|
-
|
|
24
|
-
Always pin the Node.js version in `engines` and enforce it. Silent version mismatches cause the worst kind of debugging — everything works locally.
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
# Pre-publish checklist
|
|
2
|
-
|
|
3
|
-
> Delete this example file and create real checklists using the playbook-case skill.
|
|
4
|
-
|
|
5
|
-
- [ ] Run `npm pack --dry-run` and verify included files
|
|
6
|
-
- [ ] Check `files` field in package.json matches intended contents
|
|
7
|
-
- [ ] Verify version number is correct and not already published
|
|
8
|
-
- [ ] Run full test suite: `npm test`
|
|
9
|
-
- [ ] Check for accidentally included secrets or credentials
|
|
10
|
-
- [ ] Confirm README is up to date with current API/usage
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# Pin runtime versions before upgrading dependencies
|
|
2
|
-
|
|
3
|
-
> Delete this example file and create real patterns using the playbook-case skill.
|
|
4
|
-
|
|
5
|
-
## When to Use
|
|
6
|
-
|
|
7
|
-
Apply this pattern whenever you upgrade a major runtime (Node.js, Python, Ruby) or a core dependency that has runtime version requirements.
|
|
8
|
-
|
|
9
|
-
## Pattern
|
|
10
|
-
|
|
11
|
-
1. **Pin the current version first** — add `engines` field (Node), `python_requires` (Python), or equivalent before making any changes
|
|
12
|
-
2. **Upgrade in CI first** — update the CI base image/config before changing local dev setup
|
|
13
|
-
3. **Run full test suite against new version** — don't rely on local smoke tests
|
|
14
|
-
4. **Update lockfile** — regenerate `package-lock.json` / `yarn.lock` under the new runtime
|
|
15
|
-
5. **Communicate** — update README and onboarding docs with new version requirement
|