@joshuafolkken/kit 1.983.0 → 1.1003.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.
- package/.claude/skills/workflow-commands/backlogrun-child.md +4 -5
- package/.claude/skills/workflow-commands/backlogrun-steps.md +1 -1
- package/.github/workflows/sonar-qube.yml +12 -2
- package/CLAUDE.md +2 -2
- package/README.md +30 -21
- package/dist/CLAUDE.md +2 -2
- package/dist/hooks/batch-guard.js +4 -4
- package/dist/hooks/{chunk-ZT65LR3U.js → chunk-4GDR2YTV.js} +4 -4
- package/dist/hooks/{chunk-ASUZGZFT.js → chunk-56LGMJJV.js} +2 -2
- package/dist/hooks/{chunk-LBXQHXMC.js → chunk-6PSTVOLH.js} +263 -74
- package/dist/hooks/{chunk-P3UX7SFN.js → chunk-A2H5I2VD.js} +2 -2
- package/dist/hooks/{chunk-ERXMJJOV.js → chunk-AWTFKKFW.js} +1 -1
- package/dist/hooks/{chunk-IM3KM25Y.js → chunk-EZLHXKJ6.js} +10 -7
- package/dist/hooks/{chunk-APVOACVT.js → chunk-GBJUERYK.js} +1 -1
- package/dist/hooks/{chunk-5JX6HXDX.js → chunk-KPZN42RT.js} +3 -3
- package/dist/hooks/{chunk-47SPMGOD.js → chunk-PAXMLGSS.js} +26 -7
- package/dist/hooks/{chunk-RFPHKU7C.js → chunk-WMIR5SNX.js} +3 -3
- package/dist/hooks/codex-hook-adapter.js +10 -10
- package/dist/hooks/duplicate-read-guard.js +5 -5
- package/dist/hooks/format-edited.js +2 -2
- package/dist/hooks/investigation-guard.js +5 -5
- package/dist/hooks/pretool-guard.js +9 -9
- package/dist/hooks/stop-guard.js +98 -26
- package/dist/josh.js +5 -5
- package/package.json +5 -1
- package/prettier/basic.d.ts +3 -0
- package/prettier/basic.js +10 -0
- package/prettier/index.js +2 -2
- package/prettier/static.js +3 -10
- package/prompts/sonar-hotspot-handling.md +6 -0
- package/prompts/testing-guide.md +1 -1
- package/scripts/agent/agent-diagnostics.ts +1 -0
- package/scripts/agent/agent-role-profile.ts +1 -1
- package/scripts/behavior/behavior-rules.ts +8 -1
- package/scripts/build/build-claude-md.ts +13 -4
- package/scripts/ci/pr-classification.ts +11 -2
- package/scripts/document/document-byte-budget.ts +1 -1
- package/scripts/gate/gate-steps.ts +1 -1
- package/scripts/gate/project-checks.ts +12 -11
- package/scripts/gate/type-check-command.ts +1 -1
- package/scripts/git/git-branch.ts +14 -3
- package/scripts/git/git-command.ts +5 -2
- package/scripts/git/git-issue.ts +13 -5
- package/scripts/git/git-pr.ts +16 -10
- package/scripts/git/git-preflight.ts +138 -0
- package/scripts/git/telegram-notify.ts +21 -0
- package/scripts/hooks/stop-guard.ts +2 -0
- package/scripts/init/basic-path-migration.ts +24 -0
- package/scripts/init/distributed-paths.ts +22 -0
- package/scripts/init/init-actions.ts +27 -19
- package/scripts/init/init-ai-copy.ts +86 -28
- package/scripts/init/{init-static.ts → init-basic.ts} +6 -6
- package/scripts/init/init-bootstrap.ts +4 -3
- package/scripts/init/init-install.ts +1 -1
- package/scripts/init/init-logic-templates.ts +1 -1
- package/scripts/init/init-logic.ts +1 -1
- package/scripts/init/init.ts +41 -19
- package/scripts/init/kit-setup-state.ts +30 -0
- package/scripts/init/kit-written-paths.ts +33 -0
- package/scripts/init/project-profile-cli.ts +15 -1
- package/scripts/init/project-profile.ts +41 -12
- package/scripts/init/session-language-environment.ts +83 -0
- package/scripts/init/start-exec.ts +28 -0
- package/scripts/init/start-plan.ts +35 -13
- package/scripts/init/start-prompt.ts +22 -8
- package/scripts/init/start-setup-pr.ts +138 -0
- package/scripts/init/start-steps.ts +30 -30
- package/scripts/init/start.ts +7 -3
- package/scripts/josh/__snapshots__/josh-command-map.test.ts.snap +3 -3
- package/scripts/josh/josh-commands-development.ts +3 -3
- package/scripts/josh/josh-commands-project.ts +2 -2
- package/scripts/lane/lane-leftover.ts +143 -0
- package/scripts/lane/lane-open.ts +14 -1
- package/scripts/lint/cspell-cached.ts +3 -3
- package/scripts/lint/format.ts +1 -1
- package/scripts/lint/lint-parallel.ts +2 -2
- package/scripts/propagate/propagate-steps.ts +14 -1
- package/scripts/rules/filing-cap.ts +1 -0
- package/scripts/rules/issue-citation.ts +30 -1
- package/scripts/rules/last-prompt.ts +79 -0
- package/scripts/rules/stop-rules.ts +5 -3
- package/scripts/run/run-hold.ts +3 -3
- package/scripts/run/run-preflight.ts +75 -5
- package/scripts/run/run-progress-cli.ts +14 -2
- package/scripts/safe-chain/ci-installer-pin.ts +19 -12
- package/scripts/safe-chain/project-config.ts +1 -1
- package/scripts/sync/sync-ai-files.ts +204 -0
- package/scripts/sync/sync.ts +48 -184
- package/scripts/test/josh-harness-environment.ts +1 -1
- package/scripts/test/pilot-files.ts +0 -1
- package/scripts/test/test-declared-changed.ts +1 -1
- package/scripts/test/test-declared-logic.ts +55 -14
- package/scripts/test/test-declared.ts +23 -11
- package/scripts/test/test-unit-guard.ts +6 -6
- package/scripts/time-runtime/time-shell.ts +36 -2
- package/scripts-ai/git-workflow.ts +10 -0
- package/templates/CLAUDE.basic.md +8 -0
- package/templates/workflows/ci.yml +27 -0
- /package/{templates/CLAUDE.static.md → dist/CLAUDE.basic.md} +0 -0
- /package/templates/{cursorrules.static → cursorrules.basic} +0 -0
- /package/templates/{pnpm-workspace.static.yaml → pnpm-workspace.basic.yaml} +0 -0
- /package/templates/{prettierignore.static → prettierignore.basic} +0 -0
|
@@ -200,24 +200,45 @@ jobs:
|
|
|
200
200
|
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
201
201
|
run: pnpm install --frozen-lockfile --ignore-scripts
|
|
202
202
|
|
|
203
|
+
# A `basic` project has no `prepare`, no build and no SvelteKit, so the ordered steps below
|
|
204
|
+
# would fail on its first pull request (joshuafolkken/kit#2814). The profile is read from
|
|
205
|
+
# `josh profile` rather than re-derived here, and a basic project hands the whole check set to
|
|
206
|
+
# `josh gate`, which already decides per profile which checks apply. A `case` instead of a pipe
|
|
207
|
+
# into `grep -q`, for the `pipefail` reason given at `Detect E2E specs` below.
|
|
208
|
+
- name: Resolve project profile
|
|
209
|
+
id: profile
|
|
210
|
+
run: |
|
|
211
|
+
profile=$(pnpm --silent josh profile)
|
|
212
|
+
echo "${profile}"
|
|
213
|
+
case "${profile}" in
|
|
214
|
+
*'profile: basic ('*) echo 'is_basic=true' >> "$GITHUB_OUTPUT" ;;
|
|
215
|
+
*) echo 'is_basic=false' >> "$GITHUB_OUTPUT" ;;
|
|
216
|
+
esac
|
|
217
|
+
|
|
203
218
|
- name: Run spell check
|
|
219
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
204
220
|
run: pnpm josh cspell:dot
|
|
205
221
|
|
|
206
222
|
- name: Prepare
|
|
223
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
207
224
|
run: pnpm prepare
|
|
208
225
|
|
|
209
226
|
- name: Run type check
|
|
227
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
210
228
|
run: pnpm exec svelte-kit sync && pnpm exec svelte-check --tsconfig ./tsconfig.json --threshold error
|
|
211
229
|
|
|
212
230
|
- name: Run prettier check
|
|
231
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
213
232
|
run: pnpm exec prettier --check .
|
|
214
233
|
|
|
215
234
|
# Build before eslint so generated outputs exist for type-aware linting.
|
|
216
235
|
# The same build output is reused by the size check below.
|
|
217
236
|
- name: Build
|
|
237
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
218
238
|
run: pnpm build
|
|
219
239
|
|
|
220
240
|
- name: Run eslint check
|
|
241
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
221
242
|
run: pnpm exec eslint . --cache --cache-strategy content
|
|
222
243
|
|
|
223
244
|
# Vitest browser-mode projects (*.svelte.test.ts) drive a real Playwright browser,
|
|
@@ -233,9 +254,15 @@ jobs:
|
|
|
233
254
|
run: ./node_modules/.bin/playwright install --with-deps ${PLAYWRIGHT_BROWSERS}
|
|
234
255
|
|
|
235
256
|
- name: Run unit tests
|
|
257
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
236
258
|
run: pnpm josh test:unit
|
|
237
259
|
|
|
260
|
+
- name: Run verification gate
|
|
261
|
+
if: steps.profile.outputs.is_basic == 'true'
|
|
262
|
+
run: pnpm josh gate --verbose
|
|
263
|
+
|
|
238
264
|
- name: Check bundle size
|
|
265
|
+
if: steps.profile.outputs.is_basic != 'true'
|
|
239
266
|
run: pnpm size-limit
|
|
240
267
|
|
|
241
268
|
security:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|