pi-usereq 0.32.0 → 0.34.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/.github/workflows/release-npm.yml +3 -7
- package/CHANGELOG.md +15 -0
- package/README.md +1 -1
- package/package.json +1 -1
- package/pi-usereq/docs/REFERENCES.md +187 -187
- package/pi-usereq/docs/REQUIREMENTS.md +8 -8
- package/pi-usereq/docs/WORKFLOW.md +3 -3
- package/src/index.ts +17 -12
- package/tests/extension-registration.test.ts +31 -9
- package/tests/release-workflow.test.ts +61 -0
|
@@ -4703,7 +4703,7 @@ import path from "node:path";
|
|
|
4703
4703
|
|
|
4704
4704
|
---
|
|
4705
4705
|
|
|
4706
|
-
# index.ts | TypeScript |
|
|
4706
|
+
# index.ts | TypeScript | 4412L | 102 symbols | 27 imports | 107 comments
|
|
4707
4707
|
> Path: `src/index.ts`
|
|
4708
4708
|
- @brief Registers the pi-usereq extension commands, tools, and configuration UI.
|
|
4709
4709
|
- @details Bridges the standalone tool-runner layer into the pi extension API by registering prompt commands, agent tools, and interactive configuration menus. Runtime at module load is O(1); later behavior depends on the selected command or tool. Side effects include extension registration, UI updates, filesystem reads/writes, and delegated tool execution.
|
|
@@ -4808,14 +4808,14 @@ cost.
|
|
|
4808
4808
|
- @throws {ReqError} Throws when debug tool wrapper commands are disabled for the active project.
|
|
4809
4809
|
- @satisfies REQ-324, REQ-325
|
|
4810
4810
|
|
|
4811
|
-
### fn `function registerDebugToolCommands(pi: ExtensionAPI): void` (L356-
|
|
4812
|
-
- @brief Registers config-gated debug slash-command wrappers for selected
|
|
4813
|
-
- @details Registers `debug-compress`, `debug-references`, `debug-static-check`, and `debug-tokens` as extension commands that reuse the same runner paths as the corresponding agent tools and write the resulting monolithic text into the editor instead of the LLM content channel. Re-registering the same commands is idempotent because pi keeps the latest same-extension command definition per name. Runtime is O(1) for registration; handler cost depends on the selected runner. Side effects include command registration.
|
|
4811
|
+
### fn `function registerDebugToolCommands(pi: ExtensionAPI): void` (L356-395)
|
|
4812
|
+
- @brief Registers config-gated debug slash-command wrappers for selected project analysis tools.
|
|
4813
|
+
- @details Registers `debug-compress`, `debug-references`, `debug-static-check`, `debug-summarize`, and `debug-tokens` as extension commands that reuse the same runner paths as the corresponding agent tools and write the resulting monolithic text into the editor instead of the LLM content channel. Re-registering the same commands is idempotent because pi keeps the latest same-extension command definition per name. Runtime is O(1) for registration; handler cost depends on the selected runner. Side effects include command registration.
|
|
4814
4814
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
4815
4815
|
- @return {void} No return value.
|
|
4816
4816
|
- @satisfies DES-015, REQ-323, REQ-324, REQ-325
|
|
4817
4817
|
|
|
4818
|
-
### fn `function saveProjectConfig(cwd: string, config: UseReqConfig): void` (
|
|
4818
|
+
### fn `function saveProjectConfig(cwd: string, config: UseReqConfig): void` (L405-408)
|
|
4819
4819
|
- @brief Persists effective project configuration from the extension runtime.
|
|
4820
4820
|
- @details Resolves the project base, normalizes configured local directory paths into project-relative form, and delegates split local/global persistence to `saveConfig` without serializing runtime-derived path metadata. Runtime is O(n) in config size. Side effects include config-file writes.
|
|
4821
4821
|
- @param[in] cwd {string} Current working directory.
|
|
@@ -4823,38 +4823,38 @@ cost.
|
|
|
4823
4823
|
- @return {void} No return value.
|
|
4824
4824
|
- @satisfies REQ-146, REQ-315
|
|
4825
4825
|
|
|
4826
|
-
### fn `function formatLocalConfigPathForMenu(cwd: string): string` (
|
|
4826
|
+
### fn `function formatLocalConfigPathForMenu(cwd: string): string` (L417-421)
|
|
4827
4827
|
- @brief Formats the current local config path for top-level menu display.
|
|
4828
4828
|
- @details Resolves `<base-path>/.pi-usereq.json` from the cwd-derived project base and reuses the shared runtime-path formatter so the `Show local configuration` row uses the documented `~`-relative display contract. Runtime is O(p) in path length. No external state is mutated.
|
|
4829
4829
|
- @param[in] cwd {string} Current working directory.
|
|
4830
4830
|
- @return {string} `~`-relative or absolute local config-path display value.
|
|
4831
4831
|
- @satisfies REQ-162
|
|
4832
4832
|
|
|
4833
|
-
### fn `function formatGlobalConfigPathForMenu(): string` (
|
|
4833
|
+
### fn `function formatGlobalConfigPathForMenu(): string` (L429-431)
|
|
4834
4834
|
- @brief Formats the current global config path for top-level menu display.
|
|
4835
4835
|
- @details Resolves `~/.config/pi-usereq/config.json` through the shared runtime-path formatter so the `Show global configuration` row uses the documented `~`-relative display contract. Runtime is O(p) in path length. No external state is mutated.
|
|
4836
4836
|
- @return {string} `~`-relative or absolute global config-path display value.
|
|
4837
4837
|
- @satisfies REQ-319
|
|
4838
4838
|
|
|
4839
|
-
### fn `function buildTerminalSettingsMenuChoices(options:` (
|
|
4839
|
+
### fn `function buildTerminalSettingsMenuChoices(options:` (L440-451)
|
|
4840
4840
|
- @brief Builds the standardized terminal rows appended to every configuration menu.
|
|
4841
4841
|
- @details Returns the canonical value-less `Reset defaults` row so all configuration menus and descendant selector menus share the same terminal ordering contract without rendering `Save and close`. Runtime is O(1). No external state is mutated.
|
|
4842
4842
|
- @param[in] options {{ resetDefaultsDescription: string }} Menu-specific terminal-row metadata.
|
|
4843
4843
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered terminal menu rows.
|
|
4844
4844
|
- @satisfies REQ-193
|
|
4845
4845
|
|
|
4846
|
-
### iface `interface ResetConfirmationChange` (
|
|
4846
|
+
### iface `interface ResetConfirmationChange` (L457-461)
|
|
4847
4847
|
- @brief Describes one pending reset value change shown in confirmation menus.
|
|
4848
4848
|
- @details Stores the row label plus its previous and next values so reset-confirmation submenus can expose machine-readable and human-verifiable change previews. The interface is compile-time only and introduces no runtime cost.
|
|
4849
4849
|
|
|
4850
|
-
### fn `function formatResetConfirmationValue(previousValue: string, nextValue: string): string` (
|
|
4850
|
+
### fn `function formatResetConfirmationValue(previousValue: string, nextValue: string): string` (L470-472)
|
|
4851
4851
|
- @brief Formats one reset-confirmation value pair for menu display.
|
|
4852
4852
|
- @details Serializes the previous and next values into a deterministic `previous -> next` preview string used by confirmation submenus. Runtime is O(n) in combined value length. No external state is mutated.
|
|
4853
4853
|
- @param[in] previousValue {string} Current persisted value.
|
|
4854
4854
|
- @param[in] nextValue {string} Candidate default value.
|
|
4855
4855
|
- @return {string} Rendered preview string.
|
|
4856
4856
|
|
|
4857
|
-
### fn `function buildResetConfirmationChoices(` (
|
|
4857
|
+
### fn `function buildResetConfirmationChoices(` (L482-521)
|
|
4858
4858
|
- @brief Builds the shared settings-menu choices for one reset-confirmation submenu.
|
|
4859
4859
|
- @details Renders each pending changed value as a disabled preview row, appends explicit approve and abort actions, and falls back to one disabled no-op row when no values would change. Runtime is O(n) in changed-value count. No external state is mutated.
|
|
4860
4860
|
- @param[in] changes {ResetConfirmationChange[]} Changed-value preview rows.
|
|
@@ -4862,7 +4862,7 @@ cost.
|
|
|
4862
4862
|
- @param[in] abortDescription {string} Description for the abort action.
|
|
4863
4863
|
- @return {PiUsereqSettingsMenuChoice[]} Reset-confirmation submenu choices.
|
|
4864
4864
|
|
|
4865
|
-
### fn `async function confirmResetChanges(` (
|
|
4865
|
+
### fn `async function confirmResetChanges(` (L533-546)
|
|
4866
4866
|
- @brief Opens one explicit reset-confirmation submenu.
|
|
4867
4867
|
- @details Uses the shared settings-menu renderer to show every changed value before reset application and returns `true` only when the user selects the explicit approval action. Runtime depends on user interaction count. Side effects are limited to transient custom-UI rendering.
|
|
4868
4868
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -4872,14 +4872,14 @@ cost.
|
|
|
4872
4872
|
- @param[in] abortDescription {string} Description for the abort action.
|
|
4873
4873
|
- @return {Promise<boolean>} `true` when the reset is explicitly approved.
|
|
4874
4874
|
|
|
4875
|
-
### fn `function writePersistedConfigToEditor(` (
|
|
4875
|
+
### fn `function writePersistedConfigToEditor(` (L555-560)
|
|
4876
4876
|
- @brief Writes one already-persisted config file text into the editor.
|
|
4877
4877
|
- @details Reads the target config file from disk after the caller has saved any pending changes and forwards the exact persisted text into the editor. Runtime is O(n) in serialized config size. Side effects include filesystem reads and editor-text mutation.
|
|
4878
4878
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
4879
4879
|
- @param[in] configPath {string} Absolute persisted config path.
|
|
4880
4880
|
- @return {void} No return value.
|
|
4881
4881
|
|
|
4882
|
-
### fn `function writePersistedLocalConfigToEditor(` (
|
|
4882
|
+
### fn `function writePersistedLocalConfigToEditor(` (L570-576)
|
|
4883
4883
|
- @brief Writes the already-persisted local configuration file text into the editor.
|
|
4884
4884
|
- @details Reads `<base-path>/.pi-usereq.json` from disk after the caller has saved any pending local and global configuration changes, then forwards that exact persisted text into the editor. Runtime is O(n) in serialized config size. Side effects include filesystem reads and editor-text mutation.
|
|
4885
4885
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -4887,58 +4887,58 @@ cost.
|
|
|
4887
4887
|
- @return {void} No return value.
|
|
4888
4888
|
- @satisfies REQ-031
|
|
4889
4889
|
|
|
4890
|
-
### fn `function writePersistedGlobalConfigToEditor(` (
|
|
4890
|
+
### fn `function writePersistedGlobalConfigToEditor(` (L585-589)
|
|
4891
4891
|
- @brief Writes the already-persisted global configuration file text into the editor.
|
|
4892
4892
|
- @details Reads `~/.config/pi-usereq/config.json` from disk after the caller has saved any pending local and global configuration changes, then forwards that exact persisted text into the editor. Runtime is O(n) in serialized config size. Side effects include filesystem reads and editor-text mutation.
|
|
4893
4893
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
4894
4894
|
- @return {void} No return value.
|
|
4895
4895
|
- @satisfies REQ-318
|
|
4896
4896
|
|
|
4897
|
-
### fn `function buildSearchToolSupportedTagGuidelines(): string[]` (
|
|
4897
|
+
### fn `function buildSearchToolSupportedTagGuidelines(): string[]` (L650-654)
|
|
4898
4898
|
- @brief Builds the supported-tag guidance lines embedded in search-tool registrations.
|
|
4899
4899
|
- @details Emits one deterministic line per supported language containing its canonical registration label and sorted tag list so downstream agents can specialize requests without invoking the tool first. Runtime is O(l * t log t). No side effects occur.
|
|
4900
4900
|
- @return {string[]} Supported-tag guidance lines.
|
|
4901
4901
|
|
|
4902
|
-
### fn `function buildSearchToolSchemaDescription(scope: FindToolScope): string` (
|
|
4902
|
+
### fn `function buildSearchToolSchemaDescription(scope: FindToolScope): string` (L662-667)
|
|
4903
4903
|
- @brief Builds the schema description for one search-tool registration.
|
|
4904
4904
|
- @details Specializes the explicit-file and configured-directory input contracts while documenting the monolithic markdown output channel and minimal execution details shape. Runtime is O(1). No side effects occur.
|
|
4905
4905
|
- @param[in] scope {FindToolScope} Search-tool scope.
|
|
4906
4906
|
- @return {string} Parameter-schema description.
|
|
4907
4907
|
|
|
4908
|
-
### fn `function buildSearchToolPromptGuidelines(scope: FindToolScope): string[]` (
|
|
4908
|
+
### fn `function buildSearchToolPromptGuidelines(scope: FindToolScope): string[]` (L675-688)
|
|
4909
4909
|
- @brief Builds the prompt-guideline set for one search-tool registration.
|
|
4910
4910
|
- @details Encodes scope selection, monolithic markdown output semantics, regex semantics, line-number behavior, tag-filter rules, and the full language-to-tag matrix as stable agent-oriented strings. Runtime is O(l * t log t). No side effects occur.
|
|
4911
4911
|
- @param[in] scope {FindToolScope} Search-tool scope.
|
|
4912
4912
|
- @return {string[]} Prompt-guideline strings.
|
|
4913
4913
|
|
|
4914
|
-
- type `type MonolithicToolRenderResult = {` (
|
|
4914
|
+
- type `type MonolithicToolRenderResult = {` (L694)
|
|
4915
4915
|
- @brief Describes the monolithic tool-result surface consumed by tool-row renderers.
|
|
4916
4916
|
- @details Narrows execute-result data to the primary text content block plus the minimal `details.execution` metadata returned by monolithic tool wrappers. The alias is compile-time only and introduces no runtime cost.
|
|
4917
|
-
### fn `function getMonolithicToolText(result: MonolithicToolRenderResult): string` (
|
|
4917
|
+
### fn `function getMonolithicToolText(result: MonolithicToolRenderResult): string` (L711-714)
|
|
4918
4918
|
- @brief Extracts the primary monolithic text block from one tool result.
|
|
4919
4919
|
- @details Returns the first text content block when present and falls back to an empty string when the tool emitted no LLM-facing content. Runtime is O(1). No external state is mutated.
|
|
4920
4920
|
- @param[in] result {MonolithicToolRenderResult} Tool result wrapper.
|
|
4921
4921
|
- @return {string} Primary monolithic content text.
|
|
4922
4922
|
|
|
4923
|
-
### fn `function getMonolithicToolErrorText(result: MonolithicToolRenderResult): string | undefined` (
|
|
4923
|
+
### fn `function getMonolithicToolErrorText(result: MonolithicToolRenderResult): string | undefined` (L722-732)
|
|
4924
4924
|
- @brief Reads the first residual execution error string from one monolithic tool result.
|
|
4925
4925
|
- @details Prefers the first `stderr_lines` entry when present and otherwise falls back to the first line of `stderr`. Runtime is O(1) plus first-line split cost. No external state is mutated.
|
|
4926
4926
|
- @param[in] result {MonolithicToolRenderResult} Tool result wrapper.
|
|
4927
4927
|
- @return {string | undefined} First residual execution error string.
|
|
4928
4928
|
|
|
4929
|
-
### fn `function formatCompactToolArgumentValue(value: unknown): string | undefined` (
|
|
4929
|
+
### fn `function formatCompactToolArgumentValue(value: unknown): string | undefined` (L740-779)
|
|
4930
4930
|
- @brief Formats one scalar or structural tool argument for compact render summaries.
|
|
4931
4931
|
- @details Truncates long strings, compresses arrays into short previews, and renders plain object arguments as key indexes so collapsed tool rows stay compact while still exposing the essential invocation shape. Runtime is O(n) in preview size. No external state is mutated.
|
|
4932
4932
|
- @param[in] value {unknown} Candidate tool argument value.
|
|
4933
4933
|
- @return {string | undefined} Compact preview string or `undefined` when the value carries no useful summary.
|
|
4934
4934
|
|
|
4935
|
-
### fn `function buildCompactToolInvocationText(args: Record<string, unknown> | undefined): string` (
|
|
4935
|
+
### fn `function buildCompactToolInvocationText(args: Record<string, unknown> | undefined): string` (L787-798)
|
|
4936
4936
|
- @brief Builds the compact invocation summary appended to collapsed tool rows.
|
|
4937
4937
|
- @details Renders only caller-supplied parameters that have stable, non-empty compact previews and joins them in insertion order so agents can infer how the tool was used without expanding the full result. Runtime is O(n) in argument count and preview size. No external state is mutated.
|
|
4938
4938
|
- @param[in] args {Record<string, unknown> | undefined} Current tool call arguments.
|
|
4939
4939
|
- @return {string} Compact invocation summary prefixed with one separating space, or the empty string when no useful preview exists.
|
|
4940
4940
|
|
|
4941
|
-
### fn `function summarizeStructuredToolResult(` (
|
|
4941
|
+
### fn `function summarizeStructuredToolResult(` (L808-823)
|
|
4942
4942
|
- @brief Builds the compact default text for one monolithic tool result row.
|
|
4943
4943
|
- @details Prefers the tool name, compact invocation preview, and success marker for collapsed rows, and falls back to residual execution diagnostics when the tool failed before completing successfully. Runtime is O(n) in compact argument-preview size. No external state is mutated.
|
|
4944
4944
|
- @param[in] toolName {string} Registered tool name.
|
|
@@ -4946,27 +4946,27 @@ cost.
|
|
|
4946
4946
|
- @param[in] args {Record<string, unknown> | undefined} Current tool call arguments.
|
|
4947
4947
|
- @return {string} Compact single-line summary.
|
|
4948
4948
|
|
|
4949
|
-
### fn `function buildStructuredToolRenderResult(toolName: string)` (
|
|
4949
|
+
### fn `function buildStructuredToolRenderResult(toolName: string)` (L832-851)
|
|
4950
4950
|
- @brief Builds a custom `renderResult` implementation for one monolithic tool.
|
|
4951
4951
|
- @details Reuses a mutable `Text` component when possible, keeps the default collapsed row compact with essential invocation parameters plus result status, and reveals the full monolithic content only when the tool row is expanded. Runtime is O(n) in expanded content length and compact argument-preview size. No external state is mutated.
|
|
4952
4952
|
- @param[in] toolName {string} Registered tool name.
|
|
4953
4953
|
- @return {(result: MonolithicToolRenderResult, options: { expanded?: boolean; isPartial?: boolean }, _theme: unknown, context: { args?: Record<string, unknown>; lastComponent?: unknown }) => Text} Custom result renderer.
|
|
4954
4954
|
- @satisfies REQ-210
|
|
4955
4955
|
|
|
4956
|
-
### fn `function executeMonolithicTool(operation: () => ToolResult): ReturnType<typeof buildMonolithicToolExecuteResult>` (
|
|
4956
|
+
### fn `function executeMonolithicTool(operation: () => ToolResult): ReturnType<typeof buildMonolithicToolExecuteResult>` (L859-865)
|
|
4957
4957
|
- @brief Executes one CLI-style runner for a monolithic agent tool.
|
|
4958
4958
|
- @details Reuses the standalone tool-runner contract, normalizes thrown failures into `ToolResult`, and wraps the selected stdout or stderr text into the monolithic content channel. Runtime is dominated by the delegated runner. Side effects depend on the selected tool.
|
|
4959
4959
|
- @param[in] operation {() => ToolResult} Runner callback.
|
|
4960
4960
|
- @return {ReturnType<typeof buildMonolithicToolExecuteResult>} Monolithic tool execute result.
|
|
4961
4961
|
|
|
4962
|
-
### fn `function executeStatusTool(operation: () => ToolResult): ReturnType<typeof buildMonolithicToolExecuteResult>` (
|
|
4962
|
+
### fn `function executeStatusTool(operation: () => ToolResult): ReturnType<typeof buildMonolithicToolExecuteResult>` (L874-903)
|
|
4963
4963
|
- @brief Executes one CLI-style runner for a status-only agent tool.
|
|
4964
4964
|
- @details Reuses the standalone tool-runner contract, preserves `content[0].text` as the status-only `success` or `error: <diagnostic>` payload, and strips success-path `stdout_lines` so `details.execution` stays limited to the numeric code plus optional residual stderr diagnostics. Runtime is dominated by the delegated runner. Side effects depend on the selected tool.
|
|
4965
4965
|
- @param[in] operation {() => ToolResult} Runner callback.
|
|
4966
4966
|
- @return {ReturnType<typeof buildMonolithicToolExecuteResult>} Status-only tool execute result.
|
|
4967
4967
|
- @satisfies REQ-294, REQ-295, REQ-296
|
|
4968
4968
|
|
|
4969
|
-
### fn `function deliverPromptCommand(` (
|
|
4969
|
+
### fn `function deliverPromptCommand(` (L914-932)
|
|
4970
4970
|
- @brief Starts delivery of one rendered prompt into the current active session.
|
|
4971
4971
|
- @details Prefers the replacement-session `sendUserMessage(...)` helper exposed by `withSession(...)` callbacks after session replacement so post-switch prompt delivery never reuses stale pre-switch session-bound extension objects. Returns the underlying delivery promise without awaiting it so callers can record the `running` workflow transition as soon as prompt handoff is accepted instead of waiting for the full agent turn to complete on runtimes whose async replacement-session helpers resolve only after `agent_end`. When pi later invalidates that replacement-session context during successful prompt-end restoration, the helper suppresses the documented stale-extension-context rejection because the prompt was already accepted and late rethrow would surface a false orchestration failure. Falls back to `pi.sendUserMessage(...)` only for non-replacement flows or runtimes that do not expose replacement-session helpers. Runtime is O(n) in prompt length. Side effects are limited to user-message delivery.
|
|
4972
4972
|
- @param[in] pi {ExtensionAPI} Handler-scoped extension API instance retained as the fallback dispatcher.
|
|
@@ -4975,7 +4975,7 @@ cost.
|
|
|
4975
4975
|
- @return {Promise<void>} Promise representing eventual prompt-delivery completion.
|
|
4976
4976
|
- @satisfies REQ-004, REQ-067, REQ-068, REQ-227, REQ-281
|
|
4977
4977
|
|
|
4978
|
-
### fn `function shouldIgnoreLatePromptDeliveryFailure(` (
|
|
4978
|
+
### fn `function shouldIgnoreLatePromptDeliveryFailure(` (L943-959)
|
|
4979
4979
|
- @brief Detects prompt-delivery failures that can be ignored after prompt ownership has moved past the command handler.
|
|
4980
4980
|
- @details Matches the documented stale-extension-context runtime error once prompt ownership has already moved beyond command-side preflight. The helper treats the failure as ignorable when the persisted prompt runtime state shows the same execution session as the active prompt run or when the persisted workflow state has already advanced beyond `checking|running`, because rethrowing at that point would incorrectly re-enter command-side abort logic after the prompt was already accepted. Runtime is O(n) in error-message length plus path length. No external state is mutated.
|
|
4981
4981
|
- @param[in] error {unknown} Candidate prompt-delivery failure.
|
|
@@ -4984,7 +4984,7 @@ cost.
|
|
|
4984
4984
|
- @return {boolean} `true` when the failure is a late stale-context delivery rejection that MUST be ignored.
|
|
4985
4985
|
- @satisfies REQ-208, REQ-280, REQ-281, REQ-282
|
|
4986
4986
|
|
|
4987
|
-
### fn `function logPromptWorkflowStateChange(` (
|
|
4987
|
+
### fn `function logPromptWorkflowStateChange(` (L972-991)
|
|
4988
4988
|
- @brief Appends one workflow-state debug entry for a bundled prompt when selected.
|
|
4989
4989
|
- @details Reuses the shared debug logger so `req-*` command handlers and prompt-end orchestration can record deterministic workflow transitions without duplicating JSON payload shaping. Runtime is O(n) in serialized payload size only when logging is enabled and O(1) otherwise. Side effects include debug-log file writes for matching enabled prompts.
|
|
4990
4990
|
- @param[in] projectBase {string} Absolute original project base path.
|
|
@@ -4995,7 +4995,7 @@ cost.
|
|
|
4995
4995
|
- @return {void} No return value.
|
|
4996
4996
|
- @satisfies REQ-245, REQ-246, REQ-247
|
|
4997
4997
|
|
|
4998
|
-
### fn `function logPromptWorkflowEvent(` (
|
|
4998
|
+
### fn `function logPromptWorkflowEvent(` (L1007-1027)
|
|
4999
4999
|
- @brief Appends one dedicated prompt workflow debug entry when selected.
|
|
5000
5000
|
- @details Reuses the shared workflow-event logger so prompt activation, restoration, closure, and session-shutdown paths can emit higher-granularity orchestration diagnostics without duplicating JSON payload shaping. Runtime is O(n) in serialized payload size only when logging is enabled and O(1) otherwise. Side effects include debug-log file writes for matching enabled prompts.
|
|
5001
5001
|
- @param[in] projectBase {string} Absolute original project base path.
|
|
@@ -5009,7 +5009,7 @@ cost.
|
|
|
5009
5009
|
- @return {void} No return value.
|
|
5010
5010
|
- @satisfies REQ-245, REQ-246, REQ-247, REQ-277
|
|
5011
5011
|
|
|
5012
|
-
### fn `function transitionPromptWorkflowState(` (
|
|
5012
|
+
### fn `function transitionPromptWorkflowState(` (L1040-1053)
|
|
5013
5013
|
- @brief Transitions one prompt workflow state and logs the transition immediately after the state update.
|
|
5014
5014
|
- @details Captures the previous workflow state, applies the new state through the shared status helper, and appends the gated `workflow_state` debug entry only after the transition has completed. Runtime is O(1). Side effects include status mutation, status-bar rendering, and optional debug-log writes.
|
|
5015
5015
|
- @param[in] ctx {ExtensionContext | ExtensionCommandContext} Active extension context.
|
|
@@ -5020,20 +5020,20 @@ cost.
|
|
|
5020
5020
|
- @param[in,out] statusController {PiUsereqStatusController} Mutable status controller.
|
|
5021
5021
|
- @return {void} No return value.
|
|
5022
5022
|
|
|
5023
|
-
### fn `function resolvePromptCommandDescription(` (
|
|
5023
|
+
### fn `function resolvePromptCommandDescription(` (L1061-1065)
|
|
5024
5024
|
- @brief Resolves the runtime slash-command description for one bundled prompt.
|
|
5025
5025
|
- @details Reads the bundled prompt markdown, extracts the first `# ` heading payload, and falls back to the historical generated label when the prompt omits a level-one heading. Runtime is O(n) in prompt length. Side effects are limited to filesystem reads.
|
|
5026
5026
|
- @param[in] promptName {import("./core/prompt-command-catalog.js").PromptCommandName} Bundled prompt name.
|
|
5027
5027
|
- @return {string} Runtime command description.
|
|
5028
5028
|
|
|
5029
|
-
### fn `function resolveDebugProjectBase(cwd: string, statusController: PiUsereqStatusController): string` (
|
|
5029
|
+
### fn `function resolveDebugProjectBase(cwd: string, statusController: PiUsereqStatusController): string` (L1074-1078)
|
|
5030
5030
|
- @brief Resolves the original project base used for debug-log file writes.
|
|
5031
5031
|
- @details Prefers the active or pending prompt execution plan so tool-result logging during worktree-backed prompt runs persists into the original repository path instead of transient worktree directories. Runtime is O(1). No external state is mutated.
|
|
5032
5032
|
- @param[in] cwd {string} Current extension working directory.
|
|
5033
5033
|
- @param[in] statusController {PiUsereqStatusController} Mutable status controller.
|
|
5034
5034
|
- @return {string} Absolute original project base path for debug logging.
|
|
5035
5035
|
|
|
5036
|
-
### fn `function notifyContextSafely(` (
|
|
5036
|
+
### fn `function notifyContextSafely(` (L1089-1106)
|
|
5037
5037
|
- @brief Delivers one best-effort UI notification without failing on stale replacement contexts.
|
|
5038
5038
|
- @details Attempts to use the supplied extension context for UI notification delivery and suppresses the documented stale-extension-context runtime error raised after session replacement, because prompt-orchestration closure can outlive the context that initiated the switch. Runtime is O(n) in message length. Side effects are limited to user notification delivery when the context is still active.
|
|
5039
5039
|
- @param[in] ctx {ExtensionContext | ExtensionCommandContext | undefined} Candidate UI context.
|
|
@@ -5042,7 +5042,7 @@ cost.
|
|
|
5042
5042
|
- @return {boolean} `true` when the notification was delivered and `false` when the context was already stale.
|
|
5043
5043
|
- @satisfies REQ-280
|
|
5044
5044
|
|
|
5045
|
-
### fn `function rejectNonIdleReqCommand(` (
|
|
5045
|
+
### fn `function rejectNonIdleReqCommand(` (L1118-1138)
|
|
5046
5046
|
- @brief Rejects one non-`idle` req-command invocation and records the workflow error state.
|
|
5047
5047
|
- @details Builds a deterministic busy-state diagnostic from the current workflow state, transitions the shared workflow state to `error`, preserves any pending or active prompt execution metadata for later closure handling, emits an error notification, and throws `ReqError`. Bundled prompt commands reuse `transitionPromptWorkflowState(...)` when cached configuration is available so prompt debug logging captures the actual state transition; specialized non-prompt commands fall back to direct status mutation. Runtime is O(1). Side effects include workflow-state mutation, status-bar rendering, optional debug-log writes, and user notification delivery.
|
|
5048
5048
|
- @param[in] ctx {ExtensionContext | ExtensionCommandContext} Active extension context.
|
|
@@ -5052,20 +5052,20 @@ cost.
|
|
|
5052
5052
|
- @throws {ReqError} Always throws because non-`idle` req commands are rejected.
|
|
5053
5053
|
- @satisfies REQ-224
|
|
5054
5054
|
|
|
5055
|
-
### fn `function getPiUsereqStartupTools(pi: ExtensionAPI): ToolInfo[]` (
|
|
5055
|
+
### fn `function getPiUsereqStartupTools(pi: ExtensionAPI): ToolInfo[]` (L1147-1155)
|
|
5056
5056
|
- @brief Returns the configurable active-tool inventory visible to the extension.
|
|
5057
5057
|
- @details Filters runtime tools against the canonical configurable-tool set, keeps only builtin-backed embedded tools, and orders the result by the documented custom/files/embedded/default-disabled grouping. Runtime is O(t log t). No external state is mutated.
|
|
5058
5058
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
5059
5059
|
- @return {ToolInfo[]} Sorted configurable tool descriptors.
|
|
5060
5060
|
- @satisfies REQ-007, REQ-063, REQ-231, REQ-232
|
|
5061
5061
|
|
|
5062
|
-
### fn `function getConfiguredEnabledPiUsereqTools(config: UseReqConfig): string[]` (
|
|
5062
|
+
### fn `function getConfiguredEnabledPiUsereqTools(config: UseReqConfig): string[]` (L1163-1167)
|
|
5063
5063
|
- @brief Normalizes and returns the configured enabled active tools.
|
|
5064
5064
|
- @details Reuses repository normalization rules, updates the config object in place, and returns the normalized array. Runtime is O(n) in configured tool count. Side effect: mutates `config["enabled-tools"]`.
|
|
5065
5065
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5066
5066
|
- @return {string[]} Normalized enabled tool names.
|
|
5067
5067
|
|
|
5068
|
-
### fn `function applyConfiguredPiUsereqTools(pi: ExtensionAPI, config: UseReqConfig): void` (
|
|
5068
|
+
### fn `function applyConfiguredPiUsereqTools(pi: ExtensionAPI, config: UseReqConfig): void` (L1177-1194)
|
|
5069
5069
|
- @brief Applies the configured active-tool enablement to the current session.
|
|
5070
5070
|
- @details Preserves non-configurable active tools, removes every configurable tool from the active set, then re-adds only configured tools that exist in the current runtime inventory. Runtime is O(t). Side effects include `pi.setActiveTools(...)`.
|
|
5071
5071
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5073,7 +5073,7 @@ cost.
|
|
|
5073
5073
|
- @return {void} No return value.
|
|
5074
5074
|
- @satisfies REQ-009, REQ-064
|
|
5075
5075
|
|
|
5076
|
-
### fn `async function handleExtensionStatusEvent(` (
|
|
5076
|
+
### fn `async function handleExtensionStatusEvent(` (L1207-1478)
|
|
5077
5077
|
- @brief Handles one intercepted pi lifecycle hook for pi-usereq status updates.
|
|
5078
5078
|
- @details Applies session-start-specific resource validation, project-config refresh, startup-tool enablement, and selected debug-tool logging before forwarding the originating hook name and payload into the shared `updateExtensionStatus(...)` pipeline. Before `agent_start`, re-verifies any prepared prompt execution session switch. On `agent_end`, dispatches configured command-notify, sound, and prompt-specific Pushover effects, logs dedicated workflow-closure diagnostics, restores the original session-backed `base-path` for every matched worktree-backed completion by reusing persisted replacement-session command contexts when event contexts omit `switchSession()`, executes the stash-assisted merge-and-delete finalization path for every matched successful worktree-backed completion even when a later busy-command rejection already moved workflow state to `error`, emits a warning-only notification when restored `base-path` changes are reapplied after merge, tolerates stale replacement-session notification contexts after session replacement, retains the worktree plus notifies closure failure for interrupted or failed outcomes, logs selected prompt workflow transitions, and transitions workflow state through `merging`, `error`, and `idle` as required. On `session_shutdown`, captures pre-update prompt snapshots so workflow-shutdown diagnostics and same-runtime command continuation preserve the active prompt workflow state across switch-triggered rebinding, then disposes the shared controller. Runtime is dominated by configuration loading during `session_start` and git finalization during matched successful `agent_end` handling; all other hooks are O(1). Side effects include resource checks, active-tool mutation, active-session replacement, status updates, live-ticker disposal on shutdown, optional child-process spawning, outbound HTTPS requests, branch merges, worktree deletion, and optional debug-log writes.
|
|
5079
5079
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5084,7 +5084,7 @@ cost.
|
|
|
5084
5084
|
- @return {Promise<void>} Promise resolved when hook processing completes.
|
|
5085
5085
|
- @satisfies REQ-117, REQ-118, REQ-119, REQ-131, REQ-132, REQ-133, REQ-166, REQ-167, REQ-168, REQ-169, REQ-172, REQ-176, REQ-178, REQ-184, REQ-185, REQ-186, REQ-187, REQ-208, REQ-209, REQ-221, REQ-228, REQ-229, REQ-230, REQ-244, REQ-245, REQ-246, REQ-247, REQ-276, REQ-277, REQ-278, REQ-279, REQ-280, REQ-291, REQ-292
|
|
5086
5086
|
|
|
5087
|
-
### fn `function registerExtensionStatusHooks(` (
|
|
5087
|
+
### fn `function registerExtensionStatusHooks(` (L1494-1513)
|
|
5088
5088
|
- @brief Registers shared wrappers for every supported pi lifecycle hook.
|
|
5089
5089
|
- @details Installs one generic wrapper per intercepted hook so every resource,
|
|
5090
5090
|
session, agent, model, tool, bash, and input event is routed through the
|
|
@@ -5098,7 +5098,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5098
5098
|
- @return {void} No return value.
|
|
5099
5099
|
- @satisfies DES-002, REQ-113, REQ-114, REQ-115, REQ-116, REQ-117
|
|
5100
5100
|
|
|
5101
|
-
### fn `function setConfiguredPiUsereqTools(pi: ExtensionAPI, config: UseReqConfig, enabledTools: string[]): void` (
|
|
5101
|
+
### fn `function setConfiguredPiUsereqTools(pi: ExtensionAPI, config: UseReqConfig, enabledTools: string[]): void` (L1523-1526)
|
|
5102
5102
|
- @brief Replaces the configured active-tool selection and applies it immediately.
|
|
5103
5103
|
- @details Normalizes the requested tool names, stores them in config, and synchronizes the active tool set with runtime registration state. Runtime is O(n + t). Side effect: mutates config and active tools.
|
|
5104
5104
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5106,26 +5106,26 @@ registered hook count. Side effects include hook registration.
|
|
|
5106
5106
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5107
5107
|
- @return {void} No return value.
|
|
5108
5108
|
|
|
5109
|
-
### fn `function getDebugToolToggleNames(): PiUsereqStartupToolName[]` (
|
|
5109
|
+
### fn `function getDebugToolToggleNames(): PiUsereqStartupToolName[]` (L1534-1536)
|
|
5110
5110
|
- @brief Returns the canonical debug-tool toggle order.
|
|
5111
5111
|
- @details Reuses the documented configurable-tool ordering so debug toggles list extension-owned tools before embedded tools and remain deterministic across sessions. Runtime is O(t log t). No external state is mutated.
|
|
5112
5112
|
- @return {PiUsereqStartupToolName[]} Ordered debug-tool toggle names.
|
|
5113
5113
|
- @satisfies REQ-242
|
|
5114
5114
|
|
|
5115
|
-
### fn `function resetDebugConfigToDefaults(config: UseReqConfig): void` (
|
|
5115
|
+
### fn `function resetDebugConfigToDefaults(config: UseReqConfig): void` (L1545-1554)
|
|
5116
5116
|
- @brief Restores the debug configuration subtree to its documented defaults.
|
|
5117
5117
|
- @details Resets global debug enablement, log path, tool-wrapper command registration, workflow-state filter, dedicated workflow-event logging, and selected tool plus prompt debug toggles without mutating unrelated settings. Runtime is O(1). Side effect: mutates `config`.
|
|
5118
5118
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5119
5119
|
- @return {void} No return value.
|
|
5120
5120
|
- @satisfies REQ-236, REQ-237, REQ-238, REQ-239, REQ-195, REQ-277, REQ-322
|
|
5121
5121
|
|
|
5122
|
-
### fn `function formatDebugMenuSummary(config: UseReqConfig): string` (
|
|
5122
|
+
### fn `function formatDebugMenuSummary(config: UseReqConfig): string` (L1562-1568)
|
|
5123
5123
|
- @brief Formats the top-level Debug summary value.
|
|
5124
5124
|
- @details Emits the current global debug mode plus compact selected-tool and selected-prompt counts for right-aligned menu display. Runtime is O(n) in configured selector count. No external state is mutated.
|
|
5125
5125
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5126
5126
|
- @return {string} Compact debug summary string.
|
|
5127
5127
|
|
|
5128
|
-
### fn `function buildDebugMenuChoice(` (
|
|
5128
|
+
### fn `function buildDebugMenuChoice(` (L1578-1591)
|
|
5129
5129
|
- @brief Builds one debug-menu row with optional disabled styling.
|
|
5130
5130
|
- @details Applies dim styling and disables selection whenever global debug is off for all rows except the global `Debug` toggle row. Runtime is O(1). No external state is mutated.
|
|
5131
5131
|
- @param[in] choice {PiUsereqSettingsMenuChoice} Base debug-menu row.
|
|
@@ -5133,21 +5133,21 @@ registered hook count. Side effects include hook registration.
|
|
|
5133
5133
|
- @return {PiUsereqSettingsMenuChoice} Styled debug-menu row.
|
|
5134
5134
|
- @satisfies REQ-241
|
|
5135
5135
|
|
|
5136
|
-
### fn `async function selectDebugLogOnStatus(` (
|
|
5136
|
+
### fn `async function selectDebugLogOnStatus(` (L1600-1628)
|
|
5137
5137
|
- @brief Opens the workflow-state filter selector used by the Debug submenu.
|
|
5138
5138
|
- @details Exposes `any` plus each canonical workflow state through the shared settings-menu renderer and returns the selected normalized filter or `undefined` when the user cancels the submenu. Runtime depends on user interaction count. Side effects are limited to transient custom-UI rendering.
|
|
5139
5139
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
5140
5140
|
- @param[in] currentValue {DebugLogOnStatus} Current persisted workflow-state filter.
|
|
5141
5141
|
- @return {Promise<DebugLogOnStatus | undefined>} Selected workflow-state filter or `undefined` when cancelled.
|
|
5142
5142
|
|
|
5143
|
-
### fn `function buildDebugMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5143
|
+
### fn `function buildDebugMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L1637-1723)
|
|
5144
5144
|
- @brief Builds the shared settings-menu choices for debug logging configuration.
|
|
5145
5145
|
- @details Serializes global debug controls plus tool-wrapper command registration, workflow-state, dedicated workflow-event, per-tool, and per-prompt toggles into one submenu, deriving inventories from the canonical tool and prompt lists and dimming locked rows while debug is disabled. Runtime is O(t + p). No external state is mutated.
|
|
5146
5146
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5147
5147
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered debug-menu choices.
|
|
5148
5148
|
- @satisfies REQ-240, REQ-241, REQ-242, REQ-243, REQ-193, REQ-277, REQ-321, REQ-322
|
|
5149
5149
|
|
|
5150
|
-
### fn `async function configureDebugMenu(` (
|
|
5150
|
+
### fn `async function configureDebugMenu(` (L1734-1924)
|
|
5151
5151
|
- @brief Runs the interactive Debug submenu.
|
|
5152
5152
|
- @details Lets the user toggle global debug enablement, tool-wrapper command registration, debug file and workflow filters, dedicated workflow-event logging, per-tool selectors, and per-prompt selectors while preserving row focus across re-renders. Runtime depends on user interaction count. Side effects include UI updates, config mutation, and optional debug command registration.
|
|
5153
5153
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5156,47 +5156,47 @@ registered hook count. Side effects include hook registration.
|
|
|
5156
5156
|
- @return {Promise<void>} Promise resolved when the submenu closes.
|
|
5157
5157
|
- @satisfies REQ-236, REQ-237, REQ-238, REQ-239, REQ-240, REQ-241, REQ-242, REQ-243, REQ-192, REQ-193, REQ-195, REQ-277, REQ-321, REQ-322, REQ-323
|
|
5158
5158
|
|
|
5159
|
-
### fn `const updateDebugToolCommandsEnabled = (nextValue: unknown): void =>` (
|
|
5159
|
+
### fn `const updateDebugToolCommandsEnabled = (nextValue: unknown): void =>` (L1740-1747)
|
|
5160
5160
|
|
|
5161
|
-
- type `type PiNotifyBooleanConfigKey =` (
|
|
5161
|
+
- type `type PiNotifyBooleanConfigKey =` (L1930)
|
|
5162
5162
|
- @brief Represents one persisted boolean notification-setting key.
|
|
5163
5163
|
- @details Restricts menu toggles to the global enable flags and completed/interrupted/failed event toggles used by command-notify, sound, and Pushover configuration. Compile-time only and introduces no runtime cost.
|
|
5164
|
-
- type `type PiNotifyEventBooleanConfigKey = Exclude<` (
|
|
5164
|
+
- type `type PiNotifyEventBooleanConfigKey = Exclude<` (L1947)
|
|
5165
5165
|
- @brief Represents one persisted boolean notification event-toggle key.
|
|
5166
5166
|
- @details Restricts shared event-submenu mutation helpers to completed/interrupted/failed toggles and excludes global enable flags. Compile-time only and introduces no runtime cost.
|
|
5167
|
-
- type `type PiNotifyEventId = "completed" | "interrupted" | "failed";` (
|
|
5167
|
+
- type `type PiNotifyEventId = "completed" | "interrupted" | "failed";` (L1956)
|
|
5168
5168
|
- @brief Represents one shared prompt-end event identifier used by notification menus.
|
|
5169
5169
|
- @details Restricts event-submenu rendering to the canonical completed/interrupted/failed domain shared by command-notify, sound, and Pushover routing. Compile-time only and introduces no runtime cost.
|
|
5170
|
-
### iface `interface PiNotifyEventRowDefinition` (
|
|
5170
|
+
### iface `interface PiNotifyEventRowDefinition` (L1962-1966)
|
|
5171
5171
|
- @brief Describes one shared prompt-end event row rendered inside notification event submenus.
|
|
5172
5172
|
- @details Binds one canonical event identifier to the human-readable label and terminal-outcome description reused across command-notify, sound, and Pushover event menus. The interface is compile-time only and introduces no runtime cost.
|
|
5173
5173
|
|
|
5174
|
-
### iface `interface PiNotifyEventMenuDefinition` (
|
|
5174
|
+
### iface `interface PiNotifyEventMenuDefinition` (L1972-1978)
|
|
5175
5175
|
- @brief Describes one notification-system event submenu contract.
|
|
5176
5176
|
- @details Binds the top-level launcher row, submenu title, toast prefix, and completed/interrupted/failed config keys for one notification transport. The interface is compile-time only and introduces no runtime cost.
|
|
5177
5177
|
|
|
5178
|
-
### fn `function togglePiNotifyFlag(config: UseReqConfig, key: PiNotifyBooleanConfigKey): boolean` (
|
|
5178
|
+
### fn `function togglePiNotifyFlag(config: UseReqConfig, key: PiNotifyBooleanConfigKey): boolean` (L1987-1990)
|
|
5179
5179
|
- @brief Flips one persisted boolean notification setting.
|
|
5180
5180
|
- @details Negates the selected configuration flag in place and returns the resulting boolean value so callers can emit deterministic UI feedback. Runtime is O(1). Side effect: mutates `config`.
|
|
5181
5181
|
- @param[in] key {PiNotifyBooleanConfigKey} Boolean configuration key to toggle.
|
|
5182
5182
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5183
5183
|
- @return {boolean} Next enabled state.
|
|
5184
5184
|
|
|
5185
|
-
### fn `function resetPiNotifyConfigToDefaults(config: UseReqConfig): void` (
|
|
5185
|
+
### fn `function resetPiNotifyConfigToDefaults(config: UseReqConfig): void` (L1999-2023)
|
|
5186
5186
|
- @brief Restores notification-related settings to their documented defaults.
|
|
5187
5187
|
- @details Copies the command-notify, sound, and Pushover configuration subtree from a fresh default config into the supplied mutable project config. Runtime is O(1). Side effect: mutates `config`.
|
|
5188
5188
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5189
5189
|
- @return {void} No return value.
|
|
5190
5190
|
- @satisfies REQ-174, REQ-178, REQ-184, REQ-195, REQ-196
|
|
5191
5191
|
|
|
5192
|
-
### fn `function formatPiNotifyPushoverPriority(priority: PiNotifyPushoverPriority): string` (
|
|
5192
|
+
### fn `function formatPiNotifyPushoverPriority(priority: PiNotifyPushoverPriority): string` (L2032-2034)
|
|
5193
5193
|
- @brief Formats one persisted Pushover priority for menu display.
|
|
5194
5194
|
- @details Maps the canonical `0|1` priority domain to deterministic `Normal|High` labels reused by the Pushover configuration UI. Runtime is O(1). No external state is mutated.
|
|
5195
5195
|
- @param[in] priority {PiNotifyPushoverPriority} Persisted Pushover priority.
|
|
5196
5196
|
- @return {string} Menu-display label.
|
|
5197
5197
|
- @satisfies REQ-172
|
|
5198
5198
|
|
|
5199
|
-
### fn `function formatPiNotifyEventMenuSummary(` (
|
|
5199
|
+
### fn `function formatPiNotifyEventMenuSummary(` (L2118-2126)
|
|
5200
5200
|
- @brief Formats the top-level summary value for one notification event submenu.
|
|
5201
5201
|
- @details Counts enabled completed/interrupted/failed toggles for the selected transport and renders the result as `n/3 on` for right-aligned menu display. Runtime is O(1). No external state is mutated.
|
|
5202
5202
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
@@ -5204,7 +5204,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5204
5204
|
- @return {string} Compact enabled-toggle summary.
|
|
5205
5205
|
- @satisfies REQ-198
|
|
5206
5206
|
|
|
5207
|
-
### fn `function buildPiNotifyEventLauncherChoice(` (
|
|
5207
|
+
### fn `function buildPiNotifyEventLauncherChoice(` (L2136-2146)
|
|
5208
5208
|
- @brief Builds the top-level launcher row for one notification event submenu.
|
|
5209
5209
|
- @details Reuses the shared completed/interrupted/failed summary renderer so the `Notifications` menu can expose dedicated event editors for command-notify, sound, and Pushover in a uniform shape. Runtime is O(1). No external state is mutated.
|
|
5210
5210
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
@@ -5212,7 +5212,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5212
5212
|
- @return {PiUsereqSettingsMenuChoice} Launcher row for the selected event submenu.
|
|
5213
5213
|
- @satisfies REQ-181, REQ-183, REQ-165, REQ-198
|
|
5214
5214
|
|
|
5215
|
-
### fn `function buildPiNotifyEventMenuChoices(` (
|
|
5215
|
+
### fn `function buildPiNotifyEventMenuChoices(` (L2156-2172)
|
|
5216
5216
|
- @brief Builds the shared settings-menu choices for one notification event submenu.
|
|
5217
5217
|
- @details Serializes completed/interrupted/failed rows with right-aligned `on|off` values, then appends a value-less `Reset defaults` row for submenu-scoped mutation control. Runtime is O(1). No external state is mutated.
|
|
5218
5218
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
@@ -5220,7 +5220,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5220
5220
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered event-submenu choice vector.
|
|
5221
5221
|
- @satisfies REQ-188, REQ-193, REQ-198
|
|
5222
5222
|
|
|
5223
|
-
### fn `function resetPiNotifyEventMenuToDefaults(` (
|
|
5223
|
+
### fn `function resetPiNotifyEventMenuToDefaults(` (L2182-2190)
|
|
5224
5224
|
- @brief Restores one notification event submenu to its documented defaults.
|
|
5225
5225
|
- @details Copies only the completed/interrupted/failed toggles referenced by the supplied submenu contract from a fresh default config into the mutable project config. Runtime is O(1). Side effect: mutates `config`.
|
|
5226
5226
|
- @param[in] eventMenu {PiNotifyEventMenuDefinition} Notification-system event submenu contract.
|
|
@@ -5228,7 +5228,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5228
5228
|
- @return {void} No return value.
|
|
5229
5229
|
- @satisfies REQ-174, REQ-178, REQ-184, REQ-195
|
|
5230
5230
|
|
|
5231
|
-
### fn `function resolvePiNotifyEventLabel(` (
|
|
5231
|
+
### fn `function resolvePiNotifyEventLabel(` (L2200-2207)
|
|
5232
5232
|
- @brief Resolves the human-readable event label for one event-toggle config key.
|
|
5233
5233
|
- @details Matches the supplied config key against the submenu contract and returns the corresponding completed/interrupted/failed menu label for deterministic notification toasts. Runtime is O(1). No external state is mutated.
|
|
5234
5234
|
- @param[in] key {PiNotifyEventBooleanConfigKey} Event-toggle configuration key.
|
|
@@ -5236,7 +5236,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5236
5236
|
- @return {string} Human-readable event label.
|
|
5237
5237
|
- @satisfies REQ-188, REQ-198
|
|
5238
5238
|
|
|
5239
|
-
### fn `async function configurePiNotifyEventMenu(` (
|
|
5239
|
+
### fn `async function configurePiNotifyEventMenu(` (L2218-2294)
|
|
5240
5240
|
- @brief Runs one dedicated notification event submenu.
|
|
5241
5241
|
- @details Reuses the shared settings-menu renderer to toggle completed/interrupted/failed delivery flags, preserve row focus, and apply submenu-scoped reset semantics for command-notify, sound, or Pushover events. Runtime depends on user interaction count. Side effects include UI updates and config mutation.
|
|
5242
5242
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -5245,14 +5245,14 @@ registered hook count. Side effects include hook registration.
|
|
|
5245
5245
|
- @return {Promise<void>} Promise resolved when the submenu closes.
|
|
5246
5246
|
- @satisfies REQ-188, REQ-192, REQ-193, REQ-195, REQ-198
|
|
5247
5247
|
|
|
5248
|
-
### fn `function buildPiNotifyPushoverRows(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5248
|
+
### fn `function buildPiNotifyPushoverRows(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L2303-2353)
|
|
5249
5249
|
- @brief Builds the direct Pushover rows rendered inside `Notifications`.
|
|
5250
5250
|
- @details Serializes the global enable flag, shared-event submenu launcher, priority, title, text, and credential rows into right-valued menu items appended after the sound-command rows, dims and disables the enable row until both credentials are populated, renders the locked value as `configure user/token keys first`, and escapes control characters for the single-line `Pushover text` value. Runtime is O(n) in the rendered text-template length. No external state is mutated.
|
|
5251
5251
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5252
5252
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered direct Pushover rows.
|
|
5253
5253
|
- @satisfies REQ-163, REQ-165, REQ-172, REQ-184, REQ-185, REQ-198, REQ-234, REQ-235
|
|
5254
5254
|
|
|
5255
|
-
### fn `async function selectPiNotifyPushoverPriority(` (
|
|
5255
|
+
### fn `async function selectPiNotifyPushoverPriority(` (L2363-2391)
|
|
5256
5256
|
- @brief Opens the shared settings-menu selector for Pushover priority.
|
|
5257
5257
|
- @details Reuses the pi-usereq settings-menu renderer so Pushover priority selection remains stylistically aligned with the notification menus and appends a value-less subtree-local `Reset defaults` row. Runtime depends on user interaction count. Side effects are limited to transient custom-UI rendering.
|
|
5258
5258
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -5260,14 +5260,14 @@ registered hook count. Side effects include hook registration.
|
|
|
5260
5260
|
- @return {Promise<PiNotifyPushoverPriority | "reset-defaults" | undefined>} Selected priority, reset action, or `undefined` when cancelled.
|
|
5261
5261
|
- @satisfies REQ-172, REQ-192
|
|
5262
5262
|
|
|
5263
|
-
### fn `function buildPiNotifyMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5263
|
+
### fn `function buildPiNotifyMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L2400-2458)
|
|
5264
5264
|
- @brief Builds the shared settings-menu choices for notification configuration.
|
|
5265
5265
|
- @details Serializes command-notify, sound, and Pushover blocks with dedicated shared-event submenu launchers so the settings-menu renderer can expose one unified but modular configuration surface, including locked Pushover enablement, persisted boot-sound rows that stay decoupled from the active runtime sound level, and escaped single-line rendering for `Pushover text`. Runtime is O(n) in the longest rendered command or text field. No external state is mutated.
|
|
5266
5266
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5267
5267
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered notification-menu choice vector.
|
|
5268
5268
|
- @satisfies REQ-137, REQ-149, REQ-150, REQ-151, REQ-152, REQ-163, REQ-164, REQ-165, REQ-172, REQ-179, REQ-181, REQ-183, REQ-188, REQ-193, REQ-198, REQ-234, REQ-235, REQ-289
|
|
5269
5269
|
|
|
5270
|
-
### fn `async function selectPiNotifySoundLevel(` (
|
|
5270
|
+
### fn `async function selectPiNotifySoundLevel(` (L2468-2508)
|
|
5271
5271
|
- @brief Opens the shared settings-menu selector for the persisted boot sound level.
|
|
5272
5272
|
- @details Reuses the pi-usereq settings-menu renderer so boot-sound selection remains stylistically aligned with the notification menu, keeps the active runtime sound level unchanged, and appends a value-less subtree-local `Reset defaults` row. Runtime depends on user interaction count. Side effects are limited to transient custom-UI rendering.
|
|
5273
5273
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -5275,7 +5275,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5275
5275
|
- @return {Promise<PiNotifySoundLevel | "reset-defaults" | undefined>} Selected boot sound level, reset action, or `undefined` when cancelled.
|
|
5276
5276
|
- @satisfies REQ-131, REQ-179, REQ-192, REQ-289
|
|
5277
5277
|
|
|
5278
|
-
### fn `async function configurePiNotifyMenu(` (
|
|
5278
|
+
### fn `async function configurePiNotifyMenu(` (L2518-2804)
|
|
5279
5279
|
- @brief Runs the interactive notification-configuration menu.
|
|
5280
5280
|
- @details Exposes command-notify, sound, and Pushover controls through the shared settings-menu renderer, persists every notification subtree mutation into global configuration, delegates completed/interrupted/failed toggles to dedicated event submenus, preserves boot-sound edits without altering the active runtime sound level, keeps `Enable pushover` locked until both credentials are populated, decodes escaped control-sequence input for `Pushover text`, and preserves row focus across menu re-renders. Runtime depends on user interaction count. Side effects include UI updates and config mutation.
|
|
5281
5281
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -5283,7 +5283,7 @@ registered hook count. Side effects include hook registration.
|
|
|
5283
5283
|
- @return {Promise<boolean>} `true` when the sound-toggle shortcut changed.
|
|
5284
5284
|
- @satisfies REQ-131, REQ-133, REQ-134, REQ-137, REQ-163, REQ-164, REQ-165, REQ-172, REQ-179, REQ-181, REQ-183, REQ-184, REQ-188, REQ-192, REQ-193, REQ-195, REQ-196, REQ-198, REQ-234, REQ-235, REQ-288, REQ-289
|
|
5285
5285
|
|
|
5286
|
-
### fn `function registerPiNotifyShortcut(` (
|
|
5286
|
+
### fn `function registerPiNotifyShortcut(` (L2819-2842)
|
|
5287
5287
|
- @brief Registers the configurable notification-sound shortcut when supported.
|
|
5288
5288
|
- @details Loads the current effective config, registers one raw pi shortcut when
|
|
5289
5289
|
the runtime exposes `registerShortcut(...)`, cycles only the active runtime
|
|
@@ -5296,15 +5296,15 @@ registration and status updates.
|
|
|
5296
5296
|
- @return {void} No return value.
|
|
5297
5297
|
- @satisfies REQ-134, REQ-180, REQ-286, REQ-287
|
|
5298
5298
|
|
|
5299
|
-
### fn `function resolveReqResetPromptRequest(` (
|
|
5299
|
+
### fn `function resolveReqResetPromptRequest(` (L2850-2876)
|
|
5300
5300
|
- @brief Resolves the prompt execution plan targeted by `req-reset` recovery.
|
|
5301
5301
|
- @details Prefers the current in-memory active request, then the current in-memory pending request, then the process-scoped persisted prompt runtime state so the dedicated reset command can recover from same-host unclean prompt termination after session replacement. Runtime is O(1). No external state is mutated.
|
|
5302
5302
|
- @param[in] statusController {PiUsereqStatusController} Mutable status controller.
|
|
5303
5303
|
- @return {PromptCommandExecutionPlan | undefined} Recoverable prompt execution plan when one remains available.
|
|
5304
5304
|
|
|
5305
|
-
### fn `const isWorktreeBacked = (request: PromptCommandExecutionPlan | undefined): request is PromptCommandExecutionPlan =>` (
|
|
5305
|
+
### fn `const isWorktreeBacked = (request: PromptCommandExecutionPlan | undefined): request is PromptCommandExecutionPlan =>` (L2853-2860)
|
|
5306
5306
|
|
|
5307
|
-
### fn `function registerReqResetCommand(` (
|
|
5307
|
+
### fn `function registerReqResetCommand(` (L2886-2940)
|
|
5308
5308
|
- @brief Registers the specialized `req-reset` slash command.
|
|
5309
5309
|
- @details Registers the non-agentic prompt-recovery command that accepts any current workflow state, reuses persisted prompt runtime state when available, restores the original session-backed `base-path`, force-removes matching generated worktrees plus branches, clears recoverable prompt state when restoration succeeds, and notifies pi without starting an LLM session or creating a worktree. Runtime is dominated by session restoration plus git cleanup. Side effects include command registration, status-controller mutation, active-session replacement, worktree deletion, branch deletion, and user notifications.
|
|
5310
5310
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5312,7 +5312,7 @@ registration and status updates.
|
|
|
5312
5312
|
- @return {void} No return value.
|
|
5313
5313
|
- @satisfies REQ-304, REQ-305, REQ-306, REQ-307, REQ-308, REQ-309, REQ-310, REQ-311, REQ-312, REQ-313
|
|
5314
5314
|
|
|
5315
|
-
### fn `function registerReqReferencesCommand(` (
|
|
5315
|
+
### fn `function registerReqReferencesCommand(` (L2950-2990)
|
|
5316
5316
|
- @brief Registers the specialized `req-references` slash command.
|
|
5317
5317
|
- @details Registers the non-agentic references-maintenance command that rejects non-`idle` invocations by transitioning workflow state to `error` before direct execution, otherwise reuses slash-command-owned git validation, transitions workflow state through `checking|running|idle`, regenerates `REFERENCES.md` directly from configured source directories, stages only the generated file, creates the fixed-message git commit, verifies repository cleanliness, and notifies pi without starting an LLM session or creating a worktree. Runtime is dominated by git subprocess execution plus source-summary generation. Side effects include command registration, status-controller mutation, filesystem writes, git index/history mutation, and user notifications.
|
|
5318
5318
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5320,7 +5320,7 @@ registration and status updates.
|
|
|
5320
5320
|
- @return {void} No return value.
|
|
5321
5321
|
- @satisfies REQ-200, REQ-221, REQ-224, REQ-298, REQ-299, REQ-300, REQ-301, REQ-302, REQ-303
|
|
5322
5322
|
|
|
5323
|
-
### fn `function registerPromptCommands(` (
|
|
5323
|
+
### fn `function registerPromptCommands(` (L3000-3116)
|
|
5324
5324
|
- @brief Registers bundled prompt-backed commands with the extension.
|
|
5325
5325
|
- @details Creates one prompt-template-backed `req-<prompt>` command per bundled prompt name. Each handler rejects non-`idle` workflow state by transitioning the shared workflow state to `error` before command-side preflight, otherwise transitions the shared workflow state through `checking`, `error`, and `running`, runs dedicated prompt-command git and required-doc preflight checks, optionally prepares a dedicated worktree execution plan using the active session directory, persists the prompt metadata needed for switch-triggered rebinding, switches the active session to the verified execution cwd before prompt handoff, logs dedicated workflow-activation diagnostics, renders the prompt, starts prompt delivery into the forked active session, records `running` immediately after delivery handoff begins, and then awaits the wrapped prompt-delivery promise whose stale post-restore rejections are suppressed. Runtime is O(p) for registration; handler cost depends on prompt preflight, worktree preparation, session switching, prompt rendering, prompt dispatch, and optional debug logging. Side effects include command registration, status-controller mutation, worktree creation, active-session replacement, optional worktree rollback, user-message delivery during execution, and optional debug-log writes.
|
|
5326
5326
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5328,14 +5328,14 @@ registration and status updates.
|
|
|
5328
5328
|
- @return {void} No return value.
|
|
5329
5329
|
- @satisfies REQ-004, REQ-067, REQ-068, REQ-169, REQ-200, REQ-201, REQ-202, REQ-203, REQ-206, REQ-207, REQ-219, REQ-220, REQ-221, REQ-224, REQ-225, REQ-226, REQ-227, REQ-245, REQ-246, REQ-247, REQ-277, REQ-281
|
|
5330
5330
|
|
|
5331
|
-
### fn `function registerAgentTools(pi: ExtensionAPI): void` (
|
|
5331
|
+
### fn `function registerAgentTools(pi: ExtensionAPI): void` (L3126-3425)
|
|
5332
5332
|
- @brief Registers pi-usereq agent tools exposed to the model.
|
|
5333
5333
|
- @details Defines the tool schemas, prompt metadata, and execution handlers that bridge extension tool calls into tool-runner operations without registering duplicate custom slash commands for the same capabilities. Runtime is O(t) for registration; execution cost depends on the selected tool. Side effects include tool registration.
|
|
5334
5334
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
5335
5335
|
- @return {void} No return value.
|
|
5336
5336
|
- @satisfies REQ-005, REQ-010, REQ-011, REQ-014, REQ-017, REQ-044, REQ-069, REQ-070, REQ-071, REQ-072, REQ-073, REQ-074, REQ-075, REQ-076, REQ-077, REQ-078, REQ-079, REQ-080, REQ-089, REQ-090, REQ-091, REQ-092, REQ-093, REQ-094, REQ-095, REQ-096, REQ-097, REQ-098, REQ-099, REQ-100, REQ-101, REQ-102, REQ-293, REQ-294, REQ-295, REQ-296, REQ-297
|
|
5337
5337
|
|
|
5338
|
-
### fn `function buildPiUsereqToolsMenuChoices(pi: ExtensionAPI, config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5338
|
+
### fn `function buildPiUsereqToolsMenuChoices(pi: ExtensionAPI, config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L3470-3495)
|
|
5339
5339
|
- @brief Builds the shared settings-menu choices for startup-tool management.
|
|
5340
5340
|
- @details Serializes startup-tool actions into right-valued menu rows consumed by the shared settings-menu renderer while omitting the removed status-reference action. Runtime is O(t) in configurable-tool count. No external state is mutated.
|
|
5341
5341
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5343,7 +5343,7 @@ registration and status updates.
|
|
|
5343
5343
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered startup-tool menu choices.
|
|
5344
5344
|
- @satisfies REQ-007, REQ-150, REQ-151, REQ-152, REQ-153, REQ-154, REQ-193
|
|
5345
5345
|
|
|
5346
|
-
### fn `function buildPiUsereqToolToggleChoices(pi: ExtensionAPI, config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5346
|
+
### fn `function buildPiUsereqToolToggleChoices(pi: ExtensionAPI, config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L3505-3519)
|
|
5347
5347
|
- @brief Builds the shared settings-menu choices for per-tool startup toggles.
|
|
5348
5348
|
- @details Exposes every configurable startup tool as one row whose right-side value reports the current enabled state, preserves the documented custom/files/embedded/default-disabled ordering, and appends a value-less subtree-local `Reset defaults` row. Runtime is O(t) in configurable-tool count. No external state is mutated.
|
|
5349
5349
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5351,7 +5351,7 @@ registration and status updates.
|
|
|
5351
5351
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered per-tool toggle choices.
|
|
5352
5352
|
- @satisfies REQ-007, REQ-151, REQ-152, REQ-153, REQ-154, REQ-231, REQ-232
|
|
5353
5353
|
|
|
5354
|
-
### fn `async function configurePiUsereqToolsMenu(` (
|
|
5354
|
+
### fn `async function configurePiUsereqToolsMenu(` (L3530-3647)
|
|
5355
5355
|
- @brief Runs the interactive active-tool configuration menu.
|
|
5356
5356
|
- @details Synchronizes runtime active tools with the effective config, renders startup-tool actions through the shared settings-menu UI, persists enablement changes into global configuration, preserves the documented per-tool ordering, and updates configuration state in response to selections until the user exits. Runtime depends on user interaction count. Side effects include UI updates, active-tool changes, and config mutation.
|
|
5357
5357
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5360,58 +5360,58 @@ registration and status updates.
|
|
|
5360
5360
|
- @return {Promise<void>} Promise resolved when the menu closes.
|
|
5361
5361
|
- @satisfies REQ-007, REQ-063, REQ-064, REQ-150, REQ-151, REQ-152, REQ-153, REQ-154, REQ-193, REQ-231, REQ-232
|
|
5362
5362
|
|
|
5363
|
-
### fn `function getStaticCheckLanguageConfigForMenu(` (
|
|
5363
|
+
### fn `function getStaticCheckLanguageConfigForMenu(` (L3656-3661)
|
|
5364
5364
|
- @brief Resolves one static-check language config for menu rendering.
|
|
5365
5365
|
- @details Returns the configured per-language static-check object when present and otherwise synthesizes a disabled empty-language object so menu code can render all supported languages deterministically. Runtime is O(1). No external state is mutated.
|
|
5366
5366
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5367
5367
|
- @param[in] language {string} Canonical language name.
|
|
5368
5368
|
- @return {StaticCheckLanguageConfig} Resolved per-language config object.
|
|
5369
5369
|
|
|
5370
|
-
### fn `function countConfiguredStaticCheckLanguages(config: UseReqConfig): number` (
|
|
5370
|
+
### fn `function countConfiguredStaticCheckLanguages(config: UseReqConfig): number` (L3669-3671)
|
|
5371
5371
|
- @brief Counts languages that currently expose at least one configured checker.
|
|
5372
5372
|
- @details Treats configured-but-disabled languages as configured when their checker list is non-empty so removal actions remain deterministic. Runtime is O(l). No external state is mutated.
|
|
5373
5373
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5374
5374
|
- @return {number} Number of languages with at least one configured checker.
|
|
5375
5375
|
|
|
5376
|
-
### fn `function countEnabledStaticCheckLanguages(config: UseReqConfig): number` (
|
|
5376
|
+
### fn `function countEnabledStaticCheckLanguages(config: UseReqConfig): number` (L3679-3681)
|
|
5377
5377
|
- @brief Counts languages whose static-check enable flag is on.
|
|
5378
5378
|
- @details Counts only languages whose persisted per-language config explicitly sets `enabled=enable`, regardless of checker count. Runtime is O(l). No external state is mutated.
|
|
5379
5379
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5380
5380
|
- @return {number} Number of enabled languages.
|
|
5381
5381
|
|
|
5382
|
-
### fn `function resetStaticCheckConfig(config: UseReqConfig): void` (
|
|
5382
|
+
### fn `function resetStaticCheckConfig(config: UseReqConfig): void` (L3690-3692)
|
|
5383
5383
|
- @brief Restores the documented static-check default configuration.
|
|
5384
5384
|
- @details Replaces the mutable config subtree with a fresh clone of the documented per-language defaults so menu reset actions restore both enable flags and checker lists in one step. Runtime is O(l + c). Side effect: mutates `config`.
|
|
5385
5385
|
- @param[in,out] config {UseReqConfig} Mutable configuration object.
|
|
5386
5386
|
- @return {void} No return value.
|
|
5387
5387
|
- @satisfies REQ-250, REQ-251, REQ-252
|
|
5388
5388
|
|
|
5389
|
-
### fn `function formatStaticCheckLanguagesSummary(config: UseReqConfig): string` (
|
|
5389
|
+
### fn `function formatStaticCheckLanguagesSummary(config: UseReqConfig): string` (L3700-3702)
|
|
5390
5390
|
- @brief Summarizes enabled and configured static-check languages.
|
|
5391
5391
|
- @details Counts enabled languages and languages with at least one checker, then emits one compact summary string suitable for the top-level configuration menu. Runtime is O(l). No external state is mutated.
|
|
5392
5392
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5393
5393
|
- @return {string} Compact summary string.
|
|
5394
5394
|
|
|
5395
|
-
### fn `function buildStaticCheckMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5395
|
+
### fn `function buildStaticCheckMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L3711-3743)
|
|
5396
5396
|
- @brief Builds the shared settings-menu choices for static-check management.
|
|
5397
5397
|
- @details Serializes guided Command-oriented add and remove actions, renders one direct on/off toggle row for every supported language, and appends canonical terminal rows while omitting raw-spec and reference-only actions. Runtime is O(l). No external state is mutated.
|
|
5398
5398
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5399
5399
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered static-check menu choices.
|
|
5400
5400
|
- @satisfies REQ-008, REQ-150, REQ-151, REQ-152, REQ-153, REQ-154, REQ-160, REQ-161, REQ-193, REQ-248
|
|
5401
5401
|
|
|
5402
|
-
### fn `function buildSupportedStaticCheckLanguageChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5402
|
+
### fn `function buildSupportedStaticCheckLanguageChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L3751-3768)
|
|
5403
5403
|
- @brief Builds the shared settings-menu choices for supported static-check languages.
|
|
5404
5404
|
- @details Exposes every supported language as one row whose right-side value reports extensions, enablement, and configured checker count for guided Command configuration flows, then appends subtree-local terminal rows. Runtime is O(l). No external state is mutated.
|
|
5405
5405
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5406
5406
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered language-choice vector.
|
|
5407
5407
|
|
|
5408
|
-
### fn `function buildConfiguredStaticCheckLanguageChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5408
|
+
### fn `function buildConfiguredStaticCheckLanguageChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L3776-3793)
|
|
5409
5409
|
- @brief Builds the shared settings-menu choices for configured static-check languages.
|
|
5410
5410
|
- @details Exposes only languages whose checker lists are non-empty so removal remains deterministic, then appends subtree-local terminal rows. Runtime is O(l). No external state is mutated.
|
|
5411
5411
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5412
5412
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered configured-language vector.
|
|
5413
5413
|
|
|
5414
|
-
### fn `async function configureStaticCheckMenu(` (
|
|
5414
|
+
### fn `async function configureStaticCheckMenu(` (L3803-3949)
|
|
5415
5415
|
- @brief Runs the interactive static-check configuration menu.
|
|
5416
5416
|
- @details Lets the user add and remove global Command entries, toggle direct local per-language enable flags, and reset the subtree to documented defaults through the shared settings-menu renderer until the user exits. Runtime depends on user interaction count. Side effects include UI updates and config mutation.
|
|
5417
5417
|
- @param[in] ctx {ExtensionCommandContext} Active command context.
|
|
@@ -5419,7 +5419,7 @@ registration and status updates.
|
|
|
5419
5419
|
- @return {Promise<void>} Promise resolved when the menu closes.
|
|
5420
5420
|
- @satisfies REQ-008, REQ-151, REQ-152, REQ-153, REQ-154, REQ-160, REQ-161, REQ-193, REQ-195, REQ-248, REQ-253
|
|
5421
5421
|
|
|
5422
|
-
### fn `function buildPiUsereqMenuChoices(` (
|
|
5422
|
+
### fn `function buildPiUsereqMenuChoices(` (L3959-4058)
|
|
5423
5423
|
- @brief Builds the shared settings-menu choices for the top-level pi-usereq configuration UI.
|
|
5424
5424
|
- @details Serializes primary configuration actions into right-valued menu rows consumed by the shared settings-menu renderer, including automatic git-commit mode, effective prompt-command worktree state, notification summary, debug summary, locked worktree rows when automatic git commit is disabled, and display-only local plus global config paths. Runtime is O(s) in source-directory count. No external state is mutated.
|
|
5425
5425
|
- @param[in] cwd {string} Current working directory.
|
|
@@ -5427,21 +5427,21 @@ registration and status updates.
|
|
|
5427
5427
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered top-level menu choices.
|
|
5428
5428
|
- @satisfies REQ-006, REQ-031, REQ-137, REQ-150, REQ-151, REQ-152, REQ-162, REQ-190, REQ-191, REQ-197, REQ-204, REQ-205, REQ-212, REQ-215, REQ-216, REQ-236, REQ-237, REQ-238, REQ-239, REQ-240, REQ-314, REQ-318, REQ-319, REQ-320
|
|
5429
5429
|
|
|
5430
|
-
### fn `function buildSrcDirMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5430
|
+
### fn `function buildSrcDirMenuChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L4067-4085)
|
|
5431
5431
|
- @brief Builds the shared settings-menu choices for source-directory management.
|
|
5432
5432
|
- @details Exposes add and remove actions for `src-dir` entries through right-valued menu rows consumed by the shared settings-menu renderer. Runtime is O(s) in source-directory count. No external state is mutated.
|
|
5433
5433
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5434
5434
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered source-directory management choices.
|
|
5435
5435
|
- @satisfies REQ-006, REQ-151, REQ-152, REQ-153, REQ-154, REQ-193
|
|
5436
5436
|
|
|
5437
|
-
### fn `function buildSrcDirRemovalChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (
|
|
5437
|
+
### fn `function buildSrcDirRemovalChoices(config: UseReqConfig): PiUsereqSettingsMenuChoice[]` (L4094-4106)
|
|
5438
5438
|
- @brief Builds the shared settings-menu choices for removing one source-directory entry.
|
|
5439
5439
|
- @details Exposes every configured `src-dir` entry as one removable row and appends a value-less subtree-local `Reset defaults` row. Runtime is O(s) in source-directory count. No external state is mutated.
|
|
5440
5440
|
- @param[in] config {UseReqConfig} Effective project configuration.
|
|
5441
5441
|
- @return {PiUsereqSettingsMenuChoice[]} Ordered removable source-directory choices.
|
|
5442
5442
|
- @satisfies REQ-006, REQ-151, REQ-152, REQ-153, REQ-154
|
|
5443
5443
|
|
|
5444
|
-
### fn `async function configurePiUsereq(` (
|
|
5444
|
+
### fn `async function configurePiUsereq(` (L4117-4370)
|
|
5445
5445
|
- @brief Runs the top-level pi-usereq configuration menu.
|
|
5446
5446
|
- @details Loads the effective merged config, exposes docs/test/source/automatic-commit/worktree/static-check/startup-tool/notification/debug actions through the shared settings-menu renderer, forces worktree disablement when automatic git commit is disabled, prevents locked row edits, persists changes on exit, closes immediately after `Show local configuration` or `Show global configuration`, and refreshes the single-line status bar. Runtime depends on user interaction count. Side effects include UI updates, config writes, active-tool changes, and editor text updates.
|
|
5447
5447
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5450,9 +5450,9 @@ registration and status updates.
|
|
|
5450
5450
|
- @return {Promise<void>} Promise resolved when configuration is saved and the menu closes.
|
|
5451
5451
|
- @satisfies REQ-006, REQ-031, REQ-137, REQ-150, REQ-151, REQ-152, REQ-153, REQ-154, REQ-162, REQ-190, REQ-191, REQ-192, REQ-194, REQ-195, REQ-204, REQ-205, REQ-212, REQ-215, REQ-216, REQ-236, REQ-237, REQ-238, REQ-239, REQ-240, REQ-241, REQ-242, REQ-243, REQ-314, REQ-318, REQ-319, REQ-320
|
|
5452
5452
|
|
|
5453
|
-
### fn `const persistConfigChange = () =>` (
|
|
5453
|
+
### fn `const persistConfigChange = () =>` (L4128-4133)
|
|
5454
5454
|
|
|
5455
|
-
### fn `function registerConfigCommands(` (
|
|
5455
|
+
### fn `function registerConfigCommands(` (L4380-4390)
|
|
5456
5456
|
- @brief Registers configuration-management commands.
|
|
5457
5457
|
- @details Adds the interactive `pi-usereq` configuration command only; the config-viewer action is now exposed exclusively inside that menu. Runtime is O(1) for registration. Side effects include command registration.
|
|
5458
5458
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5460,7 +5460,7 @@ registration and status updates.
|
|
|
5460
5460
|
- @return {void} No return value.
|
|
5461
5461
|
- @satisfies REQ-006, REQ-031
|
|
5462
5462
|
|
|
5463
|
-
### fn `export default function piUsereqExtension(pi: ExtensionAPI): void` (
|
|
5463
|
+
### fn `export default function piUsereqExtension(pi: ExtensionAPI): void` (L4399-4412)
|
|
5464
5464
|
- @brief Registers the complete pi-usereq extension.
|
|
5465
5465
|
- @details Validates installation-owned bundled resources, registers the specialized `req-reset` and `req-references` commands plus bundled prompt-backed commands and agent tools, conditionally registers config-gated debug tool wrapper commands when the current project enables them, registers configuration commands, registers the configurable notification-sound shortcut when the runtime supports shortcuts, and installs shared wrappers for all supported pi lifecycle hooks so status telemetry, context usage, prompt timing, cumulative runtime, prompt-specific Pushover metadata, tool-result debug logging, and prompt-orchestration effects remain synchronized with runtime events. Runtime is O(h) in hook count during registration. Side effects include filesystem reads, command/tool/shortcut registration, UI updates, active-tool changes, optional debug-log writes, and timer scheduling.
|
|
5466
5466
|
- @param[in] pi {ExtensionAPI} Active extension API instance.
|
|
@@ -5480,96 +5480,96 @@ registration and status updates.
|
|
|
5480
5480
|
|`shouldRegisterDebugToolCommands`|fn||286-292|function shouldRegisterDebugToolCommands(cwd: string): bo...|
|
|
5481
5481
|
|`writeDebugToolCommandResultToEditor`|fn||303-317|function writeDebugToolCommandResultToEditor(|
|
|
5482
5482
|
|`executeDebugToolCommand`|fn||329-347|function executeDebugToolCommand(|
|
|
5483
|
-
|`registerDebugToolCommands`|fn||356-
|
|
5484
|
-
|`saveProjectConfig`|fn||
|
|
5485
|
-
|`formatLocalConfigPathForMenu`|fn||
|
|
5486
|
-
|`formatGlobalConfigPathForMenu`|fn||
|
|
5487
|
-
|`buildTerminalSettingsMenuChoices`|fn||
|
|
5488
|
-
|`ResetConfirmationChange`|iface||
|
|
5489
|
-
|`formatResetConfirmationValue`|fn||
|
|
5490
|
-
|`buildResetConfirmationChoices`|fn||
|
|
5491
|
-
|`confirmResetChanges`|fn||
|
|
5492
|
-
|`writePersistedConfigToEditor`|fn||
|
|
5493
|
-
|`writePersistedLocalConfigToEditor`|fn||
|
|
5494
|
-
|`writePersistedGlobalConfigToEditor`|fn||
|
|
5495
|
-
|`buildSearchToolSupportedTagGuidelines`|fn||
|
|
5496
|
-
|`buildSearchToolSchemaDescription`|fn||
|
|
5497
|
-
|`buildSearchToolPromptGuidelines`|fn||
|
|
5498
|
-
|`MonolithicToolRenderResult`|type||
|
|
5499
|
-
|`getMonolithicToolText`|fn||
|
|
5500
|
-
|`getMonolithicToolErrorText`|fn||
|
|
5501
|
-
|`formatCompactToolArgumentValue`|fn||
|
|
5502
|
-
|`buildCompactToolInvocationText`|fn||
|
|
5503
|
-
|`summarizeStructuredToolResult`|fn||
|
|
5504
|
-
|`buildStructuredToolRenderResult`|fn||
|
|
5505
|
-
|`executeMonolithicTool`|fn||
|
|
5506
|
-
|`executeStatusTool`|fn||
|
|
5507
|
-
|`deliverPromptCommand`|fn||
|
|
5508
|
-
|`shouldIgnoreLatePromptDeliveryFailure`|fn||
|
|
5509
|
-
|`logPromptWorkflowStateChange`|fn||
|
|
5510
|
-
|`logPromptWorkflowEvent`|fn||
|
|
5511
|
-
|`transitionPromptWorkflowState`|fn||
|
|
5512
|
-
|`resolvePromptCommandDescription`|fn||
|
|
5513
|
-
|`resolveDebugProjectBase`|fn||
|
|
5514
|
-
|`notifyContextSafely`|fn||
|
|
5515
|
-
|`rejectNonIdleReqCommand`|fn||
|
|
5516
|
-
|`getPiUsereqStartupTools`|fn||
|
|
5517
|
-
|`getConfiguredEnabledPiUsereqTools`|fn||
|
|
5518
|
-
|`applyConfiguredPiUsereqTools`|fn||
|
|
5519
|
-
|`handleExtensionStatusEvent`|fn||
|
|
5520
|
-
|`registerExtensionStatusHooks`|fn||
|
|
5521
|
-
|`setConfiguredPiUsereqTools`|fn||
|
|
5522
|
-
|`getDebugToolToggleNames`|fn||
|
|
5523
|
-
|`resetDebugConfigToDefaults`|fn||
|
|
5524
|
-
|`formatDebugMenuSummary`|fn||
|
|
5525
|
-
|`buildDebugMenuChoice`|fn||
|
|
5526
|
-
|`selectDebugLogOnStatus`|fn||
|
|
5527
|
-
|`buildDebugMenuChoices`|fn||
|
|
5528
|
-
|`configureDebugMenu`|fn||
|
|
5529
|
-
|`updateDebugToolCommandsEnabled`|fn||
|
|
5530
|
-
|`PiNotifyBooleanConfigKey`|type||
|
|
5531
|
-
|`PiNotifyEventBooleanConfigKey`|type||
|
|
5532
|
-
|`PiNotifyEventId`|type||
|
|
5533
|
-
|`PiNotifyEventRowDefinition`|iface||
|
|
5534
|
-
|`PiNotifyEventMenuDefinition`|iface||
|
|
5535
|
-
|`togglePiNotifyFlag`|fn||
|
|
5536
|
-
|`resetPiNotifyConfigToDefaults`|fn||
|
|
5537
|
-
|`formatPiNotifyPushoverPriority`|fn||
|
|
5538
|
-
|`formatPiNotifyEventMenuSummary`|fn||
|
|
5539
|
-
|`buildPiNotifyEventLauncherChoice`|fn||
|
|
5540
|
-
|`buildPiNotifyEventMenuChoices`|fn||
|
|
5541
|
-
|`resetPiNotifyEventMenuToDefaults`|fn||
|
|
5542
|
-
|`resolvePiNotifyEventLabel`|fn||
|
|
5543
|
-
|`configurePiNotifyEventMenu`|fn||
|
|
5544
|
-
|`buildPiNotifyPushoverRows`|fn||
|
|
5545
|
-
|`selectPiNotifyPushoverPriority`|fn||
|
|
5546
|
-
|`buildPiNotifyMenuChoices`|fn||
|
|
5547
|
-
|`selectPiNotifySoundLevel`|fn||
|
|
5548
|
-
|`configurePiNotifyMenu`|fn||
|
|
5549
|
-
|`registerPiNotifyShortcut`|fn||
|
|
5550
|
-
|`resolveReqResetPromptRequest`|fn||
|
|
5551
|
-
|`isWorktreeBacked`|fn||
|
|
5552
|
-
|`registerReqResetCommand`|fn||
|
|
5553
|
-
|`registerReqReferencesCommand`|fn||
|
|
5554
|
-
|`registerPromptCommands`|fn||
|
|
5555
|
-
|`registerAgentTools`|fn||
|
|
5556
|
-
|`buildPiUsereqToolsMenuChoices`|fn||
|
|
5557
|
-
|`buildPiUsereqToolToggleChoices`|fn||
|
|
5558
|
-
|`configurePiUsereqToolsMenu`|fn||
|
|
5559
|
-
|`getStaticCheckLanguageConfigForMenu`|fn||
|
|
5560
|
-
|`countConfiguredStaticCheckLanguages`|fn||
|
|
5561
|
-
|`countEnabledStaticCheckLanguages`|fn||
|
|
5562
|
-
|`resetStaticCheckConfig`|fn||
|
|
5563
|
-
|`formatStaticCheckLanguagesSummary`|fn||
|
|
5564
|
-
|`buildStaticCheckMenuChoices`|fn||
|
|
5565
|
-
|`buildSupportedStaticCheckLanguageChoices`|fn||
|
|
5566
|
-
|`buildConfiguredStaticCheckLanguageChoices`|fn||
|
|
5567
|
-
|`configureStaticCheckMenu`|fn||
|
|
5568
|
-
|`buildPiUsereqMenuChoices`|fn||
|
|
5569
|
-
|`buildSrcDirMenuChoices`|fn||
|
|
5570
|
-
|`buildSrcDirRemovalChoices`|fn||
|
|
5571
|
-
|`configurePiUsereq`|fn||
|
|
5572
|
-
|`persistConfigChange`|fn||
|
|
5573
|
-
|`registerConfigCommands`|fn||
|
|
5574
|
-
|`piUsereqExtension`|fn||
|
|
5483
|
+
|`registerDebugToolCommands`|fn||356-395|function registerDebugToolCommands(pi: ExtensionAPI): void|
|
|
5484
|
+
|`saveProjectConfig`|fn||405-408|function saveProjectConfig(cwd: string, config: UseReqCon...|
|
|
5485
|
+
|`formatLocalConfigPathForMenu`|fn||417-421|function formatLocalConfigPathForMenu(cwd: string): string|
|
|
5486
|
+
|`formatGlobalConfigPathForMenu`|fn||429-431|function formatGlobalConfigPathForMenu(): string|
|
|
5487
|
+
|`buildTerminalSettingsMenuChoices`|fn||440-451|function buildTerminalSettingsMenuChoices(options:|
|
|
5488
|
+
|`ResetConfirmationChange`|iface||457-461|interface ResetConfirmationChange|
|
|
5489
|
+
|`formatResetConfirmationValue`|fn||470-472|function formatResetConfirmationValue(previousValue: stri...|
|
|
5490
|
+
|`buildResetConfirmationChoices`|fn||482-521|function buildResetConfirmationChoices(|
|
|
5491
|
+
|`confirmResetChanges`|fn||533-546|async function confirmResetChanges(|
|
|
5492
|
+
|`writePersistedConfigToEditor`|fn||555-560|function writePersistedConfigToEditor(|
|
|
5493
|
+
|`writePersistedLocalConfigToEditor`|fn||570-576|function writePersistedLocalConfigToEditor(|
|
|
5494
|
+
|`writePersistedGlobalConfigToEditor`|fn||585-589|function writePersistedGlobalConfigToEditor(|
|
|
5495
|
+
|`buildSearchToolSupportedTagGuidelines`|fn||650-654|function buildSearchToolSupportedTagGuidelines(): string[]|
|
|
5496
|
+
|`buildSearchToolSchemaDescription`|fn||662-667|function buildSearchToolSchemaDescription(scope: FindTool...|
|
|
5497
|
+
|`buildSearchToolPromptGuidelines`|fn||675-688|function buildSearchToolPromptGuidelines(scope: FindToolS...|
|
|
5498
|
+
|`MonolithicToolRenderResult`|type||694||
|
|
5499
|
+
|`getMonolithicToolText`|fn||711-714|function getMonolithicToolText(result: MonolithicToolRend...|
|
|
5500
|
+
|`getMonolithicToolErrorText`|fn||722-732|function getMonolithicToolErrorText(result: MonolithicToo...|
|
|
5501
|
+
|`formatCompactToolArgumentValue`|fn||740-779|function formatCompactToolArgumentValue(value: unknown): ...|
|
|
5502
|
+
|`buildCompactToolInvocationText`|fn||787-798|function buildCompactToolInvocationText(args: Record<stri...|
|
|
5503
|
+
|`summarizeStructuredToolResult`|fn||808-823|function summarizeStructuredToolResult(|
|
|
5504
|
+
|`buildStructuredToolRenderResult`|fn||832-851|function buildStructuredToolRenderResult(toolName: string)|
|
|
5505
|
+
|`executeMonolithicTool`|fn||859-865|function executeMonolithicTool(operation: () => ToolResul...|
|
|
5506
|
+
|`executeStatusTool`|fn||874-903|function executeStatusTool(operation: () => ToolResult): ...|
|
|
5507
|
+
|`deliverPromptCommand`|fn||914-932|function deliverPromptCommand(|
|
|
5508
|
+
|`shouldIgnoreLatePromptDeliveryFailure`|fn||943-959|function shouldIgnoreLatePromptDeliveryFailure(|
|
|
5509
|
+
|`logPromptWorkflowStateChange`|fn||972-991|function logPromptWorkflowStateChange(|
|
|
5510
|
+
|`logPromptWorkflowEvent`|fn||1007-1027|function logPromptWorkflowEvent(|
|
|
5511
|
+
|`transitionPromptWorkflowState`|fn||1040-1053|function transitionPromptWorkflowState(|
|
|
5512
|
+
|`resolvePromptCommandDescription`|fn||1061-1065|function resolvePromptCommandDescription(|
|
|
5513
|
+
|`resolveDebugProjectBase`|fn||1074-1078|function resolveDebugProjectBase(cwd: string, statusContr...|
|
|
5514
|
+
|`notifyContextSafely`|fn||1089-1106|function notifyContextSafely(|
|
|
5515
|
+
|`rejectNonIdleReqCommand`|fn||1118-1138|function rejectNonIdleReqCommand(|
|
|
5516
|
+
|`getPiUsereqStartupTools`|fn||1147-1155|function getPiUsereqStartupTools(pi: ExtensionAPI): ToolI...|
|
|
5517
|
+
|`getConfiguredEnabledPiUsereqTools`|fn||1163-1167|function getConfiguredEnabledPiUsereqTools(config: UseReq...|
|
|
5518
|
+
|`applyConfiguredPiUsereqTools`|fn||1177-1194|function applyConfiguredPiUsereqTools(pi: ExtensionAPI, c...|
|
|
5519
|
+
|`handleExtensionStatusEvent`|fn||1207-1478|async function handleExtensionStatusEvent(|
|
|
5520
|
+
|`registerExtensionStatusHooks`|fn||1494-1513|function registerExtensionStatusHooks(|
|
|
5521
|
+
|`setConfiguredPiUsereqTools`|fn||1523-1526|function setConfiguredPiUsereqTools(pi: ExtensionAPI, con...|
|
|
5522
|
+
|`getDebugToolToggleNames`|fn||1534-1536|function getDebugToolToggleNames(): PiUsereqStartupToolNa...|
|
|
5523
|
+
|`resetDebugConfigToDefaults`|fn||1545-1554|function resetDebugConfigToDefaults(config: UseReqConfig)...|
|
|
5524
|
+
|`formatDebugMenuSummary`|fn||1562-1568|function formatDebugMenuSummary(config: UseReqConfig): st...|
|
|
5525
|
+
|`buildDebugMenuChoice`|fn||1578-1591|function buildDebugMenuChoice(|
|
|
5526
|
+
|`selectDebugLogOnStatus`|fn||1600-1628|async function selectDebugLogOnStatus(|
|
|
5527
|
+
|`buildDebugMenuChoices`|fn||1637-1723|function buildDebugMenuChoices(config: UseReqConfig): PiU...|
|
|
5528
|
+
|`configureDebugMenu`|fn||1734-1924|async function configureDebugMenu(|
|
|
5529
|
+
|`updateDebugToolCommandsEnabled`|fn||1740-1747|const updateDebugToolCommandsEnabled = (nextValue: unknow...|
|
|
5530
|
+
|`PiNotifyBooleanConfigKey`|type||1930||
|
|
5531
|
+
|`PiNotifyEventBooleanConfigKey`|type||1947||
|
|
5532
|
+
|`PiNotifyEventId`|type||1956||
|
|
5533
|
+
|`PiNotifyEventRowDefinition`|iface||1962-1966|interface PiNotifyEventRowDefinition|
|
|
5534
|
+
|`PiNotifyEventMenuDefinition`|iface||1972-1978|interface PiNotifyEventMenuDefinition|
|
|
5535
|
+
|`togglePiNotifyFlag`|fn||1987-1990|function togglePiNotifyFlag(config: UseReqConfig, key: Pi...|
|
|
5536
|
+
|`resetPiNotifyConfigToDefaults`|fn||1999-2023|function resetPiNotifyConfigToDefaults(config: UseReqConf...|
|
|
5537
|
+
|`formatPiNotifyPushoverPriority`|fn||2032-2034|function formatPiNotifyPushoverPriority(priority: PiNotif...|
|
|
5538
|
+
|`formatPiNotifyEventMenuSummary`|fn||2118-2126|function formatPiNotifyEventMenuSummary(|
|
|
5539
|
+
|`buildPiNotifyEventLauncherChoice`|fn||2136-2146|function buildPiNotifyEventLauncherChoice(|
|
|
5540
|
+
|`buildPiNotifyEventMenuChoices`|fn||2156-2172|function buildPiNotifyEventMenuChoices(|
|
|
5541
|
+
|`resetPiNotifyEventMenuToDefaults`|fn||2182-2190|function resetPiNotifyEventMenuToDefaults(|
|
|
5542
|
+
|`resolvePiNotifyEventLabel`|fn||2200-2207|function resolvePiNotifyEventLabel(|
|
|
5543
|
+
|`configurePiNotifyEventMenu`|fn||2218-2294|async function configurePiNotifyEventMenu(|
|
|
5544
|
+
|`buildPiNotifyPushoverRows`|fn||2303-2353|function buildPiNotifyPushoverRows(config: UseReqConfig):...|
|
|
5545
|
+
|`selectPiNotifyPushoverPriority`|fn||2363-2391|async function selectPiNotifyPushoverPriority(|
|
|
5546
|
+
|`buildPiNotifyMenuChoices`|fn||2400-2458|function buildPiNotifyMenuChoices(config: UseReqConfig): ...|
|
|
5547
|
+
|`selectPiNotifySoundLevel`|fn||2468-2508|async function selectPiNotifySoundLevel(|
|
|
5548
|
+
|`configurePiNotifyMenu`|fn||2518-2804|async function configurePiNotifyMenu(|
|
|
5549
|
+
|`registerPiNotifyShortcut`|fn||2819-2842|function registerPiNotifyShortcut(|
|
|
5550
|
+
|`resolveReqResetPromptRequest`|fn||2850-2876|function resolveReqResetPromptRequest(|
|
|
5551
|
+
|`isWorktreeBacked`|fn||2853-2860|const isWorktreeBacked = (request: PromptCommandExecution...|
|
|
5552
|
+
|`registerReqResetCommand`|fn||2886-2940|function registerReqResetCommand(|
|
|
5553
|
+
|`registerReqReferencesCommand`|fn||2950-2990|function registerReqReferencesCommand(|
|
|
5554
|
+
|`registerPromptCommands`|fn||3000-3116|function registerPromptCommands(|
|
|
5555
|
+
|`registerAgentTools`|fn||3126-3425|function registerAgentTools(pi: ExtensionAPI): void|
|
|
5556
|
+
|`buildPiUsereqToolsMenuChoices`|fn||3470-3495|function buildPiUsereqToolsMenuChoices(pi: ExtensionAPI, ...|
|
|
5557
|
+
|`buildPiUsereqToolToggleChoices`|fn||3505-3519|function buildPiUsereqToolToggleChoices(pi: ExtensionAPI,...|
|
|
5558
|
+
|`configurePiUsereqToolsMenu`|fn||3530-3647|async function configurePiUsereqToolsMenu(|
|
|
5559
|
+
|`getStaticCheckLanguageConfigForMenu`|fn||3656-3661|function getStaticCheckLanguageConfigForMenu(|
|
|
5560
|
+
|`countConfiguredStaticCheckLanguages`|fn||3669-3671|function countConfiguredStaticCheckLanguages(config: UseR...|
|
|
5561
|
+
|`countEnabledStaticCheckLanguages`|fn||3679-3681|function countEnabledStaticCheckLanguages(config: UseReqC...|
|
|
5562
|
+
|`resetStaticCheckConfig`|fn||3690-3692|function resetStaticCheckConfig(config: UseReqConfig): void|
|
|
5563
|
+
|`formatStaticCheckLanguagesSummary`|fn||3700-3702|function formatStaticCheckLanguagesSummary(config: UseReq...|
|
|
5564
|
+
|`buildStaticCheckMenuChoices`|fn||3711-3743|function buildStaticCheckMenuChoices(config: UseReqConfig...|
|
|
5565
|
+
|`buildSupportedStaticCheckLanguageChoices`|fn||3751-3768|function buildSupportedStaticCheckLanguageChoices(config:...|
|
|
5566
|
+
|`buildConfiguredStaticCheckLanguageChoices`|fn||3776-3793|function buildConfiguredStaticCheckLanguageChoices(config...|
|
|
5567
|
+
|`configureStaticCheckMenu`|fn||3803-3949|async function configureStaticCheckMenu(|
|
|
5568
|
+
|`buildPiUsereqMenuChoices`|fn||3959-4058|function buildPiUsereqMenuChoices(|
|
|
5569
|
+
|`buildSrcDirMenuChoices`|fn||4067-4085|function buildSrcDirMenuChoices(config: UseReqConfig): Pi...|
|
|
5570
|
+
|`buildSrcDirRemovalChoices`|fn||4094-4106|function buildSrcDirRemovalChoices(config: UseReqConfig):...|
|
|
5571
|
+
|`configurePiUsereq`|fn||4117-4370|async function configurePiUsereq(|
|
|
5572
|
+
|`persistConfigChange`|fn||4128-4133|const persistConfigChange = () =>|
|
|
5573
|
+
|`registerConfigCommands`|fn||4380-4390|function registerConfigCommands(|
|
|
5574
|
+
|`piUsereqExtension`|fn||4399-4412|export default function piUsereqExtension(pi: ExtensionAP...|
|
|
5575
5575
|
|