pi-harness-runtime 0.9.22 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -7
- package/README.md +51 -51
- package/footer-status.ts +84 -44
- package/harness/auto-compact.ts +1 -1
- package/harness/auto-quota-resume.ts +15 -12
- package/harness/autonomous-review.ts +88 -0
- package/harness/context-compact-orchestrator.ts +23 -23
- package/harness/context-window-manager.ts +5 -5
- package/harness/continue-prompt.ts +3 -3
- package/harness/e2e/minimax-quota-scraper.ts +10 -10
- package/harness/e2e/openai-quota-scraper.ts +442 -0
- package/harness/forked-summarizer.ts +4 -4
- package/harness/herdr-agents.ts +91 -0
- package/harness/index.ts +5 -5
- package/harness/loop-code-agent.ts +284 -0
- package/harness/loop-controller.ts +201 -0
- package/harness/loop-review-agent.ts +295 -0
- package/harness/loop-runtime.ts +21 -17
- package/harness/loop-types.ts +118 -0
- package/harness/notification-events.ts +3 -3
- package/harness/output-limit-handler.ts +1 -1
- package/harness/partial-recovery.ts +3 -3
- package/harness/session-memory.ts +5 -5
- package/index.ts +211 -80
- package/package.json +2 -2
- package/packages/a2a-adapter/package.json +1 -1
- package/packages/a2a-adapter/src/types.ts +5 -5
- package/packages/auth/dist/minimax-browser-auth.d.ts +89 -0
- package/packages/auth/dist/minimax-browser-auth.d.ts.map +1 -0
- package/packages/auth/dist/minimax-browser-auth.js +890 -0
- package/packages/auth/dist/minimax-browser-auth.js.map +1 -0
- package/packages/auth/dist/run-minimax-auth.d.ts +19 -0
- package/packages/auth/dist/run-minimax-auth.d.ts.map +1 -0
- package/packages/auth/dist/run-minimax-auth.js +112 -0
- package/packages/auth/dist/run-minimax-auth.js.map +1 -0
- package/packages/auth/package.json +1 -1
- package/packages/auth/tsconfig.json +9 -0
- package/packages/autonomous-refactor/package.json +1 -1
- package/packages/autonomous-runtime/dist/inbox.d.ts +3 -3
- package/packages/autonomous-runtime/dist/inbox.js +12 -12
- package/packages/autonomous-runtime/dist/lease.js +14 -14
- package/packages/autonomous-runtime/dist/types.js +1 -1
- package/packages/autonomous-runtime/package.json +1 -1
- package/packages/autonomous-runtime/src/inbox.ts +12 -12
- package/packages/autonomous-runtime/src/lease.ts +15 -15
- package/packages/autonomous-runtime/src/types.ts +13 -13
- package/packages/autonomous-runtime/tsconfig.tsbuildinfo +1 -1
- package/packages/cache-strategy/package.json +1 -1
- package/packages/capability-registry/dist/types.js +1 -1
- package/packages/capability-registry/package.json +1 -1
- package/packages/capability-registry/src/types.ts +5 -5
- package/packages/checkpoint/README.md +6 -6
- package/packages/checkpoint/dist/differ.js +2 -2
- package/packages/checkpoint/dist/engine.js +3 -3
- package/packages/checkpoint/dist/index.js +5 -5
- package/packages/checkpoint/dist/storage.js +3 -3
- package/packages/checkpoint/dist/types.js +1 -1
- package/packages/checkpoint/package.json +1 -1
- package/packages/checkpoint/src/differ.ts +2 -2
- package/packages/checkpoint/src/engine.ts +3 -3
- package/packages/checkpoint/src/index.ts +5 -5
- package/packages/checkpoint/src/storage.ts +3 -3
- package/packages/checkpoint/src/types.ts +10 -10
- package/packages/checkpoint/tsconfig.tsbuildinfo +1 -1
- package/packages/cli-plugin-sdk/package.json +1 -1
- package/packages/clipboard/dist/src/clipboard.d.ts.map +1 -1
- package/packages/clipboard/dist/src/clipboard.js +15 -7
- package/packages/clipboard/dist/src/clipboard.js.map +1 -1
- package/packages/clipboard/package.json +1 -1
- package/packages/clipboard/src/clipboard.ts +16 -9
- package/packages/code-generation/README.md +13 -13
- package/packages/code-generation/dist/faker.js +4 -4
- package/packages/code-generation/dist/generator.js +3 -3
- package/packages/code-generation/dist/index.js +3 -3
- package/packages/code-generation/dist/templates/registry.js +1 -1
- package/packages/code-generation/dist/types.js +1 -1
- package/packages/code-generation/package.json +1 -1
- package/packages/code-generation/src/faker.ts +5 -5
- package/packages/code-generation/src/generator.ts +4 -4
- package/packages/code-generation/src/index.ts +3 -3
- package/packages/code-generation/src/templates/registry.ts +1 -1
- package/packages/code-generation/src/types.ts +10 -10
- package/packages/code-generation/tsconfig.tsbuildinfo +1 -1
- package/packages/code-review/README.md +13 -13
- package/packages/code-review/dist/engine.js +3 -3
- package/packages/code-review/dist/index.js +3 -3
- package/packages/code-review/dist/types.js +1 -1
- package/packages/code-review/package.json +1 -1
- package/packages/code-review/src/engine.ts +3 -3
- package/packages/code-review/src/index.ts +3 -3
- package/packages/code-review/src/types.ts +10 -10
- package/packages/code-review/tsconfig.tsbuildinfo +1 -1
- package/packages/codex-adapter/package.json +1 -1
- package/packages/context-compiler/dist/compiler.js +1 -1
- package/packages/context-compiler/package.json +1 -1
- package/packages/context-compiler/src/compiler.ts +1 -1
- package/packages/context-compiler/src/types.ts +11 -11
- package/packages/context-compiler/test/context-compiler.test.ts +11 -11
- package/packages/context-discovery/package.json +1 -1
- package/packages/context-manager/package.json +1 -1
- package/packages/cookie-sanitizer/README.md +27 -27
- package/packages/cookie-sanitizer/package.json +1 -1
- package/packages/cost-optimizer/package.json +1 -1
- package/packages/cost-optimizer/src/types.ts +5 -5
- package/packages/dependency-analyzer/package.json +1 -1
- package/packages/django-plugin/dist/analyzer.js +7 -7
- package/packages/django-plugin/package.json +1 -1
- package/packages/django-plugin/src/analyzer.ts +7 -7
- package/packages/doc-generator/package.json +1 -1
- package/packages/evaluation-engine/dist/engine.js +9 -9
- package/packages/evaluation-engine/package.json +1 -1
- package/packages/evaluation-engine/src/engine.ts +9 -9
- package/packages/evaluation-engine/src/types.ts +3 -3
- package/packages/evaluation-runner/package.json +1 -1
- package/packages/event-bus/dist/src/herdr-bus.d.ts +121 -0
- package/packages/event-bus/dist/src/herdr-bus.d.ts.map +1 -0
- package/packages/event-bus/dist/src/herdr-bus.js +322 -0
- package/packages/event-bus/dist/src/herdr-bus.js.map +1 -0
- package/packages/event-bus/dist/src/index.d.ts +2 -0
- package/packages/event-bus/dist/src/index.d.ts.map +1 -1
- package/packages/event-bus/dist/src/index.js +1 -0
- package/packages/event-bus/dist/src/index.js.map +1 -1
- package/packages/event-bus/package.json +1 -1
- package/packages/event-bus/src/herdr-bus.ts +525 -0
- package/packages/event-bus/src/index.ts +29 -0
- package/packages/event-store/package.json +1 -1
- package/packages/experience-replay/dist/replay.js +7 -7
- package/packages/experience-replay/package.json +1 -1
- package/packages/experience-replay/src/replay.ts +7 -7
- package/packages/experience-replay/src/types.ts +5 -5
- package/packages/feedback-collector/package.json +1 -1
- package/packages/framework-detector/README.md +18 -18
- package/packages/framework-detector/dist/detector.js +3 -3
- package/packages/framework-detector/dist/index.js +3 -3
- package/packages/framework-detector/dist/signatures/registry.js +24 -24
- package/packages/framework-detector/dist/types.js +1 -1
- package/packages/framework-detector/package.json +1 -1
- package/packages/framework-detector/src/detector.ts +3 -3
- package/packages/framework-detector/src/index.ts +3 -3
- package/packages/framework-detector/src/signatures/registry.ts +24 -24
- package/packages/framework-detector/src/types.ts +7 -7
- package/packages/framework-detector/tsconfig.tsbuildinfo +1 -1
- package/packages/framework-plugin-sdk/README.md +23 -23
- package/packages/framework-plugin-sdk/dist/index.js +2 -2
- package/packages/framework-plugin-sdk/dist/manager.js +3 -3
- package/packages/framework-plugin-sdk/dist/types.js +2 -2
- package/packages/framework-plugin-sdk/package.json +1 -1
- package/packages/framework-plugin-sdk/src/index.ts +2 -2
- package/packages/framework-plugin-sdk/src/manager.ts +3 -3
- package/packages/framework-plugin-sdk/src/types.ts +10 -10
- package/packages/framework-plugin-sdk/tsconfig.tsbuildinfo +1 -1
- package/packages/frappe-plugin/dist/analyzer.js +8 -8
- package/packages/frappe-plugin/dist/types.js +1 -1
- package/packages/frappe-plugin/package.json +1 -1
- package/packages/frappe-plugin/src/analyzer.ts +8 -8
- package/packages/frappe-plugin/src/types.ts +10 -10
- package/packages/generic-web-plugin/dist/analyzer.js +5 -5
- package/packages/generic-web-plugin/package.json +1 -1
- package/packages/generic-web-plugin/src/analyzer.ts +5 -5
- package/packages/health-monitor/package.json +1 -1
- package/packages/health-monitor/src/monitor.ts +1 -1
- package/packages/intent-analyzer/package.json +1 -1
- package/packages/laravel-plugin/dist/analyzer.js +11 -11
- package/packages/laravel-plugin/package.json +1 -1
- package/packages/laravel-plugin/src/analyzer.ts +11 -11
- package/packages/learning-engine/dist/engine.js +5 -5
- package/packages/learning-engine/dist/types.js +1 -1
- package/packages/learning-engine/package.json +1 -1
- package/packages/learning-engine/src/engine.ts +5 -5
- package/packages/learning-engine/src/types.ts +6 -6
- package/packages/mcp-adapter/package.json +1 -1
- package/packages/memory-engine/dist/engine.js +8 -8
- package/packages/memory-engine/dist/types.js +2 -2
- package/packages/memory-engine/package.json +1 -1
- package/packages/memory-engine/src/engine.ts +8 -8
- package/packages/memory-engine/src/types.ts +9 -9
- package/packages/model-registry/package.json +1 -1
- package/packages/model-registry/src/types.ts +4 -4
- package/packages/nextjs-plugin/dist/analyzer.js +9 -9
- package/packages/nextjs-plugin/package.json +1 -1
- package/packages/nextjs-plugin/src/analyzer.ts +9 -9
- package/packages/notification/dist/notification-center.js +1 -1
- package/packages/notification/package.json +1 -1
- package/packages/notification/src/notification-center.ts +1 -1
- package/packages/observability/dist/alerts.js +2 -2
- package/packages/observability/dist/health.js +4 -4
- package/packages/observability/dist/index.js +6 -6
- package/packages/observability/dist/logger.js +7 -7
- package/packages/observability/dist/metrics.js +11 -11
- package/packages/observability/dist/tracer.js +3 -3
- package/packages/observability/dist/types.js +1 -1
- package/packages/observability/package.json +1 -1
- package/packages/observability/src/alerts.ts +2 -2
- package/packages/observability/src/health.ts +4 -4
- package/packages/observability/src/index.ts +6 -6
- package/packages/observability/src/logger.ts +7 -7
- package/packages/observability/src/metrics.ts +11 -11
- package/packages/observability/src/tracer.ts +3 -3
- package/packages/observability/src/types.ts +7 -7
- package/packages/observability/test/observability.test.ts +4 -4
- package/packages/observability/tsconfig.tsbuildinfo +1 -1
- package/packages/performance-optimizer/dist/optimizer.js +1 -1
- package/packages/performance-optimizer/package.json +1 -1
- package/packages/performance-optimizer/src/optimizer.ts +1 -1
- package/packages/performance-optimizer/src/types.ts +4 -4
- package/packages/privilege-broker/package.json +1 -1
- package/packages/project-analyzer/dist/analyzer.js +4 -4
- package/packages/project-analyzer/dist/index.js +8 -8
- package/packages/project-analyzer/dist/signals.js +3 -3
- package/packages/project-analyzer/dist/types.js +1 -1
- package/packages/project-analyzer/package.json +1 -1
- package/packages/project-analyzer/src/analyzer.ts +4 -4
- package/packages/project-analyzer/src/index.ts +9 -9
- package/packages/project-analyzer/src/signals.ts +4 -4
- package/packages/project-analyzer/src/types.ts +15 -15
- package/packages/project-analyzer/test/index.test.ts +17 -17
- package/packages/project-analyzer/tsconfig.tsbuildinfo +1 -1
- package/packages/projection-engine/package.json +1 -1
- package/packages/prompt-compiler/dist/section-builder.js +1 -1
- package/packages/prompt-compiler/dist/types.js +3 -3
- package/packages/prompt-compiler/package.json +1 -1
- package/packages/prompt-compiler/src/section-builder.ts +1 -1
- package/packages/prompt-compiler/src/types.ts +12 -12
- package/packages/prompt-compiler/test/prompt-compiler.test.ts +12 -12
- package/packages/prompt-versioning/package.json +1 -1
- package/packages/provider-adapter-sdk/dist/builder.js +1 -1
- package/packages/provider-adapter-sdk/dist/index.js +5 -5
- package/packages/provider-adapter-sdk/dist/registry.js +1 -1
- package/packages/provider-adapter-sdk/dist/tester.js +1 -1
- package/packages/provider-adapter-sdk/dist/types.js +1 -1
- package/packages/provider-adapter-sdk/package.json +1 -1
- package/packages/provider-adapter-sdk/src/builder.ts +1 -1
- package/packages/provider-adapter-sdk/src/index.ts +6 -6
- package/packages/provider-adapter-sdk/src/registry.ts +1 -1
- package/packages/provider-adapter-sdk/src/tester.ts +1 -1
- package/packages/provider-adapter-sdk/src/types.ts +5 -5
- package/packages/provider-adapter-sdk/tsconfig.tsbuildinfo +1 -1
- package/packages/provider-router/package.json +1 -1
- package/packages/provider-router/src/types.ts +4 -4
- package/packages/provider-selector/package.json +1 -1
- package/packages/providers/dist/deepagents-adapter.js +1 -1
- package/packages/providers/dist/provider-id.d.ts +5 -0
- package/packages/providers/dist/provider-id.d.ts.map +1 -1
- package/packages/providers/dist/provider-id.js +6 -1
- package/packages/providers/dist/provider-id.js.map +1 -1
- package/packages/providers/package.json +1 -1
- package/packages/providers/src/deepagents-adapter.ts +1 -1
- package/packages/providers/src/provider-id.ts +6 -1
- package/packages/quota-manager/dist/tui-usage-monitor.d.ts.map +1 -1
- package/packages/quota-manager/dist/tui-usage-monitor.js +0 -6
- package/packages/quota-manager/dist/tui-usage-monitor.js.map +1 -1
- package/packages/quota-manager/package.json +1 -1
- package/packages/quota-manager/src/tui-usage-monitor.ts +0 -21
- package/packages/rate-limiter/package.json +1 -1
- package/packages/react-vite-plugin/dist/analyzer.js +7 -7
- package/packages/react-vite-plugin/package.json +1 -1
- package/packages/react-vite-plugin/src/analyzer.ts +7 -7
- package/packages/release-manager/package.json +1 -1
- package/packages/requirement-compiler/dist/compiler.js +17 -17
- package/packages/requirement-compiler/dist/types.js +2 -2
- package/packages/requirement-compiler/package.json +1 -1
- package/packages/requirement-compiler/src/compiler.ts +17 -17
- package/packages/requirement-compiler/src/types.ts +21 -21
- package/packages/requirement-compiler/test/requirement-compiler.test.ts +17 -17
- package/packages/runtime/dist/command-executor.js +1 -1
- package/packages/runtime/dist/local-runtime-agent.js +1 -1
- package/packages/runtime/dist/policy-engine.js +1 -1
- package/packages/runtime/dist/runtime-api.js +1 -1
- package/packages/runtime/dist/workspace-manager.js +1 -1
- package/packages/runtime/package.json +1 -1
- package/packages/runtime/src/command-executor.ts +1 -1
- package/packages/runtime/src/local-runtime-agent.ts +1 -1
- package/packages/runtime/src/policy-engine.ts +1 -1
- package/packages/runtime/src/runtime-api.ts +1 -1
- package/packages/runtime/src/workspace-manager.ts +1 -1
- package/packages/scheduler/package.json +1 -1
- package/packages/scheduler-adapter/package.json +1 -1
- package/packages/session/README.md +18 -18
- package/packages/session/dist/history.js +3 -3
- package/packages/session/dist/index.js +5 -5
- package/packages/session/dist/manager.js +3 -3
- package/packages/session/dist/policy.js +2 -2
- package/packages/session/dist/store.js +2 -2
- package/packages/session/dist/types.js +1 -1
- package/packages/session/package.json +1 -1
- package/packages/session/src/history.ts +3 -3
- package/packages/session/src/index.ts +5 -5
- package/packages/session/src/manager.ts +3 -3
- package/packages/session/src/policy.ts +4 -4
- package/packages/session/src/store.ts +3 -3
- package/packages/session/src/types.ts +10 -10
- package/packages/session/tsconfig.tsbuildinfo +1 -1
- package/packages/session-api/package.json +1 -1
- package/packages/session-export/package.json +1 -1
- package/packages/shared-context/package.json +1 -1
- package/packages/skill-registry/package.json +1 -1
- package/packages/skill-registry/src/types.ts +4 -4
- package/packages/sprint-planner/package.json +1 -1
- package/packages/subscription-engine/package.json +1 -1
- package/packages/task-compiler/dist/compiler.js +7 -7
- package/packages/task-compiler/dist/decompose.js +11 -11
- package/packages/task-compiler/dist/file-scope.js +6 -6
- package/packages/task-compiler/dist/graph.js +6 -6
- package/packages/task-compiler/dist/index.js +2 -2
- package/packages/task-compiler/dist/types.js +5 -5
- package/packages/task-compiler/dist/validate.js +2 -2
- package/packages/task-compiler/dist/verification.js +2 -2
- package/packages/task-compiler/package.json +1 -1
- package/packages/task-compiler/src/command-policy.ts +1 -1
- package/packages/task-compiler/src/compiler.ts +7 -7
- package/packages/task-compiler/src/decompose.ts +11 -11
- package/packages/task-compiler/src/file-scope.ts +6 -6
- package/packages/task-compiler/src/graph.ts +6 -6
- package/packages/task-compiler/src/index.ts +3 -3
- package/packages/task-compiler/src/types.ts +14 -14
- package/packages/task-compiler/src/validate.ts +2 -2
- package/packages/task-compiler/src/verification.ts +2 -2
- package/packages/task-compiler/test/task-compiler.test.ts +10 -10
- package/packages/test-data-generator/README.md +13 -13
- package/packages/test-data-generator/dist/faker-adapter.js +4 -4
- package/packages/test-data-generator/dist/generator.js +3 -3
- package/packages/test-data-generator/dist/index.js +3 -3
- package/packages/test-data-generator/dist/types.js +1 -1
- package/packages/test-data-generator/package.json +1 -1
- package/packages/test-data-generator/src/faker-adapter.ts +4 -4
- package/packages/test-data-generator/src/generator.ts +3 -3
- package/packages/test-data-generator/src/index.ts +3 -3
- package/packages/test-data-generator/src/types.ts +9 -9
- package/packages/test-data-generator/tsconfig.tsbuildinfo +1 -1
- package/packages/test-generator/package.json +1 -1
- package/packages/token-estimation/package.json +1 -1
- package/packages/token-optimizer/package.json +1 -1
- package/packages/tui/package.json +1 -1
- package/packages/types/package.json +1 -1
- package/packages/types/src/agent-worker-types.ts +5 -5
- package/packages/types/src/runtime-types.ts +12 -12
- package/packages/types/tsconfig.tsbuildinfo +1 -1
- package/packages/workflow-events/package.json +1 -1
- package/packages/workspace-scanner/package.json +1 -1
- package/packages/worktree/package.json +1 -1
- package/renderer.ts +7 -7
- package/skills/harness-runtime/SKILL.md +15 -15
- package/packages/dependency-analyzer/dist/analyzer.d.ts +0 -17
- package/packages/dependency-analyzer/dist/analyzer.d.ts.map +0 -1
- package/packages/dependency-analyzer/dist/analyzer.js +0 -106
- package/packages/dependency-analyzer/dist/analyzer.js.map +0 -1
- package/packages/dependency-analyzer/dist/imports.d.ts +0 -12
- package/packages/dependency-analyzer/dist/imports.d.ts.map +0 -1
- package/packages/dependency-analyzer/dist/imports.js +0 -73
- package/packages/dependency-analyzer/dist/imports.js.map +0 -1
- package/packages/dependency-analyzer/dist/index.d.ts +0 -4
- package/packages/dependency-analyzer/dist/index.d.ts.map +0 -1
- package/packages/dependency-analyzer/dist/index.js +0 -3
- package/packages/dependency-analyzer/dist/index.js.map +0 -1
- package/packages/dependency-analyzer/dist/test/analyzer.test.js +0 -37
- package/packages/dependency-analyzer/dist/types.d.ts +0 -28
- package/packages/dependency-analyzer/dist/types.d.ts.map +0 -1
- package/packages/dependency-analyzer/dist/types.js +0 -5
- package/packages/dependency-analyzer/dist/types.js.map +0 -1
- package/packages/intent-analyzer/dist/analyzer.d.ts +0 -13
- package/packages/intent-analyzer/dist/analyzer.d.ts.map +0 -1
- package/packages/intent-analyzer/dist/analyzer.js +0 -72
- package/packages/intent-analyzer/dist/analyzer.js.map +0 -1
- package/packages/intent-analyzer/dist/index.d.ts +0 -3
- package/packages/intent-analyzer/dist/index.d.ts.map +0 -1
- package/packages/intent-analyzer/dist/index.js +0 -2
- package/packages/intent-analyzer/dist/index.js.map +0 -1
- package/packages/intent-analyzer/dist/test/analyzer.test.js +0 -56
- package/packages/intent-analyzer/dist/types.d.ts +0 -26
- package/packages/intent-analyzer/dist/types.d.ts.map +0 -1
- package/packages/intent-analyzer/dist/types.js +0 -7
- package/packages/intent-analyzer/dist/types.js.map +0 -1
- package/packages/workspace-scanner/dist/detect.d.ts +0 -3
- package/packages/workspace-scanner/dist/detect.d.ts.map +0 -1
- package/packages/workspace-scanner/dist/detect.js +0 -58
- package/packages/workspace-scanner/dist/detect.js.map +0 -1
- package/packages/workspace-scanner/dist/git.d.ts +0 -7
- package/packages/workspace-scanner/dist/git.d.ts.map +0 -1
- package/packages/workspace-scanner/dist/git.js +0 -75
- package/packages/workspace-scanner/dist/git.js.map +0 -1
- package/packages/workspace-scanner/dist/index.d.ts +0 -5
- package/packages/workspace-scanner/dist/index.d.ts.map +0 -1
- package/packages/workspace-scanner/dist/index.js +0 -4
- package/packages/workspace-scanner/dist/index.js.map +0 -1
- package/packages/workspace-scanner/dist/scanner.d.ts +0 -11
- package/packages/workspace-scanner/dist/scanner.d.ts.map +0 -1
- package/packages/workspace-scanner/dist/scanner.js +0 -46
- package/packages/workspace-scanner/dist/scanner.js.map +0 -1
- package/packages/workspace-scanner/dist/test/scanner.test.js +0 -34
- package/packages/workspace-scanner/dist/types.d.ts +0 -35
- package/packages/workspace-scanner/dist/types.d.ts.map +0 -1
- package/packages/workspace-scanner/dist/types.js +0 -5
- package/packages/workspace-scanner/dist/types.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimax-browser-auth.js","sourceRoot":"","sources":["../src/minimax-browser-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
/**
|
|
3
|
+
* run-minimax-auth.ts
|
|
4
|
+
*
|
|
5
|
+
* CLI to authenticate with MiniMax using Playwright persistent browser.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* bun packages/auth/src/run-minimax-auth.ts auth # First-time: login in browser
|
|
9
|
+
* bun packages/auth/src/run-minimax-auth.ts scrape # Scrape usage (silent)
|
|
10
|
+
* bun packages/auth/src/run-minimax-auth.ts check # Check status
|
|
11
|
+
* bun packages/auth/src/run-minimax-auth.ts open # Open browser with profile
|
|
12
|
+
*
|
|
13
|
+
* Security:
|
|
14
|
+
* - Human logs in manually in the browser
|
|
15
|
+
* - Playwright persistent profile auto-saves session
|
|
16
|
+
* - No credentials are processed by this code
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=run-minimax-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-minimax-auth.d.ts","sourceRoot":"","sources":["../src/run-minimax-auth.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
/**
|
|
3
|
+
* run-minimax-auth.ts
|
|
4
|
+
*
|
|
5
|
+
* CLI to authenticate with MiniMax using Playwright persistent browser.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* bun packages/auth/src/run-minimax-auth.ts auth # First-time: login in browser
|
|
9
|
+
* bun packages/auth/src/run-minimax-auth.ts scrape # Scrape usage (silent)
|
|
10
|
+
* bun packages/auth/src/run-minimax-auth.ts check # Check status
|
|
11
|
+
* bun packages/auth/src/run-minimax-auth.ts open # Open browser with profile
|
|
12
|
+
*
|
|
13
|
+
* Security:
|
|
14
|
+
* - Human logs in manually in the browser
|
|
15
|
+
* - Playwright persistent profile auto-saves session
|
|
16
|
+
* - No credentials are processed by this code
|
|
17
|
+
*/
|
|
18
|
+
import { authenticateWithPersistentBrowser, scrapeWithExistingProfile, checkAuthStatus, getProfileDir, getStatusPath, getLiveSessionPath, startPersistentBrowserDaemon, stopPersistentBrowserDaemon, } from "./minimax-browser-auth.js";
|
|
19
|
+
async function main() {
|
|
20
|
+
const args = process.argv.slice(2);
|
|
21
|
+
const command = args[0] ?? "auth";
|
|
22
|
+
console.log("");
|
|
23
|
+
console.log("🔐 MiniMax Browser Authentication");
|
|
24
|
+
console.log("=".repeat(50));
|
|
25
|
+
console.log("");
|
|
26
|
+
if (command === "check") {
|
|
27
|
+
console.log("Command: check");
|
|
28
|
+
console.log("");
|
|
29
|
+
const status = await checkAuthStatus();
|
|
30
|
+
console.log("");
|
|
31
|
+
console.log("Status:");
|
|
32
|
+
console.log(JSON.stringify(status, null, 2));
|
|
33
|
+
console.log("");
|
|
34
|
+
console.log("Profile dir:", getProfileDir());
|
|
35
|
+
console.log("Status file:", getStatusPath());
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (command === "scrape" || command === "usage") {
|
|
39
|
+
console.log("Command: scrape (prefers live browser, falls back to saved profile)");
|
|
40
|
+
console.log("");
|
|
41
|
+
const status = await scrapeWithExistingProfile();
|
|
42
|
+
console.log("");
|
|
43
|
+
console.log("Result:");
|
|
44
|
+
console.log(JSON.stringify(status, null, 2));
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (command === "open" || command === "daemon") {
|
|
48
|
+
console.log("Command: open (live browser daemon mode)");
|
|
49
|
+
console.log("");
|
|
50
|
+
console.log("This will:");
|
|
51
|
+
console.log("1. Launch a real Chrome window with the MiniMax profile");
|
|
52
|
+
console.log("2. Keep that browser session running for unattended scrapes");
|
|
53
|
+
console.log("3. Let you sign in manually once and leave the window open");
|
|
54
|
+
console.log("");
|
|
55
|
+
console.log("Profile dir:", getProfileDir());
|
|
56
|
+
console.log("");
|
|
57
|
+
const session = await startPersistentBrowserDaemon();
|
|
58
|
+
console.log("Live browser session:");
|
|
59
|
+
console.log(JSON.stringify(session, null, 2));
|
|
60
|
+
console.log("");
|
|
61
|
+
console.log("Next:");
|
|
62
|
+
console.log("- Sign in inside that Chrome window if needed");
|
|
63
|
+
console.log("- Leave the MiniMax Chrome window open overnight");
|
|
64
|
+
console.log("- Later, run: bun packages/auth/src/run-minimax-auth.ts scrape");
|
|
65
|
+
console.log("- To stop it, run: bun packages/auth/src/run-minimax-auth.ts stop");
|
|
66
|
+
console.log("Live session file:", getLiveSessionPath());
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (command === "stop" || command === "close") {
|
|
70
|
+
console.log("Command: stop");
|
|
71
|
+
console.log("");
|
|
72
|
+
const stopped = await stopPersistentBrowserDaemon();
|
|
73
|
+
console.log(stopped
|
|
74
|
+
? "✅ Stopped MiniMax live browser session"
|
|
75
|
+
: "ℹ️ No active MiniMax live browser session was found");
|
|
76
|
+
console.log("Live session file:", getLiveSessionPath());
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (command === "auth" || command === "login") {
|
|
80
|
+
console.log("Command: auth (persistent browser mode)");
|
|
81
|
+
console.log("");
|
|
82
|
+
console.log("This will:");
|
|
83
|
+
console.log("1. Launch a Chrome browser with persistent profile");
|
|
84
|
+
console.log("2. Navigate to MiniMax usage page");
|
|
85
|
+
console.log("3. Let you log in (first time only)");
|
|
86
|
+
console.log("4. Auto-save profile for future use");
|
|
87
|
+
console.log("");
|
|
88
|
+
console.log("Profile dir:", getProfileDir());
|
|
89
|
+
console.log("");
|
|
90
|
+
const status = await authenticateWithPersistentBrowser();
|
|
91
|
+
console.log("");
|
|
92
|
+
console.log("Result:");
|
|
93
|
+
console.log(JSON.stringify(status, null, 2));
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
console.log("Usage:");
|
|
97
|
+
console.log(" bun packages/auth/src/run-minimax-auth.ts auth # Manual login + confirmation");
|
|
98
|
+
console.log(" bun packages/auth/src/run-minimax-auth.ts open # Start keep-open browser daemon");
|
|
99
|
+
console.log(" bun packages/auth/src/run-minimax-auth.ts scrape # Scrape usage (prefers live browser)");
|
|
100
|
+
console.log(" bun packages/auth/src/run-minimax-auth.ts stop # Stop live browser daemon");
|
|
101
|
+
console.log(" bun packages/auth/src/run-minimax-auth.ts check # Check status");
|
|
102
|
+
console.log("");
|
|
103
|
+
console.log("Security:");
|
|
104
|
+
console.log("- Human logs in manually in the browser");
|
|
105
|
+
console.log("- Playwright auto-saves persistent profile");
|
|
106
|
+
console.log("- No credentials are processed by this code");
|
|
107
|
+
}
|
|
108
|
+
main().catch((error) => {
|
|
109
|
+
console.error("Error:", error.message);
|
|
110
|
+
process.exit(1);
|
|
111
|
+
});
|
|
112
|
+
//# sourceMappingURL=run-minimax-auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-minimax-auth.js","sourceRoot":"","sources":["../src/run-minimax-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,9 @@ export declare class InboxError extends Error {
|
|
|
8
8
|
* Storage layout:
|
|
9
9
|
* ```
|
|
10
10
|
* ~/.pi/harness/inbox/
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* +-- tasks.jsonl # append-only log (one JSON line per task)
|
|
12
|
+
* +-- claimed/ # active leases (one JSON file per task)
|
|
13
|
+
* +-- BACKLOG.md # human-friendly authoring surface (optional)
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
16
|
* Operations are:
|
|
@@ -6,23 +6,23 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync, } from "node:fs";
|
|
8
8
|
import { getInboxDir, getTasksPath } from "./types.js";
|
|
9
|
-
//
|
|
9
|
+
// --- Errors -------------------------------------------------------------------
|
|
10
10
|
export class InboxError extends Error {
|
|
11
11
|
constructor(msg) {
|
|
12
12
|
super(`[InboxError] ${msg}`);
|
|
13
13
|
this.name = "InboxError";
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
//
|
|
16
|
+
// --- TaskInbox ----------------------------------------------------------------
|
|
17
17
|
/**
|
|
18
18
|
* Manages the append-only task inbox at `~/.pi/harness/inbox/tasks.jsonl`.
|
|
19
19
|
*
|
|
20
20
|
* Storage layout:
|
|
21
21
|
* ```
|
|
22
22
|
* ~/.pi/harness/inbox/
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
23
|
+
* +-- tasks.jsonl # append-only log (one JSON line per task)
|
|
24
|
+
* +-- claimed/ # active leases (one JSON file per task)
|
|
25
|
+
* +-- BACKLOG.md # human-friendly authoring surface (optional)
|
|
26
26
|
* ```
|
|
27
27
|
*
|
|
28
28
|
* Operations are:
|
|
@@ -46,7 +46,7 @@ export class TaskInbox {
|
|
|
46
46
|
mkdirSync(this.inboxDir, { recursive: true });
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
//
|
|
49
|
+
// --- append --------------------------------------------------------------
|
|
50
50
|
/**
|
|
51
51
|
* Append a new task to tasks.jsonl.
|
|
52
52
|
* The task is validated before writing. Duplicate ids are rejected.
|
|
@@ -64,7 +64,7 @@ export class TaskInbox {
|
|
|
64
64
|
appendFileSync(this.tasksPath, line, "utf8");
|
|
65
65
|
this._cache = null; // invalidate
|
|
66
66
|
}
|
|
67
|
-
//
|
|
67
|
+
// --- list -----------------------------------------------------------------
|
|
68
68
|
/**
|
|
69
69
|
* Read all tasks from tasks.jsonl.
|
|
70
70
|
* Results are sorted by priority ASC then createdAt ASC (oldest first).
|
|
@@ -106,13 +106,13 @@ export class TaskInbox {
|
|
|
106
106
|
});
|
|
107
107
|
return filtered;
|
|
108
108
|
}
|
|
109
|
-
//
|
|
109
|
+
// --- get -----------------------------------------------------------------
|
|
110
110
|
/** Retrieve a single task by id, or null if not found. */
|
|
111
111
|
get(id) {
|
|
112
112
|
const tasks = this.list();
|
|
113
113
|
return tasks.find((t) => t.id === id) ?? null;
|
|
114
114
|
}
|
|
115
|
-
//
|
|
115
|
+
// --- transition ----------------------------------------------------------
|
|
116
116
|
/**
|
|
117
117
|
* Update a task's status in-place inside tasks.jsonl.
|
|
118
118
|
*
|
|
@@ -159,7 +159,7 @@ export class TaskInbox {
|
|
|
159
159
|
this._cache = null;
|
|
160
160
|
return updated;
|
|
161
161
|
}
|
|
162
|
-
//
|
|
162
|
+
// --- markDone / markFailed -----------------------------------------------
|
|
163
163
|
/** Convenience: mark a task as completed with a result. */
|
|
164
164
|
complete(taskId, result) {
|
|
165
165
|
return this.transition(taskId, "completed", { result }, {
|
|
@@ -179,7 +179,7 @@ export class TaskInbox {
|
|
|
179
179
|
payload: { reason, attempts },
|
|
180
180
|
});
|
|
181
181
|
}
|
|
182
|
-
//
|
|
182
|
+
// --- reindex -------------------------------------------------------------
|
|
183
183
|
/** Rewrite tasks.jsonl from the given task list. */
|
|
184
184
|
_rewriteAll(tasks) {
|
|
185
185
|
const tmp = `${this.tasksPath}.tmp`;
|
|
@@ -198,7 +198,7 @@ export class TaskInbox {
|
|
|
198
198
|
this._rewriteAll(tasks);
|
|
199
199
|
this._cache = null;
|
|
200
200
|
}
|
|
201
|
-
//
|
|
201
|
+
// --- count ---------------------------------------------------------------
|
|
202
202
|
/** Return counts of tasks grouped by status. */
|
|
203
203
|
stats() {
|
|
204
204
|
const tasks = this.list();
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
* Filesystem layout:
|
|
8
8
|
* ```
|
|
9
9
|
* ~/.pi/harness/inbox/
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
10
|
+
* +-- tasks.jsonl # task records
|
|
11
|
+
* +-- claimed/
|
|
12
|
+
* +-- <task-id>.lease.json # one lease file per claimed task
|
|
13
13
|
* ```
|
|
14
14
|
*
|
|
15
15
|
* Safety properties:
|
|
@@ -20,14 +20,14 @@
|
|
|
20
20
|
import { closeSync, existsSync, mkdirSync, openSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync, writeSync, } from "node:fs";
|
|
21
21
|
import { join } from "node:path";
|
|
22
22
|
import { getLeasesDir } from "./types.js";
|
|
23
|
-
//
|
|
23
|
+
// --- Errors -------------------------------------------------------------------
|
|
24
24
|
export class LeaseError extends Error {
|
|
25
25
|
constructor(msg) {
|
|
26
26
|
super(`[LeaseError] ${msg}`);
|
|
27
27
|
this.name = "LeaseError";
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
//
|
|
30
|
+
// --- Constants ----------------------------------------------------------------
|
|
31
31
|
/** Default lease duration before heartbeat extension is required. */
|
|
32
32
|
export const DEFAULT_LEASE_TTL_MS = 30_000; // 30 s
|
|
33
33
|
/** Heartbeat interval sent by the worker. */
|
|
@@ -50,7 +50,7 @@ export class LeaseManager {
|
|
|
50
50
|
mkdirSync(this.leasesDir, { recursive: true });
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
//
|
|
53
|
+
// --- claim ---------------------------------------------------------------
|
|
54
54
|
/**
|
|
55
55
|
* Atomically claim a task for a worker.
|
|
56
56
|
*
|
|
@@ -111,7 +111,7 @@ export class LeaseManager {
|
|
|
111
111
|
throw err;
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
//
|
|
114
|
+
// --- heartbeat ------------------------------------------------------------
|
|
115
115
|
/**
|
|
116
116
|
* Extend a lease's expiry time.
|
|
117
117
|
* Only the worker that holds the lease can extend it.
|
|
@@ -133,7 +133,7 @@ export class LeaseManager {
|
|
|
133
133
|
this._writeLease(updated);
|
|
134
134
|
return updated;
|
|
135
135
|
}
|
|
136
|
-
//
|
|
136
|
+
// --- release -------------------------------------------------------------
|
|
137
137
|
/**
|
|
138
138
|
* Explicitly release a lease (task completed or failed without retry).
|
|
139
139
|
*/
|
|
@@ -146,7 +146,7 @@ export class LeaseManager {
|
|
|
146
146
|
}
|
|
147
147
|
this._removeLease(taskId);
|
|
148
148
|
}
|
|
149
|
-
//
|
|
149
|
+
// --- get -----------------------------------------------------------------
|
|
150
150
|
/** Read a lease by taskId. Returns null if not found. */
|
|
151
151
|
get(taskId) {
|
|
152
152
|
const path = this._leasePath(taskId);
|
|
@@ -159,12 +159,12 @@ export class LeaseManager {
|
|
|
159
159
|
return null;
|
|
160
160
|
}
|
|
161
161
|
}
|
|
162
|
-
//
|
|
162
|
+
// --- isExpired ------------------------------------------------------------
|
|
163
163
|
/** Check if a lease has expired (expiresAt is in the past). */
|
|
164
164
|
isExpired(lease) {
|
|
165
165
|
return new Date(lease.expiresAt).getTime() < Date.now();
|
|
166
166
|
}
|
|
167
|
-
//
|
|
167
|
+
// --- reap ----------------------------------------------------------------
|
|
168
168
|
/**
|
|
169
169
|
* Scan all leases and return the ones that have expired.
|
|
170
170
|
* Does NOT remove them — call reapAndRelease() to remove atomically.
|
|
@@ -214,7 +214,7 @@ export class LeaseManager {
|
|
|
214
214
|
}
|
|
215
215
|
return released;
|
|
216
216
|
}
|
|
217
|
-
//
|
|
217
|
+
// --- recoverOrphanLeases -------------------------------------------------
|
|
218
218
|
/**
|
|
219
219
|
* On worker startup, release any leases held by dead workers.
|
|
220
220
|
* A lease is orphaned if its worker has not re-claimed it since startup.
|
|
@@ -225,7 +225,7 @@ export class LeaseManager {
|
|
|
225
225
|
recoverOnStartup() {
|
|
226
226
|
return this.reapAndRelease();
|
|
227
227
|
}
|
|
228
|
-
//
|
|
228
|
+
// --- listActive -----------------------------------------------------------
|
|
229
229
|
/** Return all active (non-expired) leases. */
|
|
230
230
|
listActive() {
|
|
231
231
|
if (!existsSync(this.leasesDir))
|
|
@@ -254,7 +254,7 @@ export class LeaseManager {
|
|
|
254
254
|
}
|
|
255
255
|
return active;
|
|
256
256
|
}
|
|
257
|
-
//
|
|
257
|
+
// --- internals -----------------------------------------------------------
|
|
258
258
|
_leasePath(taskId) {
|
|
259
259
|
return join(this.leasesDir, `${taskId}.lease.json`);
|
|
260
260
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* These types are the canonical contracts. Do not re-define them in other packages.
|
|
7
7
|
*/
|
|
8
8
|
import { env } from "node:process";
|
|
9
|
-
//
|
|
9
|
+
// --- Storage paths ------------------------------------------------------------
|
|
10
10
|
const DEFAULT_ROOT = `${env["HOME"] ?? "."}/.pi/harness`;
|
|
11
11
|
/** Returns the standard storage root for the runtime. */
|
|
12
12
|
export function getRuntimeRoot() {
|
|
@@ -15,7 +15,7 @@ import { dirname } from "node:path";
|
|
|
15
15
|
import type { TaskRecord, TaskStatus, TaskEvent } from "./types.js";
|
|
16
16
|
import { getInboxDir, getTasksPath } from "./types.js";
|
|
17
17
|
|
|
18
|
-
//
|
|
18
|
+
// --- Errors -------------------------------------------------------------------
|
|
19
19
|
|
|
20
20
|
export class InboxError extends Error {
|
|
21
21
|
constructor(msg: string) {
|
|
@@ -24,7 +24,7 @@ export class InboxError extends Error {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
//
|
|
27
|
+
// --- TaskInbox ----------------------------------------------------------------
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Manages the append-only task inbox at `~/.pi/harness/inbox/tasks.jsonl`.
|
|
@@ -32,9 +32,9 @@ export class InboxError extends Error {
|
|
|
32
32
|
* Storage layout:
|
|
33
33
|
* ```
|
|
34
34
|
* ~/.pi/harness/inbox/
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
35
|
+
* +-- tasks.jsonl # append-only log (one JSON line per task)
|
|
36
|
+
* +-- claimed/ # active leases (one JSON file per task)
|
|
37
|
+
* +-- BACKLOG.md # human-friendly authoring surface (optional)
|
|
38
38
|
* ```
|
|
39
39
|
*
|
|
40
40
|
* Operations are:
|
|
@@ -61,7 +61,7 @@ export class TaskInbox {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
//
|
|
64
|
+
// --- append --------------------------------------------------------------
|
|
65
65
|
|
|
66
66
|
/**
|
|
67
67
|
* Append a new task to tasks.jsonl.
|
|
@@ -85,7 +85,7 @@ export class TaskInbox {
|
|
|
85
85
|
this._cache = null; // invalidate
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
//
|
|
88
|
+
// --- list -----------------------------------------------------------------
|
|
89
89
|
|
|
90
90
|
/**
|
|
91
91
|
* Read all tasks from tasks.jsonl.
|
|
@@ -131,7 +131,7 @@ export class TaskInbox {
|
|
|
131
131
|
return filtered;
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
-
//
|
|
134
|
+
// --- get -----------------------------------------------------------------
|
|
135
135
|
|
|
136
136
|
/** Retrieve a single task by id, or null if not found. */
|
|
137
137
|
get(id: string): TaskRecord | null {
|
|
@@ -139,7 +139,7 @@ export class TaskInbox {
|
|
|
139
139
|
return tasks.find((t) => t.id === id) ?? null;
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
-
//
|
|
142
|
+
// --- transition ----------------------------------------------------------
|
|
143
143
|
|
|
144
144
|
/**
|
|
145
145
|
* Update a task's status in-place inside tasks.jsonl.
|
|
@@ -197,7 +197,7 @@ export class TaskInbox {
|
|
|
197
197
|
return updated;
|
|
198
198
|
}
|
|
199
199
|
|
|
200
|
-
//
|
|
200
|
+
// --- markDone / markFailed -----------------------------------------------
|
|
201
201
|
|
|
202
202
|
/** Convenience: mark a task as completed with a result. */
|
|
203
203
|
complete(taskId: string, result: TaskRecord["result"]): TaskRecord {
|
|
@@ -231,7 +231,7 @@ export class TaskInbox {
|
|
|
231
231
|
);
|
|
232
232
|
}
|
|
233
233
|
|
|
234
|
-
//
|
|
234
|
+
// --- reindex -------------------------------------------------------------
|
|
235
235
|
|
|
236
236
|
/** Rewrite tasks.jsonl from the given task list. */
|
|
237
237
|
private _rewriteAll(tasks: TaskRecord[]): void {
|
|
@@ -252,7 +252,7 @@ export class TaskInbox {
|
|
|
252
252
|
this._cache = null;
|
|
253
253
|
}
|
|
254
254
|
|
|
255
|
-
//
|
|
255
|
+
// --- count ---------------------------------------------------------------
|
|
256
256
|
|
|
257
257
|
/** Return counts of tasks grouped by status. */
|
|
258
258
|
stats(): Record<TaskStatus, number> {
|