@codyswann/lisa 4.85.0 → 4.86.1
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/all/copy-overwrite/scripts/lib/completion-proof-content.mjs +63 -22
- package/all/copy-overwrite/scripts/lib/npm-update-hosted-hook.mjs +6 -1
- package/all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh +19 -3
- package/all/copy-overwrite/scripts/npm-updater-helper-graph.json +2 -2
- package/dist/cli/doctor-session-manager-pending.d.ts +17 -0
- package/dist/cli/doctor-session-manager-pending.d.ts.map +1 -0
- package/dist/cli/doctor-session-manager-pending.js +130 -0
- package/dist/cli/doctor-session-manager-pending.js.map +1 -0
- package/dist/cli/doctor-session-manager-token.d.ts +69 -0
- package/dist/cli/doctor-session-manager-token.d.ts.map +1 -0
- package/dist/cli/doctor-session-manager-token.js +264 -0
- package/dist/cli/doctor-session-manager-token.js.map +1 -0
- package/dist/cli/doctor-session-manager.d.ts +3 -1
- package/dist/cli/doctor-session-manager.d.ts.map +1 -1
- package/dist/cli/doctor-session-manager.js +168 -146
- package/dist/cli/doctor-session-manager.js.map +1 -1
- package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
- package/dist/core/lisa-owned-hash-ledger.js +16 -0
- package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
- package/dist/core/nightly-e2e-guard-behavior-certificate.js +2 -2
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +168 -26
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/dist/opencode/plugin-templates/parity-safety-net.sh +19 -3
- package/package.json +4 -4
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa/.codex-plugin/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa/commands/session-manager.md +1 -1
- package/plugins/lisa/commands/setup/session-manager.md +1 -1
- package/plugins/lisa/hooks/parity-safety-net.sh +19 -3
- package/plugins/lisa/rules/reference/config-resolution.md +39 -7
- package/plugins/lisa/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa-agy/commands/lisa/session-manager.md +1 -1
- package/plugins/lisa-agy/commands/lisa/setup/session-manager.md +1 -1
- package/plugins/lisa-agy/hooks/parity-safety-net.sh +19 -3
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa-agy/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa-agy/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa-agy/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa-agy/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa-agy/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/commands/lisa/session-manager.md +1 -1
- package/plugins/lisa-copilot/commands/lisa/setup/session-manager.md +1 -1
- package/plugins/lisa-copilot/hooks/parity-safety-net.sh +19 -3
- package/plugins/lisa-copilot/rules/reference/config-resolution.md +39 -7
- package/plugins/lisa-copilot/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa-copilot/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa-copilot/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa-copilot/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa-copilot/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa-copilot/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/commands/lisa/session-manager.md +1 -1
- package/plugins/lisa-cursor/commands/lisa/setup/session-manager.md +1 -1
- package/plugins/lisa-cursor/hooks/parity-safety-net.sh +19 -3
- package/plugins/lisa-cursor/rules/config-resolution-reference.mdc +39 -7
- package/plugins/lisa-cursor/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa-cursor/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa-cursor/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa-cursor/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa-cursor/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa-cursor/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-devin/hooks/parity-safety-net.sh +19 -3
- package/plugins/lisa-devin/rules/reference/config-resolution.md +39 -7
- package/plugins/lisa-devin/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/lisa-devin/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/lisa-devin/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/lisa-devin/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/lisa-devin/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/lisa-devin/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/lisa-devin/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/lisa-devin/skills/lisa-setup-session-manager/SKILL.md +82 -19
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-devin/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-devin/.devin-plugin/plugin.json +1 -1
- package/plugins/src/base/commands/session-manager.md +1 -1
- package/plugins/src/base/commands/setup/session-manager.md +1 -1
- package/plugins/src/base/hooks/parity-safety-net.sh +19 -3
- package/plugins/src/base/rules/reference/config-resolution.md +39 -7
- package/plugins/src/base/skills/lisa-parity-sentry-sdk-setup/SKILL.md +24 -17
- package/plugins/src/base/skills/lisa-secrets-access/SKILL.md +5 -3
- package/plugins/src/base/skills/lisa-secrets-access/scripts/providers.mjs +121 -3
- package/plugins/src/base/skills/lisa-secrets-access/scripts/validate-config.mjs +86 -31
- package/plugins/src/base/skills/lisa-session-manager/SKILL.md +197 -54
- package/plugins/src/base/skills/lisa-session-manager/references/runbook-template.md +23 -10
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-cycle.mjs +21 -3
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-human.mjs +199 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-manager-token.mjs +99 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-manager.mjs +52 -52
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-queue.mjs +51 -139
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-runtime.mjs +5 -3
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-setup.mjs +94 -14
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-status.mjs +73 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/cli-usage.mjs +105 -15
- package/plugins/src/base/skills/lisa-session-manager/scripts/config.mjs +39 -11
- package/plugins/src/base/skills/lisa-session-manager/scripts/human-answer.mjs +162 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/human-needed.mjs +198 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/json-input.mjs +34 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/launch-shell.mjs +115 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/launch.mjs +69 -60
- package/plugins/src/base/skills/lisa-session-manager/scripts/ledger-questions.mjs +252 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/ledger.mjs +22 -56
- package/plugins/src/base/skills/lisa-session-manager/scripts/queue-github.mjs +117 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/session-manager.mjs +17 -5
- package/plugins/src/base/skills/lisa-session-manager/scripts/token-migrate.mjs +180 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/token-provider.mjs +150 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/token-read.mjs +166 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/token-store.mjs +248 -0
- package/plugins/src/base/skills/lisa-session-manager/scripts/token.mjs +39 -120
- package/plugins/src/base/skills/lisa-setup-session-manager/SKILL.md +82 -19
|
@@ -1,153 +1,186 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Doctor check for the session manager's
|
|
2
|
+
* Doctor check for the session manager's notification channel (#4448,
|
|
3
|
+
* #4555).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* dir,
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
5
|
+
* Telegram is optional. With no channel (`notify.provider` `"none"`, or no
|
|
6
|
+
* `notify` block) there is no bot, token, state dir or plugin to require, so
|
|
7
|
+
* the check reports "notifications: none" and runs only the findings that
|
|
8
|
+
* matter either way: a plaintext bot token still lying around (an exported
|
|
9
|
+
* `TELEGRAM_BOT_TOKEN*` variable, or a token file in the shared Telegram
|
|
10
|
+
* dir), managed settings that override the manager's
|
|
11
|
+
* `crossSessionInbound: accept`, and the trust findings (a public repo
|
|
12
|
+
* without `trustedAuthorIds`). With Telegram it also runs the isolation
|
|
13
|
+
* findings in `doctor-session-manager-token` (state dir, where the bot token
|
|
14
|
+
* lives: a leftover plaintext file with a secrets provider configured, or a
|
|
15
|
+
* plaintext file because none is, and its mode; user-scope plugin, shared
|
|
16
|
+
* default dir, exported variables) and the
|
|
17
|
+
* project-scope plugin finding. An unsupported provider, or a `stateDir`
|
|
18
|
+
* without the telegram provider, fails the way the runtime validator refuses
|
|
19
|
+
* it.
|
|
20
|
+
*
|
|
21
|
+
* Either way it lists the items the manager has waiting on a human and warns
|
|
22
|
+
* about one recorded but never marked on the tracker
|
|
23
|
+
* (`doctor-session-manager-pending`, #4555).
|
|
13
24
|
*
|
|
14
25
|
* Gated on a `sessionManager` block in the merged config (the Kane model): a
|
|
15
26
|
* project that never opted in gets `ok` / "not configured" and nothing is read
|
|
16
|
-
* under HOME.
|
|
17
|
-
*
|
|
18
|
-
* only. HOME, env, file reads and managed-settings paths are injectable so
|
|
19
|
-
* tests never touch the operator's real `~/.claude`.
|
|
27
|
+
* under HOME. HOME, env, file reads and managed-settings paths are injectable
|
|
28
|
+
* so tests never touch the operator's real `~/.claude`.
|
|
20
29
|
*/
|
|
21
30
|
import { readFile as fsReadFile, stat as fsStat } from "node:fs/promises";
|
|
22
31
|
import * as os from "node:os";
|
|
23
32
|
import * as path from "node:path";
|
|
24
|
-
import { ghRepoVisibility, isRecord,
|
|
33
|
+
import { ghRepoVisibility, isRecord, projectPluginFindings, readJson, trustFindings, } from "./doctor-session-manager-trust.js";
|
|
34
|
+
import { resolveStateDir, plaintextTokenFindings, secretsProviderAt, telegramFindings, telegramSecretNameFor, } from "./doctor-session-manager-token.js";
|
|
35
|
+
import { pendingHumanReport } from "./doctor-session-manager-pending.js";
|
|
25
36
|
import { mergeSessionManagerBlocks } from "./session-manager-config-merge.js";
|
|
26
|
-
const CHECK_NAME = "Session manager
|
|
27
|
-
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
/** Group + other permission bits are the low six bits of a file mode. */
|
|
31
|
-
const GROUP_OTHER_SPAN = 0o100;
|
|
32
|
-
/** All permission bits (owner, group, other) are the low nine. */
|
|
33
|
-
const PERMISSION_SPAN = 0o1000;
|
|
37
|
+
const CHECK_NAME = "Session manager notifications?";
|
|
38
|
+
/** Detail for a valid setup with no notification channel. */
|
|
39
|
+
const NO_CHANNEL = "notifications: none";
|
|
40
|
+
const PROVIDERS = ["none", "telegram"];
|
|
34
41
|
/** Managed settings outrank `--settings`, so they can undo the manager's. */
|
|
35
42
|
export const DEFAULT_MANAGED_SETTINGS_PATHS = [
|
|
36
43
|
"/Library/Application Support/ClaudeCode/managed-settings.json",
|
|
37
44
|
"/etc/claude-code/managed-settings.json",
|
|
38
45
|
];
|
|
39
46
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
* @param
|
|
44
|
-
* @returns
|
|
45
|
-
*/
|
|
46
|
-
function resolveStateDir(raw, home, projectRoot) {
|
|
47
|
-
if (typeof raw !== "string" || raw.trim() === "")
|
|
48
|
-
return undefined;
|
|
49
|
-
const dir = raw.trim();
|
|
50
|
-
if (dir === "~")
|
|
51
|
-
return home;
|
|
52
|
-
if (dir.startsWith("~/"))
|
|
53
|
-
return path.resolve(home, dir.slice(2));
|
|
54
|
-
return path.resolve(projectRoot, dir);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Findings about the configured per-project state dir and its token file.
|
|
58
|
-
* @param ctx - Resolved inputs
|
|
59
|
-
* @param stateDir - Absolute state dir, or undefined when unset
|
|
60
|
-
* @returns Findings
|
|
61
|
-
*/
|
|
62
|
-
async function stateDirFindings(ctx, stateDir) {
|
|
63
|
-
if (stateDir === undefined) {
|
|
64
|
-
return [
|
|
65
|
-
{
|
|
66
|
-
status: "fail",
|
|
67
|
-
text: "sessionManager.notify.stateDir is not set; run /lisa:setup:session-manager to give this project its own Telegram state dir",
|
|
68
|
-
},
|
|
69
|
-
];
|
|
70
|
-
}
|
|
71
|
-
if (stateDir === ctx.sharedDir) {
|
|
72
|
-
return [
|
|
73
|
-
{
|
|
74
|
-
status: "fail",
|
|
75
|
-
text: `notify.stateDir is the shared default ${ctx.sharedDir}, so every Telegram session on this machine would poll one bot; point it at a per-project dir such as ${ctx.sharedDir}-<project>`,
|
|
76
|
-
},
|
|
77
|
-
];
|
|
78
|
-
}
|
|
79
|
-
const tokenFile = path.join(stateDir, TOKEN_FILE);
|
|
80
|
-
const mode = await modeOf(ctx.statFile, tokenFile);
|
|
81
|
-
if (mode === undefined) {
|
|
82
|
-
return [
|
|
83
|
-
{
|
|
84
|
-
status: "warn",
|
|
85
|
-
text: `token file ${tokenFile} is missing, so the manager cannot start; store the bot token with /lisa:setup:session-manager`,
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
}
|
|
89
|
-
if (mode % GROUP_OTHER_SPAN === 0)
|
|
90
|
-
return [];
|
|
91
|
-
const octal = (mode % PERMISSION_SPAN).toString(8).padStart(3, "0");
|
|
92
|
-
return [
|
|
93
|
-
{
|
|
94
|
-
status: "warn",
|
|
95
|
-
text: `token file ${tokenFile} has mode 0${octal}, open to other users; run chmod 600 ${tokenFile}`,
|
|
96
|
-
},
|
|
97
|
-
];
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Findings about the user-scope plugin and the shared default token file.
|
|
101
|
-
* @param ctx - Resolved inputs
|
|
102
|
-
* @returns Findings
|
|
47
|
+
* Read the notification provider the way the runtime validator does: absent
|
|
48
|
+
* or `"none"` is no channel, `"telegram"` is the bot, anything else fails, and
|
|
49
|
+
* a `stateDir` without telegram fails because no bot would use it.
|
|
50
|
+
* @param notify - The merged `notify` block, or `{}`
|
|
51
|
+
* @returns The provider (undefined when the block cannot run) and problems
|
|
103
52
|
*/
|
|
104
|
-
|
|
105
|
-
const
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
53
|
+
function notifyMode(notify) {
|
|
54
|
+
const raw = notify.provider ?? "none";
|
|
55
|
+
const provider = PROVIDERS.find(name => name === raw);
|
|
56
|
+
if (provider === undefined) {
|
|
57
|
+
return {
|
|
58
|
+
provider,
|
|
59
|
+
problems: [
|
|
111
60
|
{
|
|
112
|
-
status: "
|
|
113
|
-
text:
|
|
61
|
+
status: "fail",
|
|
62
|
+
text: `sessionManager.notify.provider ${JSON.stringify(raw)} is not supported; use "none" (no notification channel) or "telegram"`,
|
|
114
63
|
},
|
|
115
|
-
]
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
64
|
+
],
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
if (provider === "none" && notify.stateDir !== undefined) {
|
|
68
|
+
return {
|
|
69
|
+
provider: undefined,
|
|
70
|
+
problems: [
|
|
120
71
|
{
|
|
121
|
-
status: "
|
|
122
|
-
text:
|
|
72
|
+
status: "fail",
|
|
73
|
+
text: 'sessionManager.notify.stateDir is set, but notify.provider is not "telegram", so no bot would use it; set notify.provider to "telegram" or remove notify.stateDir',
|
|
123
74
|
},
|
|
124
|
-
]
|
|
125
|
-
|
|
75
|
+
],
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
return { provider, problems: [] };
|
|
126
79
|
}
|
|
127
80
|
/**
|
|
128
|
-
* Findings about
|
|
129
|
-
*
|
|
81
|
+
* Findings about managed settings, which outrank the manager's `--settings`
|
|
82
|
+
* whether or not it has a notification channel.
|
|
83
|
+
* @param read - Text reader
|
|
84
|
+
* @param managedPaths - Managed-settings files, in precedence order
|
|
130
85
|
* @returns Findings
|
|
131
86
|
*/
|
|
132
|
-
async function
|
|
133
|
-
const
|
|
134
|
-
status: "warn",
|
|
135
|
-
text: `${name} is set in this shell's environment, so workers may inherit it; remove the export from your shell profile`,
|
|
136
|
-
}));
|
|
137
|
-
const managed = await Promise.all(ctx.managedPaths.map(async (file) => ({
|
|
87
|
+
async function managedFindings(read, managedPaths) {
|
|
88
|
+
const managed = await Promise.all(managedPaths.map(async (file) => ({
|
|
138
89
|
file,
|
|
139
|
-
inbound: (await readJson(
|
|
90
|
+
inbound: (await readJson(read, file))?.crossSessionInbound,
|
|
140
91
|
})));
|
|
141
|
-
|
|
92
|
+
return managed
|
|
142
93
|
.filter(({ inbound }) => inbound !== undefined && inbound !== "accept")
|
|
143
94
|
.map(({ file, inbound }) => ({
|
|
144
95
|
status: "warn",
|
|
145
96
|
text: `managed settings ${file} set crossSessionInbound to ${JSON.stringify(inbound)}, which outranks the manager's "accept", so worker messages would be held`,
|
|
146
97
|
}));
|
|
147
|
-
return [...exported, ...held];
|
|
148
98
|
}
|
|
149
99
|
/**
|
|
150
|
-
*
|
|
100
|
+
* The home directory doctor resolves `~` against.
|
|
101
|
+
* @param deps - Injected environment and HOME
|
|
102
|
+
* @returns Home directory
|
|
103
|
+
*/
|
|
104
|
+
function homeOf(deps) {
|
|
105
|
+
return deps.home ?? deps.env.HOME ?? os.homedir();
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* The Claude config dir doctor inspects: `CLAUDE_CONFIG_DIR`, else
|
|
109
|
+
* `<home>/.claude`.
|
|
110
|
+
* @param deps - Injected environment and HOME
|
|
111
|
+
* @returns Absolute dir
|
|
112
|
+
*/
|
|
113
|
+
function claudeDirOf(deps) {
|
|
114
|
+
return deps.env.CLAUDE_CONFIG_DIR
|
|
115
|
+
? path.resolve(deps.env.CLAUDE_CONFIG_DIR)
|
|
116
|
+
: path.join(homeOf(deps), ".claude");
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* The Telegram-only findings, run only when Telegram is the channel.
|
|
120
|
+
* @param targetPath - Project root
|
|
121
|
+
* @param block - Merged `sessionManager` block
|
|
122
|
+
* @param deps - Injected environment, HOME and file access
|
|
123
|
+
* @param read - Text reader
|
|
124
|
+
* @param secretsProvider - Configured secrets provider, undefined for none
|
|
125
|
+
* @returns Findings
|
|
126
|
+
*/
|
|
127
|
+
async function channelFindings(targetPath, block, deps, read, secretsProvider) {
|
|
128
|
+
const home = homeOf(deps);
|
|
129
|
+
const claudeDir = claudeDirOf(deps);
|
|
130
|
+
const notify = isRecord(block.notify) ? block.notify : {};
|
|
131
|
+
const stateDir = resolveStateDir(notify.stateDir, home, targetPath);
|
|
132
|
+
return [
|
|
133
|
+
...(await telegramFindings({
|
|
134
|
+
claudeDir,
|
|
135
|
+
sharedDir: path.join(claudeDir, "channels", "telegram"),
|
|
136
|
+
env: deps.env,
|
|
137
|
+
read,
|
|
138
|
+
statFile: deps.stat ?? fsStat,
|
|
139
|
+
secretsProvider,
|
|
140
|
+
secretName: telegramSecretNameFor(block.name),
|
|
141
|
+
}, stateDir)),
|
|
142
|
+
...(await projectPluginFindings(targetPath, block, read)),
|
|
143
|
+
];
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* The ok detail for a clean Telegram setup. With a provider, doctor can only
|
|
147
|
+
* say no plaintext copy is left: it never reads the vault (#4555).
|
|
148
|
+
* @param token - Where the token lives
|
|
149
|
+
* @returns Detail text
|
|
150
|
+
*/
|
|
151
|
+
function telegramOkDetail(token) {
|
|
152
|
+
const where = token.secretsProvider === undefined
|
|
153
|
+
? "token file mode 0600 or tighter"
|
|
154
|
+
: `bot token kept in ${token.secretsProvider} as ${token.secretName} with no plaintext copy (doctor never reads the vault, so the secret itself is not checked)`;
|
|
155
|
+
return `isolated: per-project state dir ${String(token.stateDir)}, ${where}, plugin not enabled at user scope`;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* The check's verdict once every finding is in. `note` (the items waiting on
|
|
159
|
+
* a human) is appended to the detail without changing the status.
|
|
160
|
+
* @param provider - Notification provider, undefined when unsupported
|
|
161
|
+
* @param findings - Every finding
|
|
162
|
+
* @param token - Where the bot token lives, for the telegram ok detail
|
|
163
|
+
* @param note - Extra detail, or undefined
|
|
164
|
+
* @returns Doctor check result
|
|
165
|
+
*/
|
|
166
|
+
function verdict(provider, findings, token, note) {
|
|
167
|
+
const withNote = (detail) => note === undefined ? detail : `${detail}; ${note}`;
|
|
168
|
+
if (findings.length === 0) {
|
|
169
|
+
return {
|
|
170
|
+
name: CHECK_NAME,
|
|
171
|
+
status: "ok",
|
|
172
|
+
detail: withNote(provider === "none" ? NO_CHANNEL : telegramOkDetail(token)),
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
const text = findings.map(f => f.text).join("; ");
|
|
176
|
+
return {
|
|
177
|
+
name: CHECK_NAME,
|
|
178
|
+
status: findings.some(f => f.status === "fail") ? "fail" : "warn",
|
|
179
|
+
detail: withNote(provider === "none" ? `${NO_CHANNEL}; ${text}` : text),
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Check the notification channel of a configured session manager.
|
|
151
184
|
* @param targetPath - Project root
|
|
152
185
|
* @param deps - Injected environment, HOME and file access
|
|
153
186
|
* @param options - Doctor options; `offline` skips the visibility probe
|
|
@@ -162,47 +195,36 @@ export async function checkSessionManagerIsolation(targetPath, deps, options = {
|
|
|
162
195
|
if (block === undefined) {
|
|
163
196
|
return { name: CHECK_NAME, status: "ok", detail: "not configured" };
|
|
164
197
|
}
|
|
165
|
-
const home = deps.home ?? deps.env.HOME ?? os.homedir();
|
|
166
|
-
const claudeDir = deps.env.CLAUDE_CONFIG_DIR
|
|
167
|
-
? path.resolve(deps.env.CLAUDE_CONFIG_DIR)
|
|
168
|
-
: path.join(home, ".claude");
|
|
169
|
-
const ctx = {
|
|
170
|
-
claudeDir,
|
|
171
|
-
sharedDir: path.join(claudeDir, "channels", "telegram"),
|
|
172
|
-
env: deps.env,
|
|
173
|
-
read,
|
|
174
|
-
statFile: deps.stat ?? fsStat,
|
|
175
|
-
managedPaths: deps.managedSettingsPaths ?? DEFAULT_MANAGED_SETTINGS_PATHS,
|
|
176
|
-
};
|
|
177
198
|
const notify = isRecord(block.notify) ? block.notify : {};
|
|
178
|
-
const
|
|
199
|
+
const mode = notifyMode(notify);
|
|
200
|
+
const secretsProvider = await secretsProviderAt(targetPath, read, deps.env);
|
|
201
|
+
const pending = await pendingHumanReport(targetPath, block, read, deps.now ?? (() => new Date()));
|
|
179
202
|
const findings = [
|
|
180
|
-
...
|
|
181
|
-
...(
|
|
182
|
-
|
|
183
|
-
|
|
203
|
+
...mode.problems,
|
|
204
|
+
...(mode.provider === "telegram"
|
|
205
|
+
? await channelFindings(targetPath, block, deps, read, secretsProvider)
|
|
206
|
+
: await plaintextTokenFindings({
|
|
207
|
+
sharedDir: path.join(claudeDirOf(deps), "channels", "telegram"),
|
|
208
|
+
env: deps.env,
|
|
209
|
+
statFile: deps.stat ?? fsStat,
|
|
210
|
+
})),
|
|
211
|
+
...(await managedFindings(read, deps.managedSettingsPaths ?? DEFAULT_MANAGED_SETTINGS_PATHS)),
|
|
184
212
|
...(await trustFindings({ ...committed, ...local }, block, options.offline === true
|
|
185
213
|
? undefined
|
|
186
214
|
: (deps.probeRepoVisibility ?? ghRepoVisibility))),
|
|
215
|
+
...pending.findings,
|
|
187
216
|
];
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
return {
|
|
196
|
-
name: CHECK_NAME,
|
|
197
|
-
status: findings.some(f => f.status === "fail") ? "fail" : "warn",
|
|
198
|
-
detail: findings.map(f => f.text).join("; "),
|
|
199
|
-
};
|
|
217
|
+
return verdict(mode.provider, findings, {
|
|
218
|
+
stateDir: resolveStateDir(notify.stateDir, homeOf(deps), targetPath),
|
|
219
|
+
secretsProvider,
|
|
220
|
+
secretName: telegramSecretNameFor(block.name),
|
|
221
|
+
}, pending.note);
|
|
200
222
|
}
|
|
201
223
|
catch (error) {
|
|
202
224
|
return {
|
|
203
225
|
name: CHECK_NAME,
|
|
204
226
|
status: "warn",
|
|
205
|
-
detail: `could not evaluate session-manager
|
|
227
|
+
detail: `could not evaluate the session-manager notifications: ${error instanceof Error ? error.message : String(error)}`,
|
|
206
228
|
};
|
|
207
229
|
}
|
|
208
230
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-session-manager.js","sourceRoot":"","sources":["../../src/cli/doctor-session-manager.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"doctor-session-manager.js","sourceRoot":"","sources":["../../src/cli/doctor-session-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AACA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AACA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAksEjC,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,+BAA+B,EAAE,QAAQ,CACpD,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAqmEjC,CAAC"}
|
|
@@ -497,8 +497,11 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
497
497
|
"51b2bfccc8ecca684dd80a4e2ae35896e76fa519389fe650f0890ffc0fef421d",
|
|
498
498
|
]),
|
|
499
499
|
"scripts/lib/completion-proof-content.mjs": Object.freeze([
|
|
500
|
+
"254cf8ef8ea87a085b5866348af70a9cfcb03c664977b0c03fb61b3d19f2e66d",
|
|
501
|
+
"679702f6e3cce3919e01c79fe5016d3215f15b067bcab2fb9eeffb0350e7c64f",
|
|
500
502
|
"78b34223d054913c2e900830070cbb1fb2dc267423ec458ae76553ceed0d38c6",
|
|
501
503
|
"cf836b48230a5b7fdfc2425abda1b2328fa4873fd853100f00d1f05412c415be",
|
|
504
|
+
"ed1a5b1f0ba44aca5333d8ce6584db2a63c612b36ab8773d25677103d2fd27ad",
|
|
502
505
|
]),
|
|
503
506
|
"scripts/lib/completion-proof-errors.mjs": Object.freeze([
|
|
504
507
|
"18092420eba568270ab31cae0cbd3e57b525df99be3b79ba0ce8bd01ebadc045",
|
|
@@ -821,6 +824,7 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
821
824
|
"scripts/lib/npm-update-hosted-hook.mjs": Object.freeze([
|
|
822
825
|
"0e9cf3bf55b9b979d22553f01ad4d17c0a85058b2b87657bd3126b9034e9f8c1",
|
|
823
826
|
"7930e76c5fa51817e2317826c37c448b905d8902c48efdd4f2bb72e69d6ff26d",
|
|
827
|
+
"801b41f0f3f455c08b4e86a64f076190a5f245492959a154d70b897dd0d60a31",
|
|
824
828
|
"e3801b5908bedcc1f98d16584b4c3eb37c5529565465b2827be44aac63444577",
|
|
825
829
|
"ef468e94c148b8d81125d3d374c2350b44abcb48ef9037639f0ba4a8ea9ecf03",
|
|
826
830
|
]),
|
|
@@ -1566,6 +1570,7 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
1566
1570
|
"2b3d806137b34bfdd21be9e76ca5159f7b11fbd3ca9223d99bef298e42f49c0d",
|
|
1567
1571
|
"2bdba97c9a1ccc0e70247ee02b5eff02c042aba83b8e7fed3dfbf29a8a83b394",
|
|
1568
1572
|
"2da3ad6d7680b61e20b48022e57b8960e063266cb26c197c2c8daa89adf4b648",
|
|
1573
|
+
"307f934810a36f5889bc443d7ab3f4166eccd74820b44ff2973b6fc58fe0841d",
|
|
1569
1574
|
"388cf8847581d96a1ff8ea98290a33a5f96d67cdd502ea807a0b8d88efe90e19",
|
|
1570
1575
|
"3cc1b8a1730f7a35b82293824715538432bb4c410be38d64ee887eb55fea23b4",
|
|
1571
1576
|
"40e12bb956baacb23846456d20b840e11c14dae539fc67806476eb674d6c38b1",
|
|
@@ -1593,6 +1598,7 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
1593
1598
|
"a211f1a06aecddb841851463da302f694ab0eafff6bab75ee944b0a58aac431d",
|
|
1594
1599
|
"a22fd1b7c483f1a538202353ee85c82be17a8910e03c0a930635ce8cb3595c64",
|
|
1595
1600
|
"a28779ba2e6e4e999014d50734ea0b7e36af886bdb08d144bd4274acd642c902",
|
|
1601
|
+
"a77a6a15a74a98135d73dcf41e26ee3bbc69f1575693c7c40e3d47a946a2eb07",
|
|
1596
1602
|
"afe82473fe2a08af298997cbce62417fdaefa37f4a963f720ed38b992a65b8d3",
|
|
1597
1603
|
"b5505f55a5092f1d451ae5a01ada85a031e5b063d08fc0ce5527d94b67191a60",
|
|
1598
1604
|
"b6fbbda29d897a7c39cf0524c91d5c66a47054df32e036f15cdabefdc34ac72a",
|
|
@@ -2138,6 +2144,8 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
2138
2144
|
"70117ada2fe96b4697f695f860547a0e47eb7d20e864eac929047722cb3e6e2c",
|
|
2139
2145
|
"702b455a3157565b910904a3acfcdbf4722befc660d60242c649ff020fe96b3b",
|
|
2140
2146
|
"728bcf6bdfb82c5b312da268db0ec7b50d94ac62c64ec58c70592eb106383f09",
|
|
2147
|
+
"78c00bc630304d220de75d288b94d2cdb0b12a7926a2c05536505c52b138e3a1",
|
|
2148
|
+
"79d41ce3eb5e6a2acf35dbe7a351b93f9d48631813c422814da4b8fed4717faa",
|
|
2141
2149
|
"7b1444433c16ae4b580ad71f908ae9788862b9f814d08c447c78f3dfd49226a4",
|
|
2142
2150
|
"7b1d6bba391f105b9d53b91773fd207c9a5e9b5bfcd638e1e6b579d507279d7d",
|
|
2143
2151
|
"7c8b9d5b8f7d77dbf520c1009497d041eeb9930103c7f52bfd8b04a4492eb023",
|
|
@@ -2726,8 +2734,11 @@ export const LISA_OWNED_HASH_HISTORY_DERIVED = Object.freeze({
|
|
|
2726
2734
|
"51b2bfccc8ecca684dd80a4e2ae35896e76fa519389fe650f0890ffc0fef421d",
|
|
2727
2735
|
]),
|
|
2728
2736
|
"scripts/lib/completion-proof-content.mjs": Object.freeze([
|
|
2737
|
+
"254cf8ef8ea87a085b5866348af70a9cfcb03c664977b0c03fb61b3d19f2e66d",
|
|
2738
|
+
"679702f6e3cce3919e01c79fe5016d3215f15b067bcab2fb9eeffb0350e7c64f",
|
|
2729
2739
|
"78b34223d054913c2e900830070cbb1fb2dc267423ec458ae76553ceed0d38c6",
|
|
2730
2740
|
"cf836b48230a5b7fdfc2425abda1b2328fa4873fd853100f00d1f05412c415be",
|
|
2741
|
+
"ed1a5b1f0ba44aca5333d8ce6584db2a63c612b36ab8773d25677103d2fd27ad",
|
|
2731
2742
|
]),
|
|
2732
2743
|
"scripts/lib/completion-proof-errors.mjs": Object.freeze([
|
|
2733
2744
|
"18092420eba568270ab31cae0cbd3e57b525df99be3b79ba0ce8bd01ebadc045",
|
|
@@ -3049,6 +3060,7 @@ export const LISA_OWNED_HASH_HISTORY_DERIVED = Object.freeze({
|
|
|
3049
3060
|
"scripts/lib/npm-update-hosted-hook.mjs": Object.freeze([
|
|
3050
3061
|
"0e9cf3bf55b9b979d22553f01ad4d17c0a85058b2b87657bd3126b9034e9f8c1",
|
|
3051
3062
|
"7930e76c5fa51817e2317826c37c448b905d8902c48efdd4f2bb72e69d6ff26d",
|
|
3063
|
+
"801b41f0f3f455c08b4e86a64f076190a5f245492959a154d70b897dd0d60a31",
|
|
3052
3064
|
"e3801b5908bedcc1f98d16584b4c3eb37c5529565465b2827be44aac63444577",
|
|
3053
3065
|
"ef468e94c148b8d81125d3d374c2350b44abcb48ef9037639f0ba4a8ea9ecf03",
|
|
3054
3066
|
]),
|
|
@@ -3748,6 +3760,7 @@ export const LISA_OWNED_HASH_HISTORY_DERIVED = Object.freeze({
|
|
|
3748
3760
|
"2b3d806137b34bfdd21be9e76ca5159f7b11fbd3ca9223d99bef298e42f49c0d",
|
|
3749
3761
|
"2bdba97c9a1ccc0e70247ee02b5eff02c042aba83b8e7fed3dfbf29a8a83b394",
|
|
3750
3762
|
"2da3ad6d7680b61e20b48022e57b8960e063266cb26c197c2c8daa89adf4b648",
|
|
3763
|
+
"307f934810a36f5889bc443d7ab3f4166eccd74820b44ff2973b6fc58fe0841d",
|
|
3751
3764
|
"388cf8847581d96a1ff8ea98290a33a5f96d67cdd502ea807a0b8d88efe90e19",
|
|
3752
3765
|
"3cc1b8a1730f7a35b82293824715538432bb4c410be38d64ee887eb55fea23b4",
|
|
3753
3766
|
"40e12bb956baacb23846456d20b840e11c14dae539fc67806476eb674d6c38b1",
|
|
@@ -3775,6 +3788,7 @@ export const LISA_OWNED_HASH_HISTORY_DERIVED = Object.freeze({
|
|
|
3775
3788
|
"a211f1a06aecddb841851463da302f694ab0eafff6bab75ee944b0a58aac431d",
|
|
3776
3789
|
"a22fd1b7c483f1a538202353ee85c82be17a8910e03c0a930635ce8cb3595c64",
|
|
3777
3790
|
"a28779ba2e6e4e999014d50734ea0b7e36af886bdb08d144bd4274acd642c902",
|
|
3791
|
+
"a77a6a15a74a98135d73dcf41e26ee3bbc69f1575693c7c40e3d47a946a2eb07",
|
|
3778
3792
|
"afe82473fe2a08af298997cbce62417fdaefa37f4a963f720ed38b992a65b8d3",
|
|
3779
3793
|
"b5505f55a5092f1d451ae5a01ada85a031e5b063d08fc0ce5527d94b67191a60",
|
|
3780
3794
|
"b6fbbda29d897a7c39cf0524c91d5c66a47054df32e036f15cdabefdc34ac72a",
|
|
@@ -4296,6 +4310,8 @@ export const LISA_OWNED_HASH_HISTORY_DERIVED = Object.freeze({
|
|
|
4296
4310
|
"70117ada2fe96b4697f695f860547a0e47eb7d20e864eac929047722cb3e6e2c",
|
|
4297
4311
|
"702b455a3157565b910904a3acfcdbf4722befc660d60242c649ff020fe96b3b",
|
|
4298
4312
|
"728bcf6bdfb82c5b312da268db0ec7b50d94ac62c64ec58c70592eb106383f09",
|
|
4313
|
+
"78c00bc630304d220de75d288b94d2cdb0b12a7926a2c05536505c52b138e3a1",
|
|
4314
|
+
"79d41ce3eb5e6a2acf35dbe7a351b93f9d48631813c422814da4b8fed4717faa",
|
|
4299
4315
|
"7b1444433c16ae4b580ad71f908ae9788862b9f814d08c447c78f3dfd49226a4",
|
|
4300
4316
|
"7b1d6bba391f105b9d53b91773fd207c9a5e9b5bfcd638e1e6b579d507279d7d",
|
|
4301
4317
|
"7c8b9d5b8f7d77dbf520c1009497d041eeb9930103c7f52bfd8b04a4492eb023",
|