pi-usereq 0.40.0 → 0.42.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/CHANGELOG.md +48 -0
- package/README.md +9 -3
- package/package.json +7 -4
- package/pi-usereq/docs/REFERENCES.md +303 -286
- package/pi-usereq/docs/REQUIREMENTS.md +18 -5
- package/pi-usereq/docs/WORKFLOW.md +47 -13
- package/scripts/install-static-checkers.ts +125 -0
- package/src/core/config.ts +5 -5
- package/src/core/prompt-command-runtime.ts +6 -6
- package/src/core/prompts.ts +6 -6
- package/src/core/req-references-command.ts +3 -3
- package/src/core/req-reset-command.ts +3 -3
- package/src/core/runtime-project-paths.ts +3 -3
- package/src/core/static-check.ts +61 -4
- package/src/index.ts +32 -9
- package/tests/extension-registration.test.ts +291 -1
- package/tests/prompt-command-summary.test.ts +36 -0
- package/tests/static-check-bundled.test.ts +100 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,49 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.42.0](https://github.com/Ogekuri/PI-useReq/compare/v0.41.0..v0.42.0) - 2026-07-10
|
|
4
|
+
### 🚜 Changes
|
|
5
|
+
- bundle pyright/ruff/eslint and add bundled-bin resolution [useReq] *(static-check)*
|
|
6
|
+
- Add pyright, ruff, and eslint as pinned npm dependencies with a best-effort postinstall installer (scripts/install-static-checkers.ts) that probes bundled node_modules/.bin, attempts npm install on miss, prints native-checker guidance, and always returns 0.
|
|
7
|
+
- Add resolveCheckerExecutable bundled-bin-plus-PATH resolver and checkDefaultCheckersAvailability session_start helper. Change TypeScript default static-check entry from npx+eslint to eslint. Emit one warning notification during session_start for missing enabled checkers without aborting.
|
|
8
|
+
- Add tests/static-check-bundled.test.ts covering resolveCheckerExecutable precedence, postinstall exit-code-0 invariant, and session_start missing-checker reporting. Update REQUIREMENTS.md (REQ-339..REQ-344, DES-017/018, TST-123..125), WORKFLOW.md, README.md, and REFERENCES.md.
|
|
9
|
+
|
|
10
|
+
## [0.41.0](https://github.com/Ogekuri/PI-useReq/compare/v0.40.0..v0.41.0) - 2026-07-10
|
|
11
|
+
### 🐛 Bug Fixes
|
|
12
|
+
- await and suppress summary sendMessage to prevent unhandled rejection breaking worktree merge [useReq] *(prompt-delivery)*
|
|
13
|
+
- deliverPromptCommand now awaits the non-critical display:true summary sendMessage and suppresses its failures before dispatching the authoritative hidden display:false prompt turn with triggerTurn:true
|
|
14
|
+
- a rejecting fire-and-forget summary sendMessage previously surfaced as an unhandled rejection (Node default --unhandled-rejections=throw) that could terminate the process before prompt-end closure ran the worktree merge, branch deletion, and worktree deletion
|
|
15
|
+
- add regression tests covering the production sendMessage triggerTurn path, the pi.sendMessage fallback, and a rejecting summary that must not interrupt the merge
|
|
16
|
+
- update WORKFLOW.md call-traces and regenerate REFERENCES.md
|
|
17
|
+
- resolve tsc errors in req command and session-entry types [useReq] *(types)*
|
|
18
|
+
- Narrow runCapture/runGitCapture return types to SpawnSyncReturns<string>
|
|
19
|
+
- so UTF-8 stdout/stderr string methods are type-safe in
|
|
20
|
+
- req-references-command, req-reset-command, runtime-project-paths.
|
|
21
|
+
- Remove index signature from PromptCommandSessionEntry so the SDK
|
|
22
|
+
- SessionEntry union is structurally assignable, resolving all
|
|
23
|
+
- SessionEntry/ExtensionContext -> PromptCommandSessionContext mismatches.
|
|
24
|
+
- Narrow transitionPromptWorkflowState nextState parameter from
|
|
25
|
+
- DebugWorkflowState to PiUsereqWorkflowState to match setPiUsereqWorkflowState.
|
|
26
|
+
- Regenerate REFERENCES.md.
|
|
27
|
+
- add TST-122 summary test and resolve tsc errors [useReq] *(prompt-command)*
|
|
28
|
+
- Add prompt-command-summary unit test verifying renderPromptCommandSummary renders none for empty context files, static code checks, and enabled tools (TST-122, REQ-338).
|
|
29
|
+
- Narrow runCapture return type to SpawnSyncReturns<string> and initialize switchResult to resolve tsc errors in src/core/prompt-command-runtime.ts; re-export PromptCommandName for prompts.ts.
|
|
30
|
+
- Fix getAllTools type predicate in scripts/lib/recording-extension-api.ts to include required promptGuidelines: string[].
|
|
31
|
+
- Regenerate REFERENCES.md.
|
|
32
|
+
|
|
33
|
+
### 🚜 Changes
|
|
34
|
+
- render none for empty summary lists [useReq] *(prompts)*
|
|
35
|
+
- Add REQ-338 and TST-122 requiring the command invocation summary to
|
|
36
|
+
- render 'none' for context files, static code checks, and enabled
|
|
37
|
+
- tools fields when their enabled-item list is empty.
|
|
38
|
+
- Update renderPromptCommandSummary to fall back to 'none' for the
|
|
39
|
+
- context-files, static-check-languages, and enabled-tools lists.
|
|
40
|
+
- Update WORKFLOW.md node descriptions and regenerate REFERENCES.md.
|
|
41
|
+
- default context files to disabled [useReq] *(config)*
|
|
42
|
+
- Update REQ-328 default to disabled and REQ-333 reset-to-disabled
|
|
43
|
+
- Change DEFAULT_CONTEXT_FILES_FLAG from true to false
|
|
44
|
+
- Update Doxygen docs on normalizeContextFilesFlag and constant
|
|
45
|
+
- Bump SRS version to 0.0.72
|
|
46
|
+
|
|
3
47
|
## [0.40.0](https://github.com/Ogekuri/PI-useReq/compare/v0.39.0..v0.40.0) - 2026-07-10
|
|
4
48
|
### 🚜 Changes
|
|
5
49
|
- hide full prompt on screen, show command summary [useReq] *(prompt-delivery)*
|
|
@@ -547,6 +591,8 @@
|
|
|
547
591
|
- \[0.38.0\]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.38.0
|
|
548
592
|
- \[0.39.0\]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.39.0
|
|
549
593
|
- \[0.40.0\]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.40.0
|
|
594
|
+
- \[0.41.0\]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.41.0
|
|
595
|
+
- \[0.42.0\]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.42.0
|
|
550
596
|
|
|
551
597
|
[0.1.0]: https://github.com/Ogekuri/PI-useReq/releases/tag/v0.1.0
|
|
552
598
|
[0.2.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.1.0..v0.2.0
|
|
@@ -586,3 +632,5 @@
|
|
|
586
632
|
[0.38.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.37.0..v0.38.0
|
|
587
633
|
[0.39.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.38.0..v0.39.0
|
|
588
634
|
[0.40.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.39.0..v0.40.0
|
|
635
|
+
[0.41.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.40.0..v0.41.0
|
|
636
|
+
[0.42.0]: https://github.com/Ogekuri/PI-useReq/compare/v0.41.0..v0.42.0
|
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# PI-useReq/pi-usereq (0.
|
|
1
|
+
# PI-useReq/pi-usereq (0.42.0)
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
4
|
<img src="https://img.shields.io/badge/python-3.11%2B-3776AB?style=flat-square&logo=python&logoColor=white" alt="Python 3.11+">
|
|
@@ -100,8 +100,6 @@ TODO: update/rewrite the project tree
|
|
|
100
100
|
|
|
101
101
|
### Install
|
|
102
102
|
|
|
103
|
-
TODO: complete installation istructions
|
|
104
|
-
|
|
105
103
|
Install:
|
|
106
104
|
```bash
|
|
107
105
|
pi install npm:pi-usereq
|
|
@@ -114,6 +112,14 @@ pi install git:github.com/Ogekuri/PI-useReq
|
|
|
114
112
|
|
|
115
113
|
Reload Pi.
|
|
116
114
|
|
|
115
|
+
Bundled static checkers (`pyright`, `ruff`, `eslint`) install automatically via the
|
|
116
|
+
`postinstall` script. Native checkers (`cppcheck`, `clang-format`) require a one-line
|
|
117
|
+
system install:
|
|
118
|
+
|
|
119
|
+
- Debian/Ubuntu: `sudo apt install cppcheck clang-format`
|
|
120
|
+
- macOS: `brew install cppcheck clang-format`
|
|
121
|
+
- Arch: `sudo pacman -S cppcheck clang`
|
|
122
|
+
- Windows: `choco install cppcheck llvm` or `scoop install cppcheck llvm`
|
|
117
123
|
|
|
118
124
|
### Uninstall
|
|
119
125
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-usereq",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.42.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/Ogekuri/PI-useReq.git"
|
|
@@ -19,7 +19,8 @@
|
|
|
19
19
|
"debug:ext:session": "node --import tsx ./scripts/debug-extension.ts session-start",
|
|
20
20
|
"debug:ext:command": "node --import tsx ./scripts/debug-extension.ts command",
|
|
21
21
|
"debug:ext:tool": "node --import tsx ./scripts/debug-extension.ts tool",
|
|
22
|
-
"debug:ext:sdk": "node --import tsx ./scripts/debug-extension.ts sdk-smoke"
|
|
22
|
+
"debug:ext:sdk": "node --import tsx ./scripts/debug-extension.ts sdk-smoke",
|
|
23
|
+
"postinstall": "node --import tsx ./scripts/install-static-checkers.ts"
|
|
23
24
|
},
|
|
24
25
|
"pi": {
|
|
25
26
|
"extensions": [
|
|
@@ -33,12 +34,14 @@
|
|
|
33
34
|
"@sinclair/typebox": "^0.34.49"
|
|
34
35
|
},
|
|
35
36
|
"dependencies": {
|
|
37
|
+
"eslint": "^10.2.0",
|
|
36
38
|
"fast-glob": "^3.3.3",
|
|
37
|
-
"js-tiktoken": "^1.0.21"
|
|
39
|
+
"js-tiktoken": "^1.0.21",
|
|
40
|
+
"pyright": "^1.1.411",
|
|
41
|
+
"ruff": "^1.5.4"
|
|
38
42
|
},
|
|
39
43
|
"devDependencies": {
|
|
40
44
|
"@eslint/js": "^10.0.1",
|
|
41
|
-
"eslint": "^10.2.0",
|
|
42
45
|
"tsx": "^4.21.0",
|
|
43
46
|
"typescript": "^5.9.3",
|
|
44
47
|
"typescript-eslint": "^8.58.2"
|