mister-wolf 1.0.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/LICENSE +21 -0
- package/README.md +205 -0
- package/dist/adapters/cli/cli-entry.d.ts +5 -0
- package/dist/adapters/cli/cli-entry.d.ts.map +1 -0
- package/dist/adapters/cli/cli-entry.js +115 -0
- package/dist/adapters/cli/cli-entry.js.map +1 -0
- package/dist/adapters/cli/commands/memory-add.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-add.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-add.js +51 -0
- package/dist/adapters/cli/commands/memory-add.js.map +1 -0
- package/dist/adapters/cli/commands/memory-article.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-article.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-article.js +47 -0
- package/dist/adapters/cli/commands/memory-article.js.map +1 -0
- package/dist/adapters/cli/commands/memory-blocker.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-blocker.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-blocker.js +52 -0
- package/dist/adapters/cli/commands/memory-blocker.js.map +1 -0
- package/dist/adapters/cli/commands/memory-bootstrap.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-bootstrap.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-bootstrap.js +15 -0
- package/dist/adapters/cli/commands/memory-bootstrap.js.map +1 -0
- package/dist/adapters/cli/commands/memory-brief.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-brief.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-brief.js +16 -0
- package/dist/adapters/cli/commands/memory-brief.js.map +1 -0
- package/dist/adapters/cli/commands/memory-call.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-call.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-call.js +44 -0
- package/dist/adapters/cli/commands/memory-call.js.map +1 -0
- package/dist/adapters/cli/commands/memory-complain.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-complain.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-complain.js +50 -0
- package/dist/adapters/cli/commands/memory-complain.js.map +1 -0
- package/dist/adapters/cli/commands/memory-council.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-council.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-council.js +42 -0
- package/dist/adapters/cli/commands/memory-council.js.map +1 -0
- package/dist/adapters/cli/commands/memory-decision.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-decision.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-decision.js +41 -0
- package/dist/adapters/cli/commands/memory-decision.js.map +1 -0
- package/dist/adapters/cli/commands/memory-doctor.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-doctor.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-doctor.js +49 -0
- package/dist/adapters/cli/commands/memory-doctor.js.map +1 -0
- package/dist/adapters/cli/commands/memory-effectiveness.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-effectiveness.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-effectiveness.js +86 -0
- package/dist/adapters/cli/commands/memory-effectiveness.js.map +1 -0
- package/dist/adapters/cli/commands/memory-get.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-get.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-get.js +25 -0
- package/dist/adapters/cli/commands/memory-get.js.map +1 -0
- package/dist/adapters/cli/commands/memory-info-request.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-info-request.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-info-request.js +47 -0
- package/dist/adapters/cli/commands/memory-info-request.js.map +1 -0
- package/dist/adapters/cli/commands/memory-init.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-init.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-init.js +75 -0
- package/dist/adapters/cli/commands/memory-init.js.map +1 -0
- package/dist/adapters/cli/commands/memory-insights.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-insights.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-insights.js +40 -0
- package/dist/adapters/cli/commands/memory-insights.js.map +1 -0
- package/dist/adapters/cli/commands/memory-learn.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-learn.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-learn.js +326 -0
- package/dist/adapters/cli/commands/memory-learn.js.map +1 -0
- package/dist/adapters/cli/commands/memory-list.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-list.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-list.js +22 -0
- package/dist/adapters/cli/commands/memory-list.js.map +1 -0
- package/dist/adapters/cli/commands/memory-mcp.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-mcp.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-mcp.js +16 -0
- package/dist/adapters/cli/commands/memory-mcp.js.map +1 -0
- package/dist/adapters/cli/commands/memory-migrate.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-migrate.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-migrate.js +37 -0
- package/dist/adapters/cli/commands/memory-migrate.js.map +1 -0
- package/dist/adapters/cli/commands/memory-rebuild-index.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-rebuild-index.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-rebuild-index.js +13 -0
- package/dist/adapters/cli/commands/memory-rebuild-index.js.map +1 -0
- package/dist/adapters/cli/commands/memory-recap.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-recap.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-recap.js +12 -0
- package/dist/adapters/cli/commands/memory-recap.js.map +1 -0
- package/dist/adapters/cli/commands/memory-relation.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-relation.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-relation.js +20 -0
- package/dist/adapters/cli/commands/memory-relation.js.map +1 -0
- package/dist/adapters/cli/commands/memory-rule.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-rule.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-rule.js +40 -0
- package/dist/adapters/cli/commands/memory-rule.js.map +1 -0
- package/dist/adapters/cli/commands/memory-run.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-run.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-run.js +103 -0
- package/dist/adapters/cli/commands/memory-run.js.map +1 -0
- package/dist/adapters/cli/commands/memory-scaffold.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-scaffold.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-scaffold.js +41 -0
- package/dist/adapters/cli/commands/memory-scaffold.js.map +1 -0
- package/dist/adapters/cli/commands/memory-scan.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-scan.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-scan.js +17 -0
- package/dist/adapters/cli/commands/memory-scan.js.map +1 -0
- package/dist/adapters/cli/commands/memory-search.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-search.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-search.js +45 -0
- package/dist/adapters/cli/commands/memory-search.js.map +1 -0
- package/dist/adapters/cli/commands/memory-session-wrap-up.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-session-wrap-up.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-session-wrap-up.js +21 -0
- package/dist/adapters/cli/commands/memory-session-wrap-up.js.map +1 -0
- package/dist/adapters/cli/commands/memory-session.d.ts +4 -0
- package/dist/adapters/cli/commands/memory-session.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-session.js +49 -0
- package/dist/adapters/cli/commands/memory-session.js.map +1 -0
- package/dist/adapters/cli/commands/memory-solve.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-solve.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-solve.js +21 -0
- package/dist/adapters/cli/commands/memory-solve.js.map +1 -0
- package/dist/adapters/cli/commands/memory-supersede.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-supersede.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-supersede.js +15 -0
- package/dist/adapters/cli/commands/memory-supersede.js.map +1 -0
- package/dist/adapters/cli/commands/memory-taxonomy.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-taxonomy.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-taxonomy.js +33 -0
- package/dist/adapters/cli/commands/memory-taxonomy.js.map +1 -0
- package/dist/adapters/cli/commands/memory-think.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-think.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-think.js +50 -0
- package/dist/adapters/cli/commands/memory-think.js.map +1 -0
- package/dist/adapters/cli/commands/memory-thread.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-thread.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-thread.js +48 -0
- package/dist/adapters/cli/commands/memory-thread.js.map +1 -0
- package/dist/adapters/cli/commands/memory-tool.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-tool.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-tool.js +133 -0
- package/dist/adapters/cli/commands/memory-tool.js.map +1 -0
- package/dist/adapters/cli/commands/memory-transition.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-transition.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-transition.js +35 -0
- package/dist/adapters/cli/commands/memory-transition.js.map +1 -0
- package/dist/adapters/cli/commands/memory-validate.d.ts +19 -0
- package/dist/adapters/cli/commands/memory-validate.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-validate.js +281 -0
- package/dist/adapters/cli/commands/memory-validate.js.map +1 -0
- package/dist/adapters/cli/opencode-run-metrics.d.ts +18 -0
- package/dist/adapters/cli/opencode-run-metrics.d.ts.map +1 -0
- package/dist/adapters/cli/opencode-run-metrics.js +54 -0
- package/dist/adapters/cli/opencode-run-metrics.js.map +1 -0
- package/dist/adapters/fs/config-file.d.ts +8 -0
- package/dist/adapters/fs/config-file.d.ts.map +1 -0
- package/dist/adapters/fs/config-file.js +168 -0
- package/dist/adapters/fs/config-file.js.map +1 -0
- package/dist/adapters/fs/fs-file-system.d.ts +9 -0
- package/dist/adapters/fs/fs-file-system.d.ts.map +1 -0
- package/dist/adapters/fs/fs-file-system.js +66 -0
- package/dist/adapters/fs/fs-file-system.js.map +1 -0
- package/dist/adapters/fs/fs-project-initializer.d.ts +5 -0
- package/dist/adapters/fs/fs-project-initializer.d.ts.map +1 -0
- package/dist/adapters/fs/fs-project-initializer.js +22 -0
- package/dist/adapters/fs/fs-project-initializer.js.map +1 -0
- package/dist/adapters/fs/hash-id-generator.d.ts +11 -0
- package/dist/adapters/fs/hash-id-generator.d.ts.map +1 -0
- package/dist/adapters/fs/hash-id-generator.js +68 -0
- package/dist/adapters/fs/hash-id-generator.js.map +1 -0
- package/dist/adapters/fs/heuristic-project-scanner.d.ts +20 -0
- package/dist/adapters/fs/heuristic-project-scanner.d.ts.map +1 -0
- package/dist/adapters/fs/heuristic-project-scanner.js +239 -0
- package/dist/adapters/fs/heuristic-project-scanner.js.map +1 -0
- package/dist/adapters/fs/jsonl-event-log.d.ts +9 -0
- package/dist/adapters/fs/jsonl-event-log.d.ts.map +1 -0
- package/dist/adapters/fs/jsonl-event-log.js +39 -0
- package/dist/adapters/fs/jsonl-event-log.js.map +1 -0
- package/dist/adapters/fs/jsonl-relation-log.d.ts +13 -0
- package/dist/adapters/fs/jsonl-relation-log.d.ts.map +1 -0
- package/dist/adapters/fs/jsonl-relation-log.js +43 -0
- package/dist/adapters/fs/jsonl-relation-log.js.map +1 -0
- package/dist/adapters/fs/jsonl-scan.d.ts +11 -0
- package/dist/adapters/fs/jsonl-scan.d.ts.map +1 -0
- package/dist/adapters/fs/jsonl-scan.js +29 -0
- package/dist/adapters/fs/jsonl-scan.js.map +1 -0
- package/dist/adapters/fs/layout-migration.d.ts +20 -0
- package/dist/adapters/fs/layout-migration.d.ts.map +1 -0
- package/dist/adapters/fs/layout-migration.js +160 -0
- package/dist/adapters/fs/layout-migration.js.map +1 -0
- package/dist/adapters/fs/markdown-memory-store.d.ts +27 -0
- package/dist/adapters/fs/markdown-memory-store.d.ts.map +1 -0
- package/dist/adapters/fs/markdown-memory-store.js +267 -0
- package/dist/adapters/fs/markdown-memory-store.js.map +1 -0
- package/dist/adapters/fs/memory-lock.d.ts +22 -0
- package/dist/adapters/fs/memory-lock.d.ts.map +1 -0
- package/dist/adapters/fs/memory-lock.js +102 -0
- package/dist/adapters/fs/memory-lock.js.map +1 -0
- package/dist/adapters/fs/project-paths.d.ts +25 -0
- package/dist/adapters/fs/project-paths.d.ts.map +1 -0
- package/dist/adapters/fs/project-paths.js +62 -0
- package/dist/adapters/fs/project-paths.js.map +1 -0
- package/dist/adapters/fs/projects-registry.d.ts +21 -0
- package/dist/adapters/fs/projects-registry.d.ts.map +1 -0
- package/dist/adapters/fs/projects-registry.js +76 -0
- package/dist/adapters/fs/projects-registry.js.map +1 -0
- package/dist/adapters/fs/schema-guard.d.ts +11 -0
- package/dist/adapters/fs/schema-guard.d.ts.map +1 -0
- package/dist/adapters/fs/schema-guard.js +46 -0
- package/dist/adapters/fs/schema-guard.js.map +1 -0
- package/dist/adapters/fs/schema-version.d.ts +8 -0
- package/dist/adapters/fs/schema-version.d.ts.map +1 -0
- package/dist/adapters/fs/schema-version.js +45 -0
- package/dist/adapters/fs/schema-version.js.map +1 -0
- package/dist/adapters/fs/session-metrics-log.d.ts +120 -0
- package/dist/adapters/fs/session-metrics-log.d.ts.map +1 -0
- package/dist/adapters/fs/session-metrics-log.js +180 -0
- package/dist/adapters/fs/session-metrics-log.js.map +1 -0
- package/dist/adapters/fs/system-clock.d.ts +5 -0
- package/dist/adapters/fs/system-clock.d.ts.map +1 -0
- package/dist/adapters/fs/system-clock.js +6 -0
- package/dist/adapters/fs/system-clock.js.map +1 -0
- package/dist/adapters/fs/user-config.d.ts +3 -0
- package/dist/adapters/fs/user-config.d.ts.map +1 -0
- package/dist/adapters/fs/user-config.js +8 -0
- package/dist/adapters/fs/user-config.js.map +1 -0
- package/dist/adapters/mcp/mcp-schemas.d.ts +142 -0
- package/dist/adapters/mcp/mcp-schemas.d.ts.map +1 -0
- package/dist/adapters/mcp/mcp-schemas.js +120 -0
- package/dist/adapters/mcp/mcp-schemas.js.map +1 -0
- package/dist/adapters/mcp/mcp-server.d.ts +3 -0
- package/dist/adapters/mcp/mcp-server.d.ts.map +1 -0
- package/dist/adapters/mcp/mcp-server.js +14 -0
- package/dist/adapters/mcp/mcp-server.js.map +1 -0
- package/dist/adapters/mcp/mcp-tools.d.ts +4 -0
- package/dist/adapters/mcp/mcp-tools.d.ts.map +1 -0
- package/dist/adapters/mcp/mcp-tools.js +203 -0
- package/dist/adapters/mcp/mcp-tools.js.map +1 -0
- package/dist/adapters/platforms/claude-adapter.d.ts +10 -0
- package/dist/adapters/platforms/claude-adapter.d.ts.map +1 -0
- package/dist/adapters/platforms/claude-adapter.js +71 -0
- package/dist/adapters/platforms/claude-adapter.js.map +1 -0
- package/dist/adapters/platforms/index.d.ts +6 -0
- package/dist/adapters/platforms/index.d.ts.map +1 -0
- package/dist/adapters/platforms/index.js +7 -0
- package/dist/adapters/platforms/index.js.map +1 -0
- package/dist/adapters/platforms/jsonc.d.ts +6 -0
- package/dist/adapters/platforms/jsonc.d.ts.map +1 -0
- package/dist/adapters/platforms/jsonc.js +10 -0
- package/dist/adapters/platforms/jsonc.js.map +1 -0
- package/dist/adapters/platforms/opencode-adapter.d.ts +11 -0
- package/dist/adapters/platforms/opencode-adapter.d.ts.map +1 -0
- package/dist/adapters/platforms/opencode-adapter.js +85 -0
- package/dist/adapters/platforms/opencode-adapter.js.map +1 -0
- package/dist/adapters/sqlite/busy-retry.d.ts +2 -0
- package/dist/adapters/sqlite/busy-retry.d.ts.map +1 -0
- package/dist/adapters/sqlite/busy-retry.js +22 -0
- package/dist/adapters/sqlite/busy-retry.js.map +1 -0
- package/dist/adapters/sqlite/sqlite-schema.d.ts +2 -0
- package/dist/adapters/sqlite/sqlite-schema.d.ts.map +1 -0
- package/dist/adapters/sqlite/sqlite-schema.js +29 -0
- package/dist/adapters/sqlite/sqlite-schema.js.map +1 -0
- package/dist/adapters/sqlite/sqlite-search-index.d.ts +19 -0
- package/dist/adapters/sqlite/sqlite-search-index.d.ts.map +1 -0
- package/dist/adapters/sqlite/sqlite-search-index.js +167 -0
- package/dist/adapters/sqlite/sqlite-search-index.js.map +1 -0
- package/dist/agent/registry.d.ts +14 -0
- package/dist/agent/registry.d.ts.map +1 -0
- package/dist/agent/registry.js +42 -0
- package/dist/agent/registry.js.map +1 -0
- package/dist/agent/router.d.ts +10 -0
- package/dist/agent/router.d.ts.map +1 -0
- package/dist/agent/router.js +21 -0
- package/dist/agent/router.js.map +1 -0
- package/dist/agent/runner.d.ts +24 -0
- package/dist/agent/runner.d.ts.map +1 -0
- package/dist/agent/runner.js +388 -0
- package/dist/agent/runner.js.map +1 -0
- package/dist/app/use-cases/activate-draft.d.ts +31 -0
- package/dist/app/use-cases/activate-draft.d.ts.map +1 -0
- package/dist/app/use-cases/activate-draft.js +71 -0
- package/dist/app/use-cases/activate-draft.js.map +1 -0
- package/dist/app/use-cases/add-memory-object.d.ts +39 -0
- package/dist/app/use-cases/add-memory-object.d.ts.map +1 -0
- package/dist/app/use-cases/add-memory-object.js +62 -0
- package/dist/app/use-cases/add-memory-object.js.map +1 -0
- package/dist/app/use-cases/bootstrap-project.d.ts +38 -0
- package/dist/app/use-cases/bootstrap-project.d.ts.map +1 -0
- package/dist/app/use-cases/bootstrap-project.js +119 -0
- package/dist/app/use-cases/bootstrap-project.js.map +1 -0
- package/dist/app/use-cases/build-solve-pack.d.ts +15 -0
- package/dist/app/use-cases/build-solve-pack.d.ts.map +1 -0
- package/dist/app/use-cases/build-solve-pack.js +123 -0
- package/dist/app/use-cases/build-solve-pack.js.map +1 -0
- package/dist/app/use-cases/create-article.d.ts +31 -0
- package/dist/app/use-cases/create-article.d.ts.map +1 -0
- package/dist/app/use-cases/create-article.js +62 -0
- package/dist/app/use-cases/create-article.js.map +1 -0
- package/dist/app/use-cases/create-blocker.d.ts +28 -0
- package/dist/app/use-cases/create-blocker.d.ts.map +1 -0
- package/dist/app/use-cases/create-blocker.js +51 -0
- package/dist/app/use-cases/create-blocker.js.map +1 -0
- package/dist/app/use-cases/create-decision.d.ts +28 -0
- package/dist/app/use-cases/create-decision.d.ts.map +1 -0
- package/dist/app/use-cases/create-decision.js +58 -0
- package/dist/app/use-cases/create-decision.js.map +1 -0
- package/dist/app/use-cases/create-info-request.d.ts +31 -0
- package/dist/app/use-cases/create-info-request.d.ts.map +1 -0
- package/dist/app/use-cases/create-info-request.js +58 -0
- package/dist/app/use-cases/create-info-request.js.map +1 -0
- package/dist/app/use-cases/create-memory-repair-request.d.ts +25 -0
- package/dist/app/use-cases/create-memory-repair-request.d.ts.map +1 -0
- package/dist/app/use-cases/create-memory-repair-request.js +76 -0
- package/dist/app/use-cases/create-memory-repair-request.js.map +1 -0
- package/dist/app/use-cases/create-rule.d.ts +27 -0
- package/dist/app/use-cases/create-rule.d.ts.map +1 -0
- package/dist/app/use-cases/create-rule.js +48 -0
- package/dist/app/use-cases/create-rule.js.map +1 -0
- package/dist/app/use-cases/create-session-checkpoint.d.ts +23 -0
- package/dist/app/use-cases/create-session-checkpoint.d.ts.map +1 -0
- package/dist/app/use-cases/create-session-checkpoint.js +61 -0
- package/dist/app/use-cases/create-session-checkpoint.js.map +1 -0
- package/dist/app/use-cases/create-synthesis.d.ts +25 -0
- package/dist/app/use-cases/create-synthesis.d.ts.map +1 -0
- package/dist/app/use-cases/create-synthesis.js +36 -0
- package/dist/app/use-cases/create-synthesis.js.map +1 -0
- package/dist/app/use-cases/create-work-thread.d.ts +26 -0
- package/dist/app/use-cases/create-work-thread.d.ts.map +1 -0
- package/dist/app/use-cases/create-work-thread.js +47 -0
- package/dist/app/use-cases/create-work-thread.js.map +1 -0
- package/dist/app/use-cases/diff-thread.d.ts +18 -0
- package/dist/app/use-cases/diff-thread.d.ts.map +1 -0
- package/dist/app/use-cases/diff-thread.js +46 -0
- package/dist/app/use-cases/diff-thread.js.map +1 -0
- package/dist/app/use-cases/doctor.d.ts +27 -0
- package/dist/app/use-cases/doctor.d.ts.map +1 -0
- package/dist/app/use-cases/doctor.js +45 -0
- package/dist/app/use-cases/doctor.js.map +1 -0
- package/dist/app/use-cases/effectiveness.d.ts +89 -0
- package/dist/app/use-cases/effectiveness.d.ts.map +1 -0
- package/dist/app/use-cases/effectiveness.js +133 -0
- package/dist/app/use-cases/effectiveness.js.map +1 -0
- package/dist/app/use-cases/generate-agent-brief.d.ts +14 -0
- package/dist/app/use-cases/generate-agent-brief.d.ts.map +1 -0
- package/dist/app/use-cases/generate-agent-brief.js +100 -0
- package/dist/app/use-cases/generate-agent-brief.js.map +1 -0
- package/dist/app/use-cases/generate-insights.d.ts +68 -0
- package/dist/app/use-cases/generate-insights.d.ts.map +1 -0
- package/dist/app/use-cases/generate-insights.js +179 -0
- package/dist/app/use-cases/generate-insights.js.map +1 -0
- package/dist/app/use-cases/generate-recap.d.ts +15 -0
- package/dist/app/use-cases/generate-recap.d.ts.map +1 -0
- package/dist/app/use-cases/generate-recap.js +39 -0
- package/dist/app/use-cases/generate-recap.js.map +1 -0
- package/dist/app/use-cases/get-call-injections.d.ts +19 -0
- package/dist/app/use-cases/get-call-injections.d.ts.map +1 -0
- package/dist/app/use-cases/get-call-injections.js +108 -0
- package/dist/app/use-cases/get-call-injections.js.map +1 -0
- package/dist/app/use-cases/get-latest-memory-object.d.ts +8 -0
- package/dist/app/use-cases/get-latest-memory-object.d.ts.map +1 -0
- package/dist/app/use-cases/get-latest-memory-object.js +23 -0
- package/dist/app/use-cases/get-latest-memory-object.js.map +1 -0
- package/dist/app/use-cases/get-memory-object.d.ts +4 -0
- package/dist/app/use-cases/get-memory-object.d.ts.map +1 -0
- package/dist/app/use-cases/get-memory-object.js +4 -0
- package/dist/app/use-cases/get-memory-object.js.map +1 -0
- package/dist/app/use-cases/get-thread-brief.d.ts +19 -0
- package/dist/app/use-cases/get-thread-brief.d.ts.map +1 -0
- package/dist/app/use-cases/get-thread-brief.js +72 -0
- package/dist/app/use-cases/get-thread-brief.js.map +1 -0
- package/dist/app/use-cases/init-project-memory.d.ts +3 -0
- package/dist/app/use-cases/init-project-memory.d.ts.map +1 -0
- package/dist/app/use-cases/init-project-memory.js +4 -0
- package/dist/app/use-cases/init-project-memory.js.map +1 -0
- package/dist/app/use-cases/init-project.d.ts +44 -0
- package/dist/app/use-cases/init-project.d.ts.map +1 -0
- package/dist/app/use-cases/init-project.js +98 -0
- package/dist/app/use-cases/init-project.js.map +1 -0
- package/dist/app/use-cases/learn-decay.d.ts +91 -0
- package/dist/app/use-cases/learn-decay.d.ts.map +1 -0
- package/dist/app/use-cases/learn-decay.js +274 -0
- package/dist/app/use-cases/learn-decay.js.map +1 -0
- package/dist/app/use-cases/list-memory-objects.d.ts +9 -0
- package/dist/app/use-cases/list-memory-objects.d.ts.map +1 -0
- package/dist/app/use-cases/list-memory-objects.js +4 -0
- package/dist/app/use-cases/list-memory-objects.js.map +1 -0
- package/dist/app/use-cases/pattern-detection.d.ts +44 -0
- package/dist/app/use-cases/pattern-detection.d.ts.map +1 -0
- package/dist/app/use-cases/pattern-detection.js +71 -0
- package/dist/app/use-cases/pattern-detection.js.map +1 -0
- package/dist/app/use-cases/propose-draft.d.ts +79 -0
- package/dist/app/use-cases/propose-draft.d.ts.map +1 -0
- package/dist/app/use-cases/propose-draft.js +140 -0
- package/dist/app/use-cases/propose-draft.js.map +1 -0
- package/dist/app/use-cases/rebuild-memory-index.d.ts +7 -0
- package/dist/app/use-cases/rebuild-memory-index.d.ts.map +1 -0
- package/dist/app/use-cases/rebuild-memory-index.js +5 -0
- package/dist/app/use-cases/rebuild-memory-index.js.map +1 -0
- package/dist/app/use-cases/record-relation.d.ts +10 -0
- package/dist/app/use-cases/record-relation.d.ts.map +1 -0
- package/dist/app/use-cases/record-relation.js +50 -0
- package/dist/app/use-cases/record-relation.js.map +1 -0
- package/dist/app/use-cases/resolve-blocker.d.ts +17 -0
- package/dist/app/use-cases/resolve-blocker.d.ts.map +1 -0
- package/dist/app/use-cases/resolve-blocker.js +31 -0
- package/dist/app/use-cases/resolve-blocker.js.map +1 -0
- package/dist/app/use-cases/scaffold-agent.d.ts +41 -0
- package/dist/app/use-cases/scaffold-agent.d.ts.map +1 -0
- package/dist/app/use-cases/scaffold-agent.js +114 -0
- package/dist/app/use-cases/scaffold-agent.js.map +1 -0
- package/dist/app/use-cases/scan-project.d.ts +25 -0
- package/dist/app/use-cases/scan-project.d.ts.map +1 -0
- package/dist/app/use-cases/scan-project.js +94 -0
- package/dist/app/use-cases/scan-project.js.map +1 -0
- package/dist/app/use-cases/search-memory.d.ts +8 -0
- package/dist/app/use-cases/search-memory.d.ts.map +1 -0
- package/dist/app/use-cases/search-memory.js +5 -0
- package/dist/app/use-cases/search-memory.js.map +1 -0
- package/dist/app/use-cases/should-summarize.d.ts +3 -0
- package/dist/app/use-cases/should-summarize.d.ts.map +1 -0
- package/dist/app/use-cases/should-summarize.js +11 -0
- package/dist/app/use-cases/should-summarize.js.map +1 -0
- package/dist/app/use-cases/summarize-session.d.ts +24 -0
- package/dist/app/use-cases/summarize-session.d.ts.map +1 -0
- package/dist/app/use-cases/summarize-session.js +40 -0
- package/dist/app/use-cases/summarize-session.js.map +1 -0
- package/dist/app/use-cases/supersede-memory-object.d.ts +15 -0
- package/dist/app/use-cases/supersede-memory-object.d.ts.map +1 -0
- package/dist/app/use-cases/supersede-memory-object.js +43 -0
- package/dist/app/use-cases/supersede-memory-object.js.map +1 -0
- package/dist/app/use-cases/tally-council-votes.d.ts +22 -0
- package/dist/app/use-cases/tally-council-votes.d.ts.map +1 -0
- package/dist/app/use-cases/tally-council-votes.js +30 -0
- package/dist/app/use-cases/tally-council-votes.js.map +1 -0
- package/dist/app/use-cases/template-evolve.d.ts +87 -0
- package/dist/app/use-cases/template-evolve.d.ts.map +1 -0
- package/dist/app/use-cases/template-evolve.js +164 -0
- package/dist/app/use-cases/template-evolve.js.map +1 -0
- package/dist/app/use-cases/thinking.d.ts +61 -0
- package/dist/app/use-cases/thinking.d.ts.map +1 -0
- package/dist/app/use-cases/thinking.js +123 -0
- package/dist/app/use-cases/thinking.js.map +1 -0
- package/dist/app/use-cases/tool-librarian.d.ts +83 -0
- package/dist/app/use-cases/tool-librarian.d.ts.map +1 -0
- package/dist/app/use-cases/tool-librarian.js +189 -0
- package/dist/app/use-cases/tool-librarian.js.map +1 -0
- package/dist/app/use-cases/tool-stats.d.ts +20 -0
- package/dist/app/use-cases/tool-stats.d.ts.map +1 -0
- package/dist/app/use-cases/tool-stats.js +30 -0
- package/dist/app/use-cases/tool-stats.js.map +1 -0
- package/dist/app/use-cases/transition-memory-object.d.ts +17 -0
- package/dist/app/use-cases/transition-memory-object.d.ts.map +1 -0
- package/dist/app/use-cases/transition-memory-object.js +38 -0
- package/dist/app/use-cases/transition-memory-object.js.map +1 -0
- package/dist/app/use-cases/validate-draft.d.ts +36 -0
- package/dist/app/use-cases/validate-draft.d.ts.map +1 -0
- package/dist/app/use-cases/validate-draft.js +75 -0
- package/dist/app/use-cases/validate-draft.js.map +1 -0
- package/dist/bootstrap/cli.d.ts +3 -0
- package/dist/bootstrap/cli.d.ts.map +1 -0
- package/dist/bootstrap/cli.js +4 -0
- package/dist/bootstrap/cli.js.map +1 -0
- package/dist/bootstrap/container.d.ts +25 -0
- package/dist/bootstrap/container.d.ts.map +1 -0
- package/dist/bootstrap/container.js +40 -0
- package/dist/bootstrap/container.js.map +1 -0
- package/dist/bootstrap/mcp.d.ts +2 -0
- package/dist/bootstrap/mcp.d.ts.map +1 -0
- package/dist/bootstrap/mcp.js +13 -0
- package/dist/bootstrap/mcp.js.map +1 -0
- package/dist/cli/commands/agents.d.ts +3 -0
- package/dist/cli/commands/agents.d.ts.map +1 -0
- package/dist/cli/commands/agents.js +65 -0
- package/dist/cli/commands/agents.js.map +1 -0
- package/dist/cli/commands/cases.d.ts +3 -0
- package/dist/cli/commands/cases.d.ts.map +1 -0
- package/dist/cli/commands/cases.js +143 -0
- package/dist/cli/commands/cases.js.map +1 -0
- package/dist/cli/commands/context.d.ts +3 -0
- package/dist/cli/commands/context.d.ts.map +1 -0
- package/dist/cli/commands/context.js +161 -0
- package/dist/cli/commands/context.js.map +1 -0
- package/dist/cli/commands/events.d.ts +3 -0
- package/dist/cli/commands/events.d.ts.map +1 -0
- package/dist/cli/commands/events.js +37 -0
- package/dist/cli/commands/events.js.map +1 -0
- package/dist/cli/commands/gates.d.ts +5 -0
- package/dist/cli/commands/gates.d.ts.map +1 -0
- package/dist/cli/commands/gates.js +94 -0
- package/dist/cli/commands/gates.js.map +1 -0
- package/dist/cli/commands/policy.d.ts +3 -0
- package/dist/cli/commands/policy.d.ts.map +1 -0
- package/dist/cli/commands/policy.js +35 -0
- package/dist/cli/commands/policy.js.map +1 -0
- package/dist/cli/commands/resume.d.ts +3 -0
- package/dist/cli/commands/resume.d.ts.map +1 -0
- package/dist/cli/commands/resume.js +59 -0
- package/dist/cli/commands/resume.js.map +1 -0
- package/dist/cli/commands/run.d.ts +3 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +97 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/validate.d.ts +3 -0
- package/dist/cli/commands/validate.d.ts.map +1 -0
- package/dist/cli/commands/validate.js +28 -0
- package/dist/cli/commands/validate.js.map +1 -0
- package/dist/cli/commands/wac.d.ts +8 -0
- package/dist/cli/commands/wac.d.ts.map +1 -0
- package/dist/cli/commands/wac.js +161 -0
- package/dist/cli/commands/wac.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +34 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/config/loader.d.ts +3 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +12 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/project-config.d.ts +857 -0
- package/dist/config/project-config.d.ts.map +1 -0
- package/dist/config/project-config.js +129 -0
- package/dist/config/project-config.js.map +1 -0
- package/dist/config/schema.d.ts +2 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +2 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/config/validator.d.ts +6 -0
- package/dist/config/validator.d.ts.map +1 -0
- package/dist/config/validator.js +58 -0
- package/dist/config/validator.js.map +1 -0
- package/dist/context/bundle-builder.d.ts +7 -0
- package/dist/context/bundle-builder.d.ts.map +1 -0
- package/dist/context/bundle-builder.js +25 -0
- package/dist/context/bundle-builder.js.map +1 -0
- package/dist/context/case-memory.d.ts +11 -0
- package/dist/context/case-memory.d.ts.map +1 -0
- package/dist/context/case-memory.js +131 -0
- package/dist/context/case-memory.js.map +1 -0
- package/dist/context/md-generator.d.ts +6 -0
- package/dist/context/md-generator.d.ts.map +1 -0
- package/dist/context/md-generator.js +136 -0
- package/dist/context/md-generator.js.map +1 -0
- package/dist/context/resolver.d.ts +18 -0
- package/dist/context/resolver.d.ts.map +1 -0
- package/dist/context/resolver.js +86 -0
- package/dist/context/resolver.js.map +1 -0
- package/dist/context/scanner.d.ts +10 -0
- package/dist/context/scanner.d.ts.map +1 -0
- package/dist/context/scanner.js +197 -0
- package/dist/context/scanner.js.map +1 -0
- package/dist/domain/actor.d.ts +3 -0
- package/dist/domain/actor.d.ts.map +1 -0
- package/dist/domain/actor.js +10 -0
- package/dist/domain/actor.js.map +1 -0
- package/dist/domain/error-class.d.ts +31 -0
- package/dist/domain/error-class.d.ts.map +1 -0
- package/dist/domain/error-class.js +86 -0
- package/dist/domain/error-class.js.map +1 -0
- package/dist/domain/errors.d.ts +9 -0
- package/dist/domain/errors.d.ts.map +1 -0
- package/dist/domain/errors.js +12 -0
- package/dist/domain/errors.js.map +1 -0
- package/dist/domain/gates/stop-gate.d.ts +43 -0
- package/dist/domain/gates/stop-gate.d.ts.map +1 -0
- package/dist/domain/gates/stop-gate.js +125 -0
- package/dist/domain/gates/stop-gate.js.map +1 -0
- package/dist/domain/governance.d.ts +18 -0
- package/dist/domain/governance.d.ts.map +1 -0
- package/dist/domain/governance.js +54 -0
- package/dist/domain/governance.js.map +1 -0
- package/dist/domain/mechanical-advice.d.ts +12 -0
- package/dist/domain/mechanical-advice.d.ts.map +1 -0
- package/dist/domain/mechanical-advice.js +34 -0
- package/dist/domain/mechanical-advice.js.map +1 -0
- package/dist/domain/memory-types.d.ts +447 -0
- package/dist/domain/memory-types.d.ts.map +1 -0
- package/dist/domain/memory-types.js +282 -0
- package/dist/domain/memory-types.js.map +1 -0
- package/dist/domain/npx.d.ts +6 -0
- package/dist/domain/npx.d.ts.map +1 -0
- package/dist/domain/npx.js +8 -0
- package/dist/domain/npx.js.map +1 -0
- package/dist/domain/parse-set-pairs.d.ts +9 -0
- package/dist/domain/parse-set-pairs.d.ts.map +1 -0
- package/dist/domain/parse-set-pairs.js +77 -0
- package/dist/domain/parse-set-pairs.js.map +1 -0
- package/dist/domain/policies/read-only-zones.d.ts +13 -0
- package/dist/domain/policies/read-only-zones.d.ts.map +1 -0
- package/dist/domain/policies/read-only-zones.js +72 -0
- package/dist/domain/policies/read-only-zones.js.map +1 -0
- package/dist/domain/policies/write-protocol.d.ts +7 -0
- package/dist/domain/policies/write-protocol.d.ts.map +1 -0
- package/dist/domain/policies/write-protocol.js +18 -0
- package/dist/domain/policies/write-protocol.js.map +1 -0
- package/dist/domain/review-depth.d.ts +42 -0
- package/dist/domain/review-depth.d.ts.map +1 -0
- package/dist/domain/review-depth.js +49 -0
- package/dist/domain/review-depth.js.map +1 -0
- package/dist/domain/schemas/article-schema.d.ts +79 -0
- package/dist/domain/schemas/article-schema.d.ts.map +1 -0
- package/dist/domain/schemas/article-schema.js +12 -0
- package/dist/domain/schemas/article-schema.js.map +1 -0
- package/dist/domain/schemas/blocker-schema.d.ts +77 -0
- package/dist/domain/schemas/blocker-schema.d.ts.map +1 -0
- package/dist/domain/schemas/blocker-schema.js +10 -0
- package/dist/domain/schemas/blocker-schema.js.map +1 -0
- package/dist/domain/schemas/decision-schema.d.ts +75 -0
- package/dist/domain/schemas/decision-schema.d.ts.map +1 -0
- package/dist/domain/schemas/decision-schema.js +8 -0
- package/dist/domain/schemas/decision-schema.js.map +1 -0
- package/dist/domain/schemas/info-request-schema.d.ts +80 -0
- package/dist/domain/schemas/info-request-schema.d.ts.map +1 -0
- package/dist/domain/schemas/info-request-schema.js +13 -0
- package/dist/domain/schemas/info-request-schema.js.map +1 -0
- package/dist/domain/schemas/memory-event-schema.d.ts +17 -0
- package/dist/domain/schemas/memory-event-schema.d.ts.map +1 -0
- package/dist/domain/schemas/memory-event-schema.js +16 -0
- package/dist/domain/schemas/memory-event-schema.js.map +1 -0
- package/dist/domain/schemas/memory-object-schema.d.ts +74 -0
- package/dist/domain/schemas/memory-object-schema.d.ts.map +1 -0
- package/dist/domain/schemas/memory-object-schema.js +57 -0
- package/dist/domain/schemas/memory-object-schema.js.map +1 -0
- package/dist/domain/schemas/project-scan-schema.d.ts +27 -0
- package/dist/domain/schemas/project-scan-schema.d.ts.map +1 -0
- package/dist/domain/schemas/project-scan-schema.js +26 -0
- package/dist/domain/schemas/project-scan-schema.js.map +1 -0
- package/dist/domain/schemas/relation-schema.d.ts +43 -0
- package/dist/domain/schemas/relation-schema.d.ts.map +1 -0
- package/dist/domain/schemas/relation-schema.js +33 -0
- package/dist/domain/schemas/relation-schema.js.map +1 -0
- package/dist/domain/schemas/rule-schema.d.ts +80 -0
- package/dist/domain/schemas/rule-schema.d.ts.map +1 -0
- package/dist/domain/schemas/rule-schema.js +10 -0
- package/dist/domain/schemas/rule-schema.js.map +1 -0
- package/dist/domain/schemas/session-checkpoint-schema.d.ts +79 -0
- package/dist/domain/schemas/session-checkpoint-schema.d.ts.map +1 -0
- package/dist/domain/schemas/session-checkpoint-schema.js +12 -0
- package/dist/domain/schemas/session-checkpoint-schema.js.map +1 -0
- package/dist/domain/schemas/thread-schema.d.ts +77 -0
- package/dist/domain/schemas/thread-schema.d.ts.map +1 -0
- package/dist/domain/schemas/thread-schema.js +10 -0
- package/dist/domain/schemas/thread-schema.js.map +1 -0
- package/dist/domain/solve/classify.d.ts +6 -0
- package/dist/domain/solve/classify.d.ts.map +1 -0
- package/dist/domain/solve/classify.js +13 -0
- package/dist/domain/solve/classify.js.map +1 -0
- package/dist/domain/solve/relevance.d.ts +8 -0
- package/dist/domain/solve/relevance.d.ts.map +1 -0
- package/dist/domain/solve/relevance.js +9 -0
- package/dist/domain/solve/relevance.js.map +1 -0
- package/dist/domain/solve/scenarios.d.ts +11 -0
- package/dist/domain/solve/scenarios.d.ts.map +1 -0
- package/dist/domain/solve/scenarios.js +66 -0
- package/dist/domain/solve/scenarios.js.map +1 -0
- package/dist/domain/taxonomy.d.ts +35 -0
- package/dist/domain/taxonomy.d.ts.map +1 -0
- package/dist/domain/taxonomy.js +49 -0
- package/dist/domain/taxonomy.js.map +1 -0
- package/dist/domain/tool-economy.d.ts +36 -0
- package/dist/domain/tool-economy.d.ts.map +1 -0
- package/dist/domain/tool-economy.js +58 -0
- package/dist/domain/tool-economy.js.map +1 -0
- package/dist/domain/type-schema-builder.d.ts +198 -0
- package/dist/domain/type-schema-builder.d.ts.map +1 -0
- package/dist/domain/type-schema-builder.js +70 -0
- package/dist/domain/type-schema-builder.js.map +1 -0
- package/dist/kernel/event-bus.d.ts +13 -0
- package/dist/kernel/event-bus.d.ts.map +1 -0
- package/dist/kernel/event-bus.js +18 -0
- package/dist/kernel/event-bus.js.map +1 -0
- package/dist/model/errors.d.ts +22 -0
- package/dist/model/errors.d.ts.map +1 -0
- package/dist/model/errors.js +36 -0
- package/dist/model/errors.js.map +1 -0
- package/dist/model/mock-provider.d.ts +8 -0
- package/dist/model/mock-provider.d.ts.map +1 -0
- package/dist/model/mock-provider.js +59 -0
- package/dist/model/mock-provider.js.map +1 -0
- package/dist/model/openai-provider.d.ts +9 -0
- package/dist/model/openai-provider.d.ts.map +1 -0
- package/dist/model/openai-provider.js +201 -0
- package/dist/model/openai-provider.js.map +1 -0
- package/dist/model/registry.d.ts +9 -0
- package/dist/model/registry.d.ts.map +1 -0
- package/dist/model/registry.js +23 -0
- package/dist/model/registry.js.map +1 -0
- package/dist/model/stream-types.d.ts +16 -0
- package/dist/model/stream-types.d.ts.map +1 -0
- package/dist/model/stream-types.js +2 -0
- package/dist/model/stream-types.js.map +1 -0
- package/dist/model/types.d.ts +50 -0
- package/dist/model/types.d.ts.map +1 -0
- package/dist/model/types.js +2 -0
- package/dist/model/types.js.map +1 -0
- package/dist/policy/engine.d.ts +12 -0
- package/dist/policy/engine.d.ts.map +1 -0
- package/dist/policy/engine.js +130 -0
- package/dist/policy/engine.js.map +1 -0
- package/dist/policy/gate-adapter.d.ts +9 -0
- package/dist/policy/gate-adapter.d.ts.map +1 -0
- package/dist/policy/gate-adapter.js +22 -0
- package/dist/policy/gate-adapter.js.map +1 -0
- package/dist/policy/preflight.d.ts +8 -0
- package/dist/policy/preflight.d.ts.map +1 -0
- package/dist/policy/preflight.js +19 -0
- package/dist/policy/preflight.js.map +1 -0
- package/dist/policy/step-guard.d.ts +8 -0
- package/dist/policy/step-guard.d.ts.map +1 -0
- package/dist/policy/step-guard.js +8 -0
- package/dist/policy/step-guard.js.map +1 -0
- package/dist/ports/clock.port.d.ts +4 -0
- package/dist/ports/clock.port.d.ts.map +1 -0
- package/dist/ports/clock.port.js +2 -0
- package/dist/ports/clock.port.js.map +1 -0
- package/dist/ports/event-log.port.d.ts +6 -0
- package/dist/ports/event-log.port.d.ts.map +1 -0
- package/dist/ports/event-log.port.js +2 -0
- package/dist/ports/event-log.port.js.map +1 -0
- package/dist/ports/file-system.port.d.ts +14 -0
- package/dist/ports/file-system.port.d.ts.map +1 -0
- package/dist/ports/file-system.port.js +2 -0
- package/dist/ports/file-system.port.js.map +1 -0
- package/dist/ports/id-generator.port.d.ts +5 -0
- package/dist/ports/id-generator.port.d.ts.map +1 -0
- package/dist/ports/id-generator.port.js +2 -0
- package/dist/ports/id-generator.port.js.map +1 -0
- package/dist/ports/memory-lock.port.d.ts +4 -0
- package/dist/ports/memory-lock.port.d.ts.map +1 -0
- package/dist/ports/memory-lock.port.js +2 -0
- package/dist/ports/memory-lock.port.js.map +1 -0
- package/dist/ports/memory-store.port.d.ts +13 -0
- package/dist/ports/memory-store.port.d.ts.map +1 -0
- package/dist/ports/memory-store.port.js +2 -0
- package/dist/ports/memory-store.port.js.map +1 -0
- package/dist/ports/platform-adapter.port.d.ts +26 -0
- package/dist/ports/platform-adapter.port.d.ts.map +1 -0
- package/dist/ports/platform-adapter.port.js +2 -0
- package/dist/ports/platform-adapter.port.js.map +1 -0
- package/dist/ports/project-initializer.port.d.ts +4 -0
- package/dist/ports/project-initializer.port.d.ts.map +1 -0
- package/dist/ports/project-initializer.port.js +2 -0
- package/dist/ports/project-initializer.port.js.map +1 -0
- package/dist/ports/project-scanner.port.d.ts +5 -0
- package/dist/ports/project-scanner.port.d.ts.map +1 -0
- package/dist/ports/project-scanner.port.js +2 -0
- package/dist/ports/project-scanner.port.js.map +1 -0
- package/dist/ports/relation-log.port.d.ts +10 -0
- package/dist/ports/relation-log.port.d.ts.map +1 -0
- package/dist/ports/relation-log.port.js +2 -0
- package/dist/ports/relation-log.port.js.map +1 -0
- package/dist/ports/search-index.port.d.ts +25 -0
- package/dist/ports/search-index.port.d.ts.map +1 -0
- package/dist/ports/search-index.port.js +2 -0
- package/dist/ports/search-index.port.js.map +1 -0
- package/dist/state/case-store.d.ts +19 -0
- package/dist/state/case-store.d.ts.map +1 -0
- package/dist/state/case-store.js +105 -0
- package/dist/state/case-store.js.map +1 -0
- package/dist/state/file-store.d.ts +15 -0
- package/dist/state/file-store.d.ts.map +1 -0
- package/dist/state/file-store.js +55 -0
- package/dist/state/file-store.js.map +1 -0
- package/dist/state/gate-store.d.ts +18 -0
- package/dist/state/gate-store.d.ts.map +1 -0
- package/dist/state/gate-store.js +91 -0
- package/dist/state/gate-store.js.map +1 -0
- package/dist/state/sqlite-index.d.ts +35 -0
- package/dist/state/sqlite-index.d.ts.map +1 -0
- package/dist/state/sqlite-index.js +69 -0
- package/dist/state/sqlite-index.js.map +1 -0
- package/dist/state/store.d.ts +11 -0
- package/dist/state/store.d.ts.map +1 -0
- package/dist/state/store.js +2 -0
- package/dist/state/store.js.map +1 -0
- package/dist/tool/errors.d.ts +25 -0
- package/dist/tool/errors.d.ts.map +1 -0
- package/dist/tool/errors.js +41 -0
- package/dist/tool/errors.js.map +1 -0
- package/dist/tool/executors/context-read.d.ts +6 -0
- package/dist/tool/executors/context-read.d.ts.map +1 -0
- package/dist/tool/executors/context-read.js +39 -0
- package/dist/tool/executors/context-read.js.map +1 -0
- package/dist/tool/registry.d.ts +13 -0
- package/dist/tool/registry.d.ts.map +1 -0
- package/dist/tool/registry.js +49 -0
- package/dist/tool/registry.js.map +1 -0
- package/dist/tool/types.d.ts +46 -0
- package/dist/tool/types.d.ts.map +1 -0
- package/dist/tool/types.js +10 -0
- package/dist/tool/types.js.map +1 -0
- package/dist/types/agent.d.ts +98 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +35 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/case.d.ts +32 -0
- package/dist/types/case.d.ts.map +1 -0
- package/dist/types/case.js +11 -0
- package/dist/types/case.js.map +1 -0
- package/dist/types/context.d.ts +613 -0
- package/dist/types/context.d.ts.map +1 -0
- package/dist/types/context.js +60 -0
- package/dist/types/context.js.map +1 -0
- package/dist/types/events.d.ts +63 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +26 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/policy.d.ts +225 -0
- package/dist/types/policy.d.ts.map +1 -0
- package/dist/types/policy.js +43 -0
- package/dist/types/policy.js.map +1 -0
- package/dist/types/runner.d.ts +18 -0
- package/dist/types/runner.d.ts.map +1 -0
- package/dist/types/runner.js +2 -0
- package/dist/types/runner.js.map +1 -0
- package/dist/types/state.d.ts +316 -0
- package/dist/types/state.d.ts.map +1 -0
- package/dist/types/state.js +42 -0
- package/dist/types/state.js.map +1 -0
- package/dist/types/workflow.d.ts +379 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/types/workflow.js +51 -0
- package/dist/types/workflow.js.map +1 -0
- package/dist/wac/context.d.ts +4 -0
- package/dist/wac/context.d.ts.map +1 -0
- package/dist/wac/context.js +67 -0
- package/dist/wac/context.js.map +1 -0
- package/dist/wac/llm.d.ts +2 -0
- package/dist/wac/llm.d.ts.map +1 -0
- package/dist/wac/llm.js +69 -0
- package/dist/wac/llm.js.map +1 -0
- package/dist/wac/store.d.ts +25 -0
- package/dist/wac/store.d.ts.map +1 -0
- package/dist/wac/store.js +124 -0
- package/dist/wac/store.js.map +1 -0
- package/dist/workflow/conditions.d.ts +3 -0
- package/dist/workflow/conditions.d.ts.map +1 -0
- package/dist/workflow/conditions.js +18 -0
- package/dist/workflow/conditions.js.map +1 -0
- package/dist/workflow/engine.d.ts +47 -0
- package/dist/workflow/engine.d.ts.map +1 -0
- package/dist/workflow/engine.js +611 -0
- package/dist/workflow/engine.js.map +1 -0
- package/dist/workflow/graph.d.ts +13 -0
- package/dist/workflow/graph.d.ts.map +1 -0
- package/dist/workflow/graph.js +82 -0
- package/dist/workflow/graph.js.map +1 -0
- package/dist/workflow/runner-registry.d.ts +8 -0
- package/dist/workflow/runner-registry.d.ts.map +1 -0
- package/dist/workflow/runner-registry.js +17 -0
- package/dist/workflow/runner-registry.js.map +1 -0
- package/dist/workflow/runners/echo.d.ts +8 -0
- package/dist/workflow/runners/echo.d.ts.map +1 -0
- package/dist/workflow/runners/echo.js +11 -0
- package/dist/workflow/runners/echo.js.map +1 -0
- package/dist/workflow/runners/manual-gate.d.ts +8 -0
- package/dist/workflow/runners/manual-gate.d.ts.map +1 -0
- package/dist/workflow/runners/manual-gate.js +25 -0
- package/dist/workflow/runners/manual-gate.js.map +1 -0
- package/dist/workflow/runners/shell.d.ts +8 -0
- package/dist/workflow/runners/shell.d.ts.map +1 -0
- package/dist/workflow/runners/shell.js +156 -0
- package/dist/workflow/runners/shell.js.map +1 -0
- package/dist/workflow/template.d.ts +3 -0
- package/dist/workflow/template.d.ts.map +1 -0
- package/dist/workflow/template.js +25 -0
- package/dist/workflow/template.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diff-thread.js","sourceRoot":"","sources":["../../../src/app/use-cases/diff-thread.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ProjectsRegistry } from '../../adapters/fs/projects-registry.js';
|
|
2
|
+
import { PlatformAdapter } from '../../ports/platform-adapter.port.js';
|
|
3
|
+
export type DoctorStatus = 'ok' | 'outdated-binary' | 'outdated-project' | 'not-initialized' | 'missing';
|
|
4
|
+
export interface DoctorEntry {
|
|
5
|
+
path: string;
|
|
6
|
+
status: DoctorStatus;
|
|
7
|
+
schemaVersion: number | null;
|
|
8
|
+
/** Проблемы конфигов платформ (спека §3: «валидность конфигов платформ»). */
|
|
9
|
+
issues: string[];
|
|
10
|
+
}
|
|
11
|
+
export interface DoctorReport {
|
|
12
|
+
binarySchemaVersion: number;
|
|
13
|
+
entries: DoctorEntry[];
|
|
14
|
+
pruned: string[];
|
|
15
|
+
}
|
|
16
|
+
export interface DoctorDeps {
|
|
17
|
+
registry: Pick<ProjectsRegistry, 'list' | 'remove'>;
|
|
18
|
+
readSchema: (baseDir: string) => Promise<number | null>;
|
|
19
|
+
exists: (p: string) => Promise<boolean>;
|
|
20
|
+
adapters: PlatformAdapter[];
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* `wolf doctor` (спека §3): по реестру проектов — версия бинаря vs схема каждого проекта,
|
|
24
|
+
* валидность конфигов платформ (wolf-запись на месте?); мёртвые записи чистятся.
|
|
25
|
+
*/
|
|
26
|
+
export declare function runDoctor(deps: DoctorDeps): Promise<DoctorReport>;
|
|
27
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,SAAS,CAAC;AAEzG,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,6EAA6E;IAC7E,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;IACpD,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxD,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAoCvE"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { CURRENT_SCHEMA_VERSION } from '../../adapters/fs/schema-version.js';
|
|
2
|
+
/**
|
|
3
|
+
* `wolf doctor` (спека §3): по реестру проектов — версия бинаря vs схема каждого проекта,
|
|
4
|
+
* валидность конфигов платформ (wolf-запись на месте?); мёртвые записи чистятся.
|
|
5
|
+
*/
|
|
6
|
+
export async function runDoctor(deps) {
|
|
7
|
+
const entries = [];
|
|
8
|
+
const pruned = [];
|
|
9
|
+
for (const proj of await deps.registry.list()) {
|
|
10
|
+
if (!(await deps.exists(proj.path))) {
|
|
11
|
+
await deps.registry.remove(proj.path);
|
|
12
|
+
pruned.push(proj.path);
|
|
13
|
+
entries.push({ path: proj.path, status: 'missing', schemaVersion: null, issues: [] });
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
const v = await deps.readSchema(proj.path);
|
|
17
|
+
// семантика как в guard (schema-guard.ts): null = проект НЕ инициализирован —
|
|
18
|
+
// ленивой миграции не будет, нужна команда init; легаси-версия (1) = миграция
|
|
19
|
+
let status;
|
|
20
|
+
let schemaVersion;
|
|
21
|
+
if (v === null) {
|
|
22
|
+
status = 'not-initialized';
|
|
23
|
+
schemaVersion = null;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
schemaVersion = v;
|
|
27
|
+
status = v > CURRENT_SCHEMA_VERSION ? 'outdated-binary' : v < CURRENT_SCHEMA_VERSION ? 'outdated-project' : 'ok';
|
|
28
|
+
}
|
|
29
|
+
const issues = [];
|
|
30
|
+
if (status === 'ok') {
|
|
31
|
+
for (const adapter of deps.adapters) {
|
|
32
|
+
if (!adapter.detect(proj.path))
|
|
33
|
+
continue;
|
|
34
|
+
const cfg = await adapter.readConfig(proj.path).catch(() => null);
|
|
35
|
+
const mcp = cfg && typeof cfg === 'object' ? (cfg.mcp ?? cfg.mcpServers) : null;
|
|
36
|
+
if (!mcp || mcp.wolf === undefined) {
|
|
37
|
+
issues.push(`${adapter.id}: wolf entry missing — run wolf init`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
entries.push({ path: proj.path, status, schemaVersion, issues });
|
|
42
|
+
}
|
|
43
|
+
return { binarySchemaVersion: CURRENT_SCHEMA_VERSION, entries, pruned };
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/app/use-cases/doctor.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AA0BhG;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAgB;IAC9C,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;YACtF,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,8EAA8E;QAC9E,8EAA8E;QAC9E,IAAI,MAAoB,CAAC;QACzB,IAAI,aAA4B,CAAC;QACjC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACf,MAAM,GAAG,iBAAiB,CAAC;YAC3B,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,CAAC,CAAC;YAClB,MAAM,GAAG,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;QACnH,CAAC;QACD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,SAAS;gBACzC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBAClE,MAAM,GAAG,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAA6B,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7G,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,sCAAsC,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC1E,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E1.2: `wolf effectiveness` — сводная панель эффективности памяти по пробегу.
|
|
3
|
+
* Только агрегация существующих данных (store, relations, event-log, signals,
|
|
4
|
+
* run-log), без LLM и без выдуманных чисел: мало данных → null → панель печатает n/a.
|
|
5
|
+
*
|
|
6
|
+
* Методика шума: docs/planning/memory-audit-2026-08-29.md «пишется-но-не-читается» —
|
|
7
|
+
* объект шум, если нет ни одной связи (relations) и ни одного события в event-log
|
|
8
|
+
* кроме memory.added; memory.scan.updated = подтверждение актуальности сканом =
|
|
9
|
+
* использование. Объекты document-ref — функциональный «индекс документов»
|
|
10
|
+
* (использование = регистрация/обновление сканом), исключены из метрики шума
|
|
11
|
+
* и показываются отдельной строкой documents (калибровка 2026-08-30).
|
|
12
|
+
* Объекты со статусом archived исключены аналогично (из числителя и знаменателя):
|
|
13
|
+
* архивация — легитимный способ снижения шума; показываются строкой archived.
|
|
14
|
+
* Пороги статусов — config learning.effectiveness_thresholds.
|
|
15
|
+
*/
|
|
16
|
+
import type { MemoryStore } from '../../ports/memory-store.port.js';
|
|
17
|
+
import type { EventLog } from '../../ports/event-log.port.js';
|
|
18
|
+
import type { RelationLog } from '../../ports/relation-log.port.js';
|
|
19
|
+
import type { SignalEvent } from '../../adapters/fs/session-metrics-log.js';
|
|
20
|
+
import type { EconomyResult } from '../../domain/tool-economy.js';
|
|
21
|
+
/** Пороги статусов панели (проценты). */
|
|
22
|
+
export interface EffectivenessThresholds {
|
|
23
|
+
noiseOk: number;
|
|
24
|
+
noiseWarn: number;
|
|
25
|
+
silentOk: number;
|
|
26
|
+
}
|
|
27
|
+
export declare const DEFAULT_EFFECTIVENESS_THRESHOLDS: EffectivenessThresholds;
|
|
28
|
+
export type BlockStatus = 'OK' | 'WARN' | 'BAD' | 'NO_DATA';
|
|
29
|
+
/** Шум: null → NO_DATA; <noiseOk → OK; <=noiseWarn → WARN; иначе BAD. */
|
|
30
|
+
export declare function classifyNoise(share: number | null, t: EffectivenessThresholds): BlockStatus;
|
|
31
|
+
/** Молчащие правила: null → NO_DATA; <silentOk → OK; иначе BAD. */
|
|
32
|
+
export declare function classifySilent(share: number | null, t: EffectivenessThresholds): BlockStatus;
|
|
33
|
+
/** Override из config поверх дефолтов (E1.2); битые/чужие поля отбрасываются схемой. */
|
|
34
|
+
export declare function resolveThresholds(override?: Partial<EffectivenessThresholds>): EffectivenessThresholds;
|
|
35
|
+
export interface EffectivenessReport {
|
|
36
|
+
/** Блок 1: правила (информативный). prevented/checked — null при отсутствии holdout-данных (Ф22). */
|
|
37
|
+
rules: {
|
|
38
|
+
activeRules: number;
|
|
39
|
+
prevented: number | null;
|
|
40
|
+
checked: number | null;
|
|
41
|
+
};
|
|
42
|
+
/** Блок 2: инструменты (информационный). */
|
|
43
|
+
tools: {
|
|
44
|
+
toolCount: number;
|
|
45
|
+
totalUsage: number;
|
|
46
|
+
economy: EconomyResult;
|
|
47
|
+
};
|
|
48
|
+
/** Блок 3: доставка→срабатывание. */
|
|
49
|
+
delivery: {
|
|
50
|
+
deliveryEvents: number;
|
|
51
|
+
triggeredObjects: number;
|
|
52
|
+
activeRules: number;
|
|
53
|
+
silentRules: number;
|
|
54
|
+
/** false — окно молчания ещё не набралось (мало пробега), silentShare = null. */
|
|
55
|
+
enoughDeliveryData: boolean;
|
|
56
|
+
/** null — мало delivery-данных (окно silentRuleIds) или нет активных правил. */
|
|
57
|
+
silentShare: number | null;
|
|
58
|
+
};
|
|
59
|
+
/** Блок 4: шум памяти («пишется-но-не-читается»); documents — document-ref, исключённые из метрики; archived — вне метрики (строка панели). */
|
|
60
|
+
noise: {
|
|
61
|
+
totalObjects: number;
|
|
62
|
+
writeOnly: number;
|
|
63
|
+
share: number | null;
|
|
64
|
+
documents: number;
|
|
65
|
+
archived: number;
|
|
66
|
+
};
|
|
67
|
+
noiseStatus: BlockStatus;
|
|
68
|
+
silentStatus: BlockStatus;
|
|
69
|
+
/** Блок 5: роутинг по моделям (информационный); сортировка по tasks убыв. */
|
|
70
|
+
routing: Array<{
|
|
71
|
+
model: string;
|
|
72
|
+
tasks: number;
|
|
73
|
+
medianWeighted: number | null;
|
|
74
|
+
}>;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Пять блоков отчёта из одних портов: чистая агрегация, детерминированная.
|
|
78
|
+
* Не падает на пустой памяти — все блоки возвращают нули/null.
|
|
79
|
+
*/
|
|
80
|
+
export declare function buildEffectivenessReport(deps: {
|
|
81
|
+
store: MemoryStore;
|
|
82
|
+
log: EventLog;
|
|
83
|
+
relations: RelationLog;
|
|
84
|
+
}, input: {
|
|
85
|
+
signals: SignalEvent[];
|
|
86
|
+
runLogText: string | null;
|
|
87
|
+
thresholds: EffectivenessThresholds;
|
|
88
|
+
}): Promise<EffectivenessReport>;
|
|
89
|
+
//# sourceMappingURL=effectiveness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effectiveness.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/effectiveness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAUlE,yCAAyC;AACzC,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,gCAAgC,EAAE,uBAI9C,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAE5D,yEAAyE;AACzE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC,EAAE,uBAAuB,GAAG,WAAW,CAI3F;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC,EAAE,uBAAuB,GAAG,WAAW,CAG5F;AAED,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAEtG;AAED,MAAM,WAAW,mBAAmB;IAClC,qGAAqG;IACrG,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACjF,4CAA4C;IAC5C,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,aAAa,CAAA;KAAE,CAAC;IACzE,qCAAqC;IACrC,QAAQ,EAAE;QACR,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,iFAAiF;QACjF,kBAAkB,EAAE,OAAO,CAAC;QAC5B,gFAAgF;QAChF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC;IACF,+IAA+I;IAC/I,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9G,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,WAAW,CAAC;IAC1B,6EAA6E;IAC7E,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;CACjF;AAMD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,WAAW,CAAA;CAAE,EACnE,KAAK,EAAE;IAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,uBAAuB,CAAA;CAAE,GAChG,OAAO,CAAC,mBAAmB,CAAC,CAkG9B"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { median, parseRunLog } from '../../domain/tool-economy.js';
|
|
2
|
+
import { toolStats } from './tool-stats.js';
|
|
3
|
+
import { countSessions, silentRuleIds, SILENT_RULE_MIN_DELIVERIES, SILENT_RULE_WINDOW_SESSIONS, } from './learn-decay.js';
|
|
4
|
+
export const DEFAULT_EFFECTIVENESS_THRESHOLDS = {
|
|
5
|
+
noiseOk: 20,
|
|
6
|
+
noiseWarn: 40,
|
|
7
|
+
silentOk: 30,
|
|
8
|
+
};
|
|
9
|
+
/** Шум: null → NO_DATA; <noiseOk → OK; <=noiseWarn → WARN; иначе BAD. */
|
|
10
|
+
export function classifyNoise(share, t) {
|
|
11
|
+
if (share === null)
|
|
12
|
+
return 'NO_DATA';
|
|
13
|
+
if (share < t.noiseOk)
|
|
14
|
+
return 'OK';
|
|
15
|
+
return share <= t.noiseWarn ? 'WARN' : 'BAD';
|
|
16
|
+
}
|
|
17
|
+
/** Молчащие правила: null → NO_DATA; <silentOk → OK; иначе BAD. */
|
|
18
|
+
export function classifySilent(share, t) {
|
|
19
|
+
if (share === null)
|
|
20
|
+
return 'NO_DATA';
|
|
21
|
+
return share < t.silentOk ? 'OK' : 'BAD';
|
|
22
|
+
}
|
|
23
|
+
/** Override из config поверх дефолтов (E1.2); битые/чужие поля отбрасываются схемой. */
|
|
24
|
+
export function resolveThresholds(override) {
|
|
25
|
+
return { ...DEFAULT_EFFECTIVENESS_THRESHOLDS, ...override };
|
|
26
|
+
}
|
|
27
|
+
function finiteNumber(value) {
|
|
28
|
+
return typeof value === 'number' && Number.isFinite(value) ? value : null;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Пять блоков отчёта из одних портов: чистая агрегация, детерминированная.
|
|
32
|
+
* Не падает на пустой памяти — все блоки возвращают нули/null.
|
|
33
|
+
*/
|
|
34
|
+
export async function buildEffectivenessReport(deps, input) {
|
|
35
|
+
// Блок 1 «Правила»: активные + суммы holdout-полей Ф22 по rule/lesson (все статусы)
|
|
36
|
+
const activeRuleObjects = await deps.store.list({ type: 'rule', status: 'active' });
|
|
37
|
+
const activeRules = activeRuleObjects.length;
|
|
38
|
+
let prevented = 0;
|
|
39
|
+
let checked = 0;
|
|
40
|
+
let hasHoldoutData = false;
|
|
41
|
+
for (const type of ['rule', 'lesson']) {
|
|
42
|
+
for (const o of await deps.store.list({ type })) {
|
|
43
|
+
const rec = o;
|
|
44
|
+
const p = finiteNumber(rec.holdout_prevented);
|
|
45
|
+
const c = finiteNumber(rec.holdout_checked);
|
|
46
|
+
if (p !== null || c !== null)
|
|
47
|
+
hasHoldoutData = true;
|
|
48
|
+
prevented += p ?? 0;
|
|
49
|
+
checked += c ?? 0;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
// Блок 2 «Инструменты»: реестр + экономика (переиспользуем toolStats, включая
|
|
53
|
+
// honest-fallback при runLogText === null)
|
|
54
|
+
const { tools: toolRows, economy } = await toolStats({ store: deps.store }, { runLogText: input.runLogText });
|
|
55
|
+
// Блок 3 «Доставка→срабатывание»: сигнальный лог + окно молчания из learn-decay
|
|
56
|
+
const deliveries = input.signals.filter((s) => s.event === 'delivery');
|
|
57
|
+
const triggered = new Set();
|
|
58
|
+
for (const ev of deliveries) {
|
|
59
|
+
if (typeof ev.detail?.name === 'string')
|
|
60
|
+
triggered.add(ev.detail.name);
|
|
61
|
+
}
|
|
62
|
+
const silent = silentRuleIds(input.signals);
|
|
63
|
+
// то же пре-условие, что внутри silentRuleIds (ранний выход при малом пробеге):
|
|
64
|
+
// count=0 в этом случае — «не знаем», а не «нет молчащих»
|
|
65
|
+
const sessions = countSessions(input.signals).length;
|
|
66
|
+
const enoughDeliveryData = deliveries.length >= SILENT_RULE_MIN_DELIVERIES && sessions > SILENT_RULE_WINDOW_SESSIONS;
|
|
67
|
+
// silentRuleIds возвращает ВСЕ молчащие delivery-имена (любой тип — call-injection,
|
|
68
|
+
// lesson и т.д.); делим только на правила и считаем только правила (прецедент:
|
|
69
|
+
// runDecayPass фильтрует по active rules) — иначе доля могла бы превысить 100%
|
|
70
|
+
const activeRuleIds = new Set(activeRuleObjects.map((o) => o.id));
|
|
71
|
+
const silentRules = [...silent.ids].filter((id) => activeRuleIds.has(id)).length;
|
|
72
|
+
const silentShare = enoughDeliveryData && activeRules > 0 ? (silentRules / activeRules) * 100 : null;
|
|
73
|
+
// Блок 4 «Шум памяти»: нет связей И нет событий кроме memory.added (event-log).
|
|
74
|
+
// document-ref — функциональный «индекс документов» (использование = регистрация/
|
|
75
|
+
// обновление сканом), из метрики шума исключён и из числителя, и из знаменателя
|
|
76
|
+
// (калибровка 2026-08-30); показывается отдельной строкой documents.
|
|
77
|
+
// archived — вне метрики и из числителя, и из знаменателя: архивация —
|
|
78
|
+
// легитимный способ снижения шума (иначе transition, помечающий объект
|
|
79
|
+
// «использованным», почти не улучшал метрику); показывается строкой archived.
|
|
80
|
+
// memory.scan.updated = подтверждение актуальности = использование: readIds-фильтр
|
|
81
|
+
// («любое событие кроме memory.added») засчитывает scan-события автоматически.
|
|
82
|
+
const allObjects = await deps.store.list();
|
|
83
|
+
const documents = allObjects.filter((o) => o.type === 'document-ref').length;
|
|
84
|
+
const archived = allObjects.filter((o) => o.status === 'archived').length;
|
|
85
|
+
const noiseBase = allObjects.filter((o) => o.type !== 'document-ref' && o.status !== 'archived');
|
|
86
|
+
const linked = new Set();
|
|
87
|
+
for (const r of await deps.relations.list()) {
|
|
88
|
+
linked.add(r.subject);
|
|
89
|
+
linked.add(r.object);
|
|
90
|
+
}
|
|
91
|
+
const readIds = new Set();
|
|
92
|
+
for (const ev of await deps.log.readAll()) {
|
|
93
|
+
if (ev.type === 'memory.added')
|
|
94
|
+
continue;
|
|
95
|
+
const mid = ev.payload?.memory_id;
|
|
96
|
+
if (typeof mid === 'string')
|
|
97
|
+
readIds.add(mid);
|
|
98
|
+
}
|
|
99
|
+
const writeOnly = noiseBase.filter((o) => !linked.has(o.id) && !readIds.has(o.id)).length;
|
|
100
|
+
const noiseShare = noiseBase.length > 0 ? (writeOnly / noiseBase.length) * 100 : null;
|
|
101
|
+
// Блок 5 «Роутинг»: группировка run-log по model, медиана weighted (медианы переиспользуем)
|
|
102
|
+
const weightedByModel = new Map();
|
|
103
|
+
for (const entry of parseRunLog(input.runLogText ?? '')) {
|
|
104
|
+
const w = finiteNumber(entry.weighted);
|
|
105
|
+
if (w === null)
|
|
106
|
+
continue;
|
|
107
|
+
const model = typeof entry.model === 'string' && entry.model !== '' ? entry.model : 'unknown';
|
|
108
|
+
const arr = weightedByModel.get(model) ?? [];
|
|
109
|
+
arr.push(w);
|
|
110
|
+
weightedByModel.set(model, arr);
|
|
111
|
+
}
|
|
112
|
+
const routing = [...weightedByModel.entries()]
|
|
113
|
+
.map(([model, values]) => ({ model, tasks: values.length, medianWeighted: median(values) }))
|
|
114
|
+
.sort((a, b) => b.tasks - a.tasks || a.model.localeCompare(b.model));
|
|
115
|
+
const noise = { totalObjects: noiseBase.length, writeOnly, share: noiseShare, documents, archived };
|
|
116
|
+
return {
|
|
117
|
+
rules: { activeRules, prevented: hasHoldoutData ? prevented : null, checked: hasHoldoutData ? checked : null },
|
|
118
|
+
tools: { toolCount: toolRows.length, totalUsage: toolRows.reduce((sum, r) => sum + r.usage_count, 0), economy },
|
|
119
|
+
delivery: {
|
|
120
|
+
deliveryEvents: deliveries.length,
|
|
121
|
+
triggeredObjects: triggered.size,
|
|
122
|
+
activeRules,
|
|
123
|
+
silentRules,
|
|
124
|
+
enoughDeliveryData,
|
|
125
|
+
silentShare,
|
|
126
|
+
},
|
|
127
|
+
noise,
|
|
128
|
+
noiseStatus: classifyNoise(noiseShare, input.thresholds),
|
|
129
|
+
silentStatus: classifySilent(silentShare, input.thresholds),
|
|
130
|
+
routing,
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=effectiveness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effectiveness.js","sourceRoot":"","sources":["../../../src/app/use-cases/effectiveness.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { MemoryStore } from '../../ports/memory-store.port.js';
|
|
2
|
+
import { FileSystem } from '../../ports/file-system.port.js';
|
|
3
|
+
import { Clock } from '../../ports/clock.port.js';
|
|
4
|
+
import { ProjectSnapshot } from '../../domain/schemas/project-scan-schema.js';
|
|
5
|
+
export interface GenerateAgentBriefResult {
|
|
6
|
+
content: string;
|
|
7
|
+
path: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function generateAgentBrief(deps: {
|
|
10
|
+
store: MemoryStore;
|
|
11
|
+
fs: FileSystem;
|
|
12
|
+
clock: Clock;
|
|
13
|
+
}, root: string, snapshot: ProjectSnapshot): Promise<GenerateAgentBriefResult>;
|
|
14
|
+
//# sourceMappingURL=generate-agent-brief.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-agent-brief.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/generate-agent-brief.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAI9E,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,EAAE,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,EAC1D,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,wBAAwB,CAAC,CA+BnC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { join } from 'path';
|
|
2
|
+
import { briefsDir } from '../../adapters/fs/project-paths.js';
|
|
3
|
+
export async function generateAgentBrief(deps, root, snapshot) {
|
|
4
|
+
const memoryObjects = await deps.store.list();
|
|
5
|
+
const acceptedMemory = memoryObjects
|
|
6
|
+
.filter((obj) => obj.review_state === 'accepted' &&
|
|
7
|
+
obj.status === 'active' &&
|
|
8
|
+
obj.type !== 'context' &&
|
|
9
|
+
obj.type !== 'open-question' &&
|
|
10
|
+
obj.type !== 'blocker')
|
|
11
|
+
.sort((a, b) => b.updated_at.localeCompare(a.updated_at))
|
|
12
|
+
.slice(0, 10);
|
|
13
|
+
// Вопросы живут в 'open' (defaultStatus) или 'active' (созданные до введения defaultStatus)
|
|
14
|
+
const openQuestions = memoryObjects
|
|
15
|
+
.filter((obj) => obj.type === 'open-question' && (obj.status === 'open' || obj.status === 'active'))
|
|
16
|
+
.sort((a, b) => b.updated_at.localeCompare(a.updated_at));
|
|
17
|
+
const blockers = memoryObjects
|
|
18
|
+
.filter((obj) => obj.type === 'blocker' && obj.status === 'active')
|
|
19
|
+
.sort((a, b) => b.updated_at.localeCompare(a.updated_at));
|
|
20
|
+
const description = await buildProjectDescription(deps.fs, root, snapshot);
|
|
21
|
+
const content = renderBrief(deps.clock, snapshot, description, acceptedMemory, openQuestions, blockers);
|
|
22
|
+
const briefPath = join(briefsDir(root), 'agent-brief-latest.md');
|
|
23
|
+
await deps.fs.writeFile(briefPath, content);
|
|
24
|
+
return { content, path: briefPath };
|
|
25
|
+
}
|
|
26
|
+
async function buildProjectDescription(fsPort, root, snapshot) {
|
|
27
|
+
const readme = await fsPort.readSmallTextFile(join(root, 'README.md'));
|
|
28
|
+
if (readme) {
|
|
29
|
+
const paragraphs = readme
|
|
30
|
+
.split(/\n\n+/)
|
|
31
|
+
.map((p) => p
|
|
32
|
+
.trim()
|
|
33
|
+
.replace(/^#+\s*/, '')
|
|
34
|
+
.replace(/!\[([^\]]*)\]\([^)]+\)/g, '')
|
|
35
|
+
.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1')
|
|
36
|
+
.trim())
|
|
37
|
+
.filter((p) => p.length > 0);
|
|
38
|
+
const first = paragraphs.slice(0, 2).join('\n\n');
|
|
39
|
+
if (first.length > 20)
|
|
40
|
+
return first;
|
|
41
|
+
}
|
|
42
|
+
if (snapshot.summary.dependencies.length > 0) {
|
|
43
|
+
return `${snapshot.projectName} is a project built with ${snapshot.summary.languages.join(', ')} and key dependencies including ${snapshot.summary.dependencies.slice(0, 5).join(', ')}.`;
|
|
44
|
+
}
|
|
45
|
+
return `${snapshot.projectName} is a software project.`;
|
|
46
|
+
}
|
|
47
|
+
function renderListSection(title, items, emptyMessage, formatItem) {
|
|
48
|
+
const section = [`## ${title}`];
|
|
49
|
+
for (const obj of items) {
|
|
50
|
+
section.push(formatItem(obj));
|
|
51
|
+
if (obj.body) {
|
|
52
|
+
section.push(` ${obj.body.split('\n')[0].slice(0, 120)}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (items.length === 0)
|
|
56
|
+
section.push(emptyMessage);
|
|
57
|
+
section.push('');
|
|
58
|
+
return section;
|
|
59
|
+
}
|
|
60
|
+
function renderBrief(clock, snapshot, description, activeMemory, openQuestions, blockers) {
|
|
61
|
+
const lines = [
|
|
62
|
+
`# Agent Brief: ${snapshot.projectName}`,
|
|
63
|
+
'',
|
|
64
|
+
'## Project Snapshot',
|
|
65
|
+
`- Root: ${snapshot.root}`,
|
|
66
|
+
`- Project name: ${snapshot.projectName}`,
|
|
67
|
+
];
|
|
68
|
+
if (snapshot.branch)
|
|
69
|
+
lines.push(`- Branch: ${snapshot.branch}`);
|
|
70
|
+
if (snapshot.commit)
|
|
71
|
+
lines.push(`- Commit: ${snapshot.commit}`);
|
|
72
|
+
lines.push(`- Generated: ${clock.now().toISOString()}`, '');
|
|
73
|
+
lines.push('## What This Project Is', description, '');
|
|
74
|
+
lines.push('## Technology Stack', `- Languages: ${snapshot.summary.languages.join(', ') || 'none'}`, `- Key dependencies: ${snapshot.summary.dependencies.slice(0, 10).join(', ') || 'none'}`, '');
|
|
75
|
+
lines.push('## Key Files & Entry Points', ...snapshot.summary.entryPoints.map((ep) => `- ${ep}`), ...snapshot.summary.configFiles.map((cf) => `- ${cf} (config)`), '');
|
|
76
|
+
lines.push('## Architecture Notes', renderArchitectureNotes(snapshot), '');
|
|
77
|
+
lines.push(...renderListSection('Active Memory', activeMemory, '_No active accepted memory._', (obj) => `- [${obj.type}] ${obj.title}`));
|
|
78
|
+
lines.push(...renderListSection('Open Questions', openQuestions, '_No open questions._', (q) => `- ${q.title}`));
|
|
79
|
+
lines.push(...renderListSection('Blockers', blockers, '_No active blockers._', (b) => `- ${b.title}`));
|
|
80
|
+
lines.push('## Sources', '- Project scan: project-scan-latest', '- README.md', '- package.json', `- Active memory objects: ${activeMemory.length}`, '');
|
|
81
|
+
lines.push('## Limitations', '- This brief is generated from the latest scan and accepted active memory.', '- It may be incomplete if the scan is outdated or memory has not been reviewed.', '');
|
|
82
|
+
lines.push('## Recommended First Steps', '- Review the active memory and open questions below.', '- Read project documentation (README.md, docs/concept-v3.md, AGENTS.md).', '- Run the project checks (`npm run check` or equivalent).', '');
|
|
83
|
+
return lines.join('\n');
|
|
84
|
+
}
|
|
85
|
+
function renderArchitectureNotes(snapshot) {
|
|
86
|
+
const dirs = snapshot.summary.topLevelDirectories;
|
|
87
|
+
const notes = [];
|
|
88
|
+
if (dirs.includes('src')) {
|
|
89
|
+
const hasPorts = snapshot.files.some((f) => f.path.includes('/ports/'));
|
|
90
|
+
const hasAdapters = snapshot.files.some((f) => f.path.includes('/adapters/'));
|
|
91
|
+
if (hasPorts && hasAdapters) {
|
|
92
|
+
notes.push('Project appears to use a ports-and-adapters (hexagonal) architecture.');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
if (notes.length === 0) {
|
|
96
|
+
notes.push('No strong architecture signals detected from directory layout.');
|
|
97
|
+
}
|
|
98
|
+
return notes.join(' ');
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=generate-agent-brief.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-agent-brief.js","sourceRoot":"","sources":["../../../src/app/use-cases/generate-agent-brief.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { MemoryStore } from '../../ports/memory-store.port.js';
|
|
2
|
+
import { Clock } from '../../ports/clock.port.js';
|
|
3
|
+
import { MemoryObject } from '../../domain/schemas/memory-object-schema.js';
|
|
4
|
+
export type AnalysisType = 'patterns' | 'technical_debt' | 'decisions' | 'lessons' | 'activity';
|
|
5
|
+
export declare const ANALYSIS_TYPES: readonly AnalysisType[];
|
|
6
|
+
export declare const INSIGHTS_STALE_DAYS = 30;
|
|
7
|
+
export declare const DEBUG_TAGS: readonly string[];
|
|
8
|
+
export interface SignalKeyCount {
|
|
9
|
+
key: string;
|
|
10
|
+
count: number;
|
|
11
|
+
}
|
|
12
|
+
/** Сводка сигнального лога Ф20; готовит вызывающий слой (CLI), use-case только passthrough+render. */
|
|
13
|
+
export interface SignalLogSummary {
|
|
14
|
+
totalEvents: number;
|
|
15
|
+
topKeys: SignalKeyCount[];
|
|
16
|
+
}
|
|
17
|
+
export interface InsightsInput {
|
|
18
|
+
topic?: string;
|
|
19
|
+
analysisType?: AnalysisType;
|
|
20
|
+
signalLog?: SignalLogSummary;
|
|
21
|
+
}
|
|
22
|
+
export interface TagCount {
|
|
23
|
+
tag: string;
|
|
24
|
+
count: number;
|
|
25
|
+
}
|
|
26
|
+
export interface FileCount {
|
|
27
|
+
file: string;
|
|
28
|
+
count: number;
|
|
29
|
+
}
|
|
30
|
+
export interface WeekBucket {
|
|
31
|
+
week: string;
|
|
32
|
+
decisions: number;
|
|
33
|
+
lessons: number;
|
|
34
|
+
debug: number;
|
|
35
|
+
total: number;
|
|
36
|
+
}
|
|
37
|
+
export interface InsightsReport {
|
|
38
|
+
topic: string | null;
|
|
39
|
+
analysisType: AnalysisType;
|
|
40
|
+
generatedAt: string;
|
|
41
|
+
scope: {
|
|
42
|
+
total: number;
|
|
43
|
+
matched: number;
|
|
44
|
+
};
|
|
45
|
+
topTags: TagCount[];
|
|
46
|
+
topFiles: FileCount[];
|
|
47
|
+
typeDistribution: TagCount[];
|
|
48
|
+
stale: MemoryObject[];
|
|
49
|
+
supersededDecisions: MemoryObject[];
|
|
50
|
+
conflicts: {
|
|
51
|
+
statusConflicting: MemoryObject[];
|
|
52
|
+
candidates: MemoryObject[][];
|
|
53
|
+
};
|
|
54
|
+
lowConfidenceActive: MemoryObject[];
|
|
55
|
+
openBlockers: MemoryObject[];
|
|
56
|
+
decisionsByStatus: Record<string, MemoryObject[]>;
|
|
57
|
+
lessonsTopTags: TagCount[];
|
|
58
|
+
density: WeekBucket[];
|
|
59
|
+
statusTally: TagCount[];
|
|
60
|
+
truthRoleTally: TagCount[];
|
|
61
|
+
signalLog?: SignalLogSummary;
|
|
62
|
+
}
|
|
63
|
+
export declare function generateInsights(deps: {
|
|
64
|
+
store: MemoryStore;
|
|
65
|
+
clock: Clock;
|
|
66
|
+
}, input?: InsightsInput): Promise<InsightsReport>;
|
|
67
|
+
export declare function renderInsights(report: InsightsReport): string;
|
|
68
|
+
//# sourceMappingURL=generate-insights.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-insights.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/generate-insights.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAE5E,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AAEhG,eAAO,MAAM,cAAc,EAAE,SAAS,YAAY,EAMjD,CAAC;AAEF,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EAAyD,CAAC;AAGlG,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,gBAAgB,EAAE,QAAQ,EAAE,CAAC;IAC7B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,mBAAmB,EAAE,YAAY,EAAE,CAAC;IACpC,SAAS,EAAE;QAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC;QAAC,UAAU,EAAE,YAAY,EAAE,EAAE,CAAA;KAAE,CAAC;IAC/E,mBAAmB,EAAE,YAAY,EAAE,CAAC;IACpC,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAClD,cAAc,EAAE,QAAQ,EAAE,CAAC;IAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,cAAc,EAAE,QAAQ,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AA2BD,wBAAsB,gBAAgB,CACpC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,EAC1C,KAAK,GAAE,aAAkB,GACxB,OAAO,CAAC,cAAc,CAAC,CA0GzB;AAWD,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAiG7D"}
|