ai-prompt-guide-mcp 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 +271 -0
- package/dist/__tests__/config-loading.test.d.ts +5 -0
- package/dist/__tests__/config-loading.test.d.ts.map +1 -0
- package/dist/__tests__/config-loading.test.js +127 -0
- package/dist/__tests__/config-loading.test.js.map +1 -0
- package/dist/__tests__/config-logging.test.d.ts +5 -0
- package/dist/__tests__/config-logging.test.d.ts.map +1 -0
- package/dist/__tests__/config-logging.test.js +146 -0
- package/dist/__tests__/config-logging.test.js.map +1 -0
- package/dist/__tests__/config-path-resolution.test.d.ts +5 -0
- package/dist/__tests__/config-path-resolution.test.d.ts.map +1 -0
- package/dist/__tests__/config-path-resolution.test.js +88 -0
- package/dist/__tests__/config-path-resolution.test.js.map +1 -0
- package/dist/__tests__/config-path-validation.test.d.ts +6 -0
- package/dist/__tests__/config-path-validation.test.d.ts.map +1 -0
- package/dist/__tests__/config-path-validation.test.js +203 -0
- package/dist/__tests__/config-path-validation.test.js.map +1 -0
- package/dist/__tests__/config-precedence.test.d.ts +5 -0
- package/dist/__tests__/config-precedence.test.d.ts.map +1 -0
- package/dist/__tests__/config-precedence.test.js +200 -0
- package/dist/__tests__/config-precedence.test.js.map +1 -0
- package/dist/__tests__/config-types.test.d.ts +5 -0
- package/dist/__tests__/config-types.test.d.ts.map +1 -0
- package/dist/__tests__/config-types.test.js +189 -0
- package/dist/__tests__/config-types.test.js.map +1 -0
- package/dist/__tests__/config.test.d.ts +5 -0
- package/dist/__tests__/config.test.d.ts.map +1 -0
- package/dist/__tests__/config.test.js +229 -0
- package/dist/__tests__/config.test.js.map +1 -0
- package/dist/config.d.ts +87 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +498 -0
- package/dist/config.js.map +1 -0
- package/dist/constants/defaults.d.ts +78 -0
- package/dist/constants/defaults.d.ts.map +1 -0
- package/dist/constants/defaults.js +78 -0
- package/dist/constants/defaults.js.map +1 -0
- package/dist/document-cache.d.ts +485 -0
- package/dist/document-cache.d.ts.map +1 -0
- package/dist/document-cache.hierarchical.test.d.ts +2 -0
- package/dist/document-cache.hierarchical.test.d.ts.map +1 -0
- package/dist/document-cache.hierarchical.test.js +243 -0
- package/dist/document-cache.hierarchical.test.js.map +1 -0
- package/dist/document-cache.js +965 -0
- package/dist/document-cache.js.map +1 -0
- package/dist/document-cache.test.d.ts +8 -0
- package/dist/document-cache.test.d.ts.map +1 -0
- package/dist/document-cache.test.js +624 -0
- package/dist/document-cache.test.js.map +1 -0
- package/dist/document-manager.d.ts +252 -0
- package/dist/document-manager.d.ts.map +1 -0
- package/dist/document-manager.js +760 -0
- package/dist/document-manager.js.map +1 -0
- package/dist/document-manager.race-condition.test.d.ts +8 -0
- package/dist/document-manager.race-condition.test.d.ts.map +1 -0
- package/dist/document-manager.race-condition.test.js +139 -0
- package/dist/document-manager.race-condition.test.js.map +1 -0
- package/dist/fingerprint-index.d.ts +177 -0
- package/dist/fingerprint-index.d.ts.map +1 -0
- package/dist/fingerprint-index.js +374 -0
- package/dist/fingerprint-index.js.map +1 -0
- package/dist/fingerprint-index.test.d.ts +15 -0
- package/dist/fingerprint-index.test.d.ts.map +1 -0
- package/dist/fingerprint-index.test.js +482 -0
- package/dist/fingerprint-index.test.js.map +1 -0
- package/dist/fsio.d.ts +76 -0
- package/dist/fsio.d.ts.map +1 -0
- package/dist/fsio.js +506 -0
- package/dist/fsio.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/markdown-tools.test.d.ts +5 -0
- package/dist/markdown-tools.test.d.ts.map +1 -0
- package/dist/markdown-tools.test.js +200 -0
- package/dist/markdown-tools.test.js.map +1 -0
- package/dist/parse.d.ts +19 -0
- package/dist/parse.d.ts.map +1 -0
- package/dist/parse.js +144 -0
- package/dist/parse.js.map +1 -0
- package/dist/prompts/__tests__/prompt-loader.test.d.ts +5 -0
- package/dist/prompts/__tests__/prompt-loader.test.d.ts.map +1 -0
- package/dist/prompts/__tests__/prompt-loader.test.js +300 -0
- package/dist/prompts/__tests__/prompt-loader.test.js.map +1 -0
- package/dist/prompts/prompt-loader.d.ts +58 -0
- package/dist/prompts/prompt-loader.d.ts.map +1 -0
- package/dist/prompts/prompt-loader.js +215 -0
- package/dist/prompts/prompt-loader.js.map +1 -0
- package/dist/prompts/prompt-validator.d.ts +30 -0
- package/dist/prompts/prompt-validator.d.ts.map +1 -0
- package/dist/prompts/prompt-validator.js +65 -0
- package/dist/prompts/prompt-validator.js.map +1 -0
- package/dist/prompts/types.d.ts +46 -0
- package/dist/prompts/types.d.ts.map +1 -0
- package/dist/prompts/types.js +14 -0
- package/dist/prompts/types.js.map +1 -0
- package/dist/prompts/workflow-prompts.d.ts +42 -0
- package/dist/prompts/workflow-prompts.d.ts.map +1 -0
- package/dist/prompts/workflow-prompts.js +61 -0
- package/dist/prompts/workflow-prompts.js.map +1 -0
- package/dist/sections.d.ts +67 -0
- package/dist/sections.d.ts.map +1 -0
- package/dist/sections.hierarchical.test.d.ts +8 -0
- package/dist/sections.hierarchical.test.d.ts.map +1 -0
- package/dist/sections.hierarchical.test.js +397 -0
- package/dist/sections.hierarchical.test.js.map +1 -0
- package/dist/sections.js +1229 -0
- package/dist/sections.js.map +1 -0
- package/dist/server/default-dependencies.d.ts +134 -0
- package/dist/server/default-dependencies.d.ts.map +1 -0
- package/dist/server/default-dependencies.js +176 -0
- package/dist/server/default-dependencies.js.map +1 -0
- package/dist/server/dependencies.d.ts +161 -0
- package/dist/server/dependencies.d.ts.map +1 -0
- package/dist/server/dependencies.js +50 -0
- package/dist/server/dependencies.js.map +1 -0
- package/dist/server/index.d.ts +10 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +9 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/middleware/error-handling.d.ts +52 -0
- package/dist/server/middleware/error-handling.d.ts.map +1 -0
- package/dist/server/middleware/error-handling.js +76 -0
- package/dist/server/middleware/error-handling.js.map +1 -0
- package/dist/server/middleware/index.d.ts +7 -0
- package/dist/server/middleware/index.d.ts.map +1 -0
- package/dist/server/middleware/index.js +7 -0
- package/dist/server/middleware/index.js.map +1 -0
- package/dist/server/middleware/logging.d.ts +29 -0
- package/dist/server/middleware/logging.d.ts.map +1 -0
- package/dist/server/middleware/logging.js +49 -0
- package/dist/server/middleware/logging.js.map +1 -0
- package/dist/server/middleware/session-management.d.ts +38 -0
- package/dist/server/middleware/session-management.d.ts.map +1 -0
- package/dist/server/middleware/session-management.js +66 -0
- package/dist/server/middleware/session-management.js.map +1 -0
- package/dist/server/request-handlers/index.d.ts +5 -0
- package/dist/server/request-handlers/index.d.ts.map +1 -0
- package/dist/server/request-handlers/index.js +5 -0
- package/dist/server/request-handlers/index.js.map +1 -0
- package/dist/server/request-handlers/prompt-handlers.d.ts +13 -0
- package/dist/server/request-handlers/prompt-handlers.d.ts.map +1 -0
- package/dist/server/request-handlers/prompt-handlers.js +80 -0
- package/dist/server/request-handlers/prompt-handlers.js.map +1 -0
- package/dist/server/request-handlers/tool-handlers.d.ts +11 -0
- package/dist/server/request-handlers/tool-handlers.d.ts.map +1 -0
- package/dist/server/request-handlers/tool-handlers.js +85 -0
- package/dist/server/request-handlers/tool-handlers.js.map +1 -0
- package/dist/server/server-factory.d.ts +68 -0
- package/dist/server/server-factory.d.ts.map +1 -0
- package/dist/server/server-factory.js +135 -0
- package/dist/server/server-factory.js.map +1 -0
- package/dist/server/transport/stdio-transport.d.ts +9 -0
- package/dist/server/transport/stdio-transport.d.ts.map +1 -0
- package/dist/server/transport/stdio-transport.js +11 -0
- package/dist/server/transport/stdio-transport.js.map +1 -0
- package/dist/session/index.d.ts +5 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +7 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/session-store.d.ts +74 -0
- package/dist/session/session-store.d.ts.map +1 -0
- package/dist/session/session-store.js +150 -0
- package/dist/session/session-store.js.map +1 -0
- package/dist/session/types.d.ts +96 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +9 -0
- package/dist/session/types.js.map +1 -0
- package/dist/shared/__tests__/addressing-system.batch-cache.test.d.ts +12 -0
- package/dist/shared/__tests__/addressing-system.batch-cache.test.d.ts.map +1 -0
- package/dist/shared/__tests__/addressing-system.batch-cache.test.js +306 -0
- package/dist/shared/__tests__/addressing-system.batch-cache.test.js.map +1 -0
- package/dist/shared/__tests__/addressing-system.hierarchical.test.d.ts +6 -0
- package/dist/shared/__tests__/addressing-system.hierarchical.test.d.ts.map +1 -0
- package/dist/shared/__tests__/addressing-system.hierarchical.test.js +205 -0
- package/dist/shared/__tests__/addressing-system.hierarchical.test.js.map +1 -0
- package/dist/shared/__tests__/addressing-system.lru.test.d.ts +6 -0
- package/dist/shared/__tests__/addressing-system.lru.test.d.ts.map +1 -0
- package/dist/shared/__tests__/addressing-system.lru.test.js +159 -0
- package/dist/shared/__tests__/addressing-system.lru.test.js.map +1 -0
- package/dist/shared/__tests__/addressing-system.relative-paths.test.d.ts +14 -0
- package/dist/shared/__tests__/addressing-system.relative-paths.test.d.ts.map +1 -0
- package/dist/shared/__tests__/addressing-system.relative-paths.test.js +249 -0
- package/dist/shared/__tests__/addressing-system.relative-paths.test.js.map +1 -0
- package/dist/shared/__tests__/document-analysis-enhanced.test.d.ts +9 -0
- package/dist/shared/__tests__/document-analysis-enhanced.test.d.ts.map +1 -0
- package/dist/shared/__tests__/document-analysis-enhanced.test.js +419 -0
- package/dist/shared/__tests__/document-analysis-enhanced.test.js.map +1 -0
- package/dist/shared/__tests__/document-analysis.test.d.ts +8 -0
- package/dist/shared/__tests__/document-analysis.test.d.ts.map +1 -0
- package/dist/shared/__tests__/document-analysis.test.js +904 -0
- package/dist/shared/__tests__/document-analysis.test.js.map +1 -0
- package/dist/shared/__tests__/keyword-utils-integration.test.d.ts +9 -0
- package/dist/shared/__tests__/keyword-utils-integration.test.d.ts.map +1 -0
- package/dist/shared/__tests__/keyword-utils-integration.test.js +317 -0
- package/dist/shared/__tests__/keyword-utils-integration.test.js.map +1 -0
- package/dist/shared/__tests__/link-utils.test.d.ts +5 -0
- package/dist/shared/__tests__/link-utils.test.d.ts.map +1 -0
- package/dist/shared/__tests__/link-utils.test.js +560 -0
- package/dist/shared/__tests__/link-utils.test.js.map +1 -0
- package/dist/shared/__tests__/link-validation.test.d.ts +5 -0
- package/dist/shared/__tests__/link-validation.test.d.ts.map +1 -0
- package/dist/shared/__tests__/link-validation.test.js +473 -0
- package/dist/shared/__tests__/link-validation.test.js.map +1 -0
- package/dist/shared/__tests__/reference-extractor.test.d.ts +8 -0
- package/dist/shared/__tests__/reference-extractor.test.d.ts.map +1 -0
- package/dist/shared/__tests__/reference-extractor.test.js +260 -0
- package/dist/shared/__tests__/reference-extractor.test.js.map +1 -0
- package/dist/shared/__tests__/reference-loader.test.d.ts +8 -0
- package/dist/shared/__tests__/reference-loader.test.d.ts.map +1 -0
- package/dist/shared/__tests__/reference-loader.test.js +622 -0
- package/dist/shared/__tests__/reference-loader.test.js.map +1 -0
- package/dist/shared/__tests__/section-operations.append.test.d.ts +8 -0
- package/dist/shared/__tests__/section-operations.append.test.d.ts.map +1 -0
- package/dist/shared/__tests__/section-operations.append.test.js +150 -0
- package/dist/shared/__tests__/section-operations.append.test.js.map +1 -0
- package/dist/shared/__tests__/section-operations.test.d.ts +7 -0
- package/dist/shared/__tests__/section-operations.test.d.ts.map +1 -0
- package/dist/shared/__tests__/section-operations.test.js +118 -0
- package/dist/shared/__tests__/section-operations.test.js.map +1 -0
- package/dist/shared/__tests__/slug-utils.test.d.ts +5 -0
- package/dist/shared/__tests__/slug-utils.test.d.ts.map +1 -0
- package/dist/shared/__tests__/slug-utils.test.js +542 -0
- package/dist/shared/__tests__/slug-utils.test.js.map +1 -0
- package/dist/shared/__tests__/task-operations.test.d.ts +9 -0
- package/dist/shared/__tests__/task-operations.test.d.ts.map +1 -0
- package/dist/shared/__tests__/task-operations.test.js +257 -0
- package/dist/shared/__tests__/task-operations.test.js.map +1 -0
- package/dist/shared/__tests__/task-validation.test.d.ts +6 -0
- package/dist/shared/__tests__/task-validation.test.d.ts.map +1 -0
- package/dist/shared/__tests__/task-validation.test.js +129 -0
- package/dist/shared/__tests__/task-validation.test.js.map +1 -0
- package/dist/shared/__tests__/task-view-utilities.test.d.ts +5 -0
- package/dist/shared/__tests__/task-view-utilities.test.d.ts.map +1 -0
- package/dist/shared/__tests__/task-view-utilities.test.js +312 -0
- package/dist/shared/__tests__/task-view-utilities.test.js.map +1 -0
- package/dist/shared/__tests__/tool-integration.array-validation.test.d.ts +7 -0
- package/dist/shared/__tests__/tool-integration.array-validation.test.d.ts.map +1 -0
- package/dist/shared/__tests__/tool-integration.array-validation.test.js +169 -0
- package/dist/shared/__tests__/tool-integration.array-validation.test.js.map +1 -0
- package/dist/shared/__tests__/tool-integration.hierarchical.test.d.ts +7 -0
- package/dist/shared/__tests__/tool-integration.hierarchical.test.d.ts.map +1 -0
- package/dist/shared/__tests__/tool-integration.hierarchical.test.js +204 -0
- package/dist/shared/__tests__/tool-integration.hierarchical.test.js.map +1 -0
- package/dist/shared/__tests__/workflow-prompt-utilities.test.d.ts +8 -0
- package/dist/shared/__tests__/workflow-prompt-utilities.test.d.ts.map +1 -0
- package/dist/shared/__tests__/workflow-prompt-utilities.test.js +722 -0
- package/dist/shared/__tests__/workflow-prompt-utilities.test.js.map +1 -0
- package/dist/shared/addressing-system.d.ts +799 -0
- package/dist/shared/addressing-system.d.ts.map +1 -0
- package/dist/shared/addressing-system.js +1074 -0
- package/dist/shared/addressing-system.js.map +1 -0
- package/dist/shared/document-analysis/__tests__/keyword-utils.test.d.ts +8 -0
- package/dist/shared/document-analysis/__tests__/keyword-utils.test.d.ts.map +1 -0
- package/dist/shared/document-analysis/__tests__/keyword-utils.test.js +601 -0
- package/dist/shared/document-analysis/__tests__/keyword-utils.test.js.map +1 -0
- package/dist/shared/document-analysis/index.d.ts +67 -0
- package/dist/shared/document-analysis/index.d.ts.map +1 -0
- package/dist/shared/document-analysis/index.js +166 -0
- package/dist/shared/document-analysis/index.js.map +1 -0
- package/dist/shared/document-analysis/keyword-utils.d.ts +405 -0
- package/dist/shared/document-analysis/keyword-utils.d.ts.map +1 -0
- package/dist/shared/document-analysis/keyword-utils.js +1147 -0
- package/dist/shared/document-analysis/keyword-utils.js.map +1 -0
- package/dist/shared/document-analysis/reference-validation.d.ts +27 -0
- package/dist/shared/document-analysis/reference-validation.d.ts.map +1 -0
- package/dist/shared/document-analysis/reference-validation.js +173 -0
- package/dist/shared/document-analysis/reference-validation.js.map +1 -0
- package/dist/shared/document-analysis/related-docs.d.ts +27 -0
- package/dist/shared/document-analysis/related-docs.d.ts.map +1 -0
- package/dist/shared/document-analysis/related-docs.js +459 -0
- package/dist/shared/document-analysis/related-docs.js.map +1 -0
- package/dist/shared/document-analysis/types.d.ts +89 -0
- package/dist/shared/document-analysis/types.d.ts.map +1 -0
- package/dist/shared/document-analysis/types.js +41 -0
- package/dist/shared/document-analysis/types.js.map +1 -0
- package/dist/shared/document-analysis.d.ts +15 -0
- package/dist/shared/document-analysis.d.ts.map +1 -0
- package/dist/shared/document-analysis.js +16 -0
- package/dist/shared/document-analysis.js.map +1 -0
- package/dist/shared/document-manager-factory.d.ts +32 -0
- package/dist/shared/document-manager-factory.d.ts.map +1 -0
- package/dist/shared/document-manager-factory.js +75 -0
- package/dist/shared/document-manager-factory.js.map +1 -0
- package/dist/shared/index.d.ts +5 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +7 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/link-analysis.d.ts +84 -0
- package/dist/shared/link-analysis.d.ts.map +1 -0
- package/dist/shared/link-analysis.js +213 -0
- package/dist/shared/link-analysis.js.map +1 -0
- package/dist/shared/link-context.d.ts +23 -0
- package/dist/shared/link-context.d.ts.map +1 -0
- package/dist/shared/link-context.js +172 -0
- package/dist/shared/link-context.js.map +1 -0
- package/dist/shared/link-utils.d.ts +33 -0
- package/dist/shared/link-utils.d.ts.map +1 -0
- package/dist/shared/link-utils.js +301 -0
- package/dist/shared/link-utils.js.map +1 -0
- package/dist/shared/link-validation.d.ts +79 -0
- package/dist/shared/link-validation.d.ts.map +1 -0
- package/dist/shared/link-validation.js +340 -0
- package/dist/shared/link-validation.js.map +1 -0
- package/dist/shared/namespace-analysis.d.ts +10 -0
- package/dist/shared/namespace-analysis.d.ts.map +1 -0
- package/dist/shared/namespace-analysis.js +100 -0
- package/dist/shared/namespace-analysis.js.map +1 -0
- package/dist/shared/namespace-constants.d.ts +69 -0
- package/dist/shared/namespace-constants.d.ts.map +1 -0
- package/dist/shared/namespace-constants.js +97 -0
- package/dist/shared/namespace-constants.js.map +1 -0
- package/dist/shared/path-utilities.d.ts +13 -0
- package/dist/shared/path-utilities.d.ts.map +1 -0
- package/dist/shared/path-utilities.js +39 -0
- package/dist/shared/path-utilities.js.map +1 -0
- package/dist/shared/reference-extractor.d.ts +121 -0
- package/dist/shared/reference-extractor.d.ts.map +1 -0
- package/dist/shared/reference-extractor.js +195 -0
- package/dist/shared/reference-extractor.js.map +1 -0
- package/dist/shared/reference-loader.d.ts +163 -0
- package/dist/shared/reference-loader.d.ts.map +1 -0
- package/dist/shared/reference-loader.js +265 -0
- package/dist/shared/reference-loader.js.map +1 -0
- package/dist/shared/section-operations.d.ts +14 -0
- package/dist/shared/section-operations.d.ts.map +1 -0
- package/dist/shared/section-operations.js +115 -0
- package/dist/shared/section-operations.js.map +1 -0
- package/dist/shared/slug-utils.d.ts +109 -0
- package/dist/shared/slug-utils.d.ts.map +1 -0
- package/dist/shared/slug-utils.js +302 -0
- package/dist/shared/slug-utils.js.map +1 -0
- package/dist/shared/task-operations.d.ts +152 -0
- package/dist/shared/task-operations.d.ts.map +1 -0
- package/dist/shared/task-operations.js +416 -0
- package/dist/shared/task-operations.js.map +1 -0
- package/dist/shared/task-utilities.d.ts +63 -0
- package/dist/shared/task-utilities.d.ts.map +1 -0
- package/dist/shared/task-utilities.js +86 -0
- package/dist/shared/task-utilities.js.map +1 -0
- package/dist/shared/task-validation.d.ts +50 -0
- package/dist/shared/task-validation.d.ts.map +1 -0
- package/dist/shared/task-validation.js +97 -0
- package/dist/shared/task-validation.js.map +1 -0
- package/dist/shared/task-view-utilities.d.ts +109 -0
- package/dist/shared/task-view-utilities.d.ts.map +1 -0
- package/dist/shared/task-view-utilities.js +255 -0
- package/dist/shared/task-view-utilities.js.map +1 -0
- package/dist/shared/utilities.d.ts +14 -0
- package/dist/shared/utilities.d.ts.map +1 -0
- package/dist/shared/utilities.js +23 -0
- package/dist/shared/utilities.js.map +1 -0
- package/dist/shared/utilities.test.d.ts +5 -0
- package/dist/shared/utilities.test.d.ts.map +1 -0
- package/dist/shared/utilities.test.js +422 -0
- package/dist/shared/utilities.test.js.map +1 -0
- package/dist/shared/validation-utils.d.ts +57 -0
- package/dist/shared/validation-utils.d.ts.map +1 -0
- package/dist/shared/validation-utils.js +63 -0
- package/dist/shared/validation-utils.js.map +1 -0
- package/dist/shared/workflow-prompt-utilities.d.ts +64 -0
- package/dist/shared/workflow-prompt-utilities.d.ts.map +1 -0
- package/dist/shared/workflow-prompt-utilities.js +163 -0
- package/dist/shared/workflow-prompt-utilities.js.map +1 -0
- package/dist/slug.d.ts +9 -0
- package/dist/slug.d.ts.map +1 -0
- package/dist/slug.js +40 -0
- package/dist/slug.js.map +1 -0
- package/dist/template-loader.d.ts +6 -0
- package/dist/template-loader.d.ts.map +1 -0
- package/dist/template-loader.js +8 -0
- package/dist/template-loader.js.map +1 -0
- package/dist/tools/__tests__/create-document-self-reference.test.d.ts +2 -0
- package/dist/tools/__tests__/create-document-self-reference.test.d.ts.map +1 -0
- package/dist/tools/__tests__/create-document-self-reference.test.js +124 -0
- package/dist/tools/__tests__/create-document-self-reference.test.js.map +1 -0
- package/dist/tools/__tests__/create-document-workflow-regression.test.d.ts +16 -0
- package/dist/tools/__tests__/create-document-workflow-regression.test.d.ts.map +1 -0
- package/dist/tools/__tests__/create-document-workflow-regression.test.js +655 -0
- package/dist/tools/__tests__/create-document-workflow-regression.test.js.map +1 -0
- package/dist/tools/__tests__/create-document.test.d.ts +2 -0
- package/dist/tools/__tests__/create-document.test.d.ts.map +1 -0
- package/dist/tools/__tests__/create-document.test.js +255 -0
- package/dist/tools/__tests__/create-document.test.js.map +1 -0
- package/dist/tools/__tests__/delete-document.test.d.ts +7 -0
- package/dist/tools/__tests__/delete-document.test.d.ts.map +1 -0
- package/dist/tools/__tests__/delete-document.test.js +311 -0
- package/dist/tools/__tests__/delete-document.test.js.map +1 -0
- package/dist/tools/__tests__/edit-document.test.d.ts +2 -0
- package/dist/tools/__tests__/edit-document.test.d.ts.map +1 -0
- package/dist/tools/__tests__/edit-document.test.js +644 -0
- package/dist/tools/__tests__/edit-document.test.js.map +1 -0
- package/dist/tools/__tests__/error-scenarios.test.d.ts +5 -0
- package/dist/tools/__tests__/error-scenarios.test.d.ts.map +1 -0
- package/dist/tools/__tests__/error-scenarios.test.js +105 -0
- package/dist/tools/__tests__/error-scenarios.test.js.map +1 -0
- package/dist/tools/__tests__/mocks/document-manager.mock.d.ts +99 -0
- package/dist/tools/__tests__/mocks/document-manager.mock.d.ts.map +1 -0
- package/dist/tools/__tests__/mocks/document-manager.mock.js +457 -0
- package/dist/tools/__tests__/mocks/document-manager.mock.js.map +1 -0
- package/dist/tools/__tests__/mocks/filesystem.mock.d.ts +103 -0
- package/dist/tools/__tests__/mocks/filesystem.mock.d.ts.map +1 -0
- package/dist/tools/__tests__/mocks/filesystem.mock.js +247 -0
- package/dist/tools/__tests__/mocks/filesystem.mock.js.map +1 -0
- package/dist/tools/__tests__/move-document.test.d.ts +12 -0
- package/dist/tools/__tests__/move-document.test.d.ts.map +1 -0
- package/dist/tools/__tests__/move-document.test.js +214 -0
- package/dist/tools/__tests__/move-document.test.js.map +1 -0
- package/dist/tools/__tests__/move.test.d.ts +13 -0
- package/dist/tools/__tests__/move.test.d.ts.map +1 -0
- package/dist/tools/__tests__/move.test.js +939 -0
- package/dist/tools/__tests__/move.test.js.map +1 -0
- package/dist/tools/__tests__/section.integration.improved.test.d.ts +5 -0
- package/dist/tools/__tests__/section.integration.improved.test.d.ts.map +1 -0
- package/dist/tools/__tests__/section.integration.improved.test.js +199 -0
- package/dist/tools/__tests__/section.integration.improved.test.js.map +1 -0
- package/dist/tools/__tests__/section.integration.test.d.ts +5 -0
- package/dist/tools/__tests__/section.integration.test.d.ts.map +1 -0
- package/dist/tools/__tests__/section.integration.test.js +637 -0
- package/dist/tools/__tests__/section.integration.test.js.map +1 -0
- package/dist/tools/__tests__/setup/test-environment.d.ts +111 -0
- package/dist/tools/__tests__/setup/test-environment.d.ts.map +1 -0
- package/dist/tools/__tests__/setup/test-environment.js +322 -0
- package/dist/tools/__tests__/setup/test-environment.js.map +1 -0
- package/dist/tools/__tests__/suggestion-generator.test.d.ts +8 -0
- package/dist/tools/__tests__/suggestion-generator.test.d.ts.map +1 -0
- package/dist/tools/__tests__/suggestion-generator.test.js +508 -0
- package/dist/tools/__tests__/suggestion-generator.test.js.map +1 -0
- package/dist/tools/__tests__/task-consistency.test.d.ts +11 -0
- package/dist/tools/__tests__/task-consistency.test.d.ts.map +1 -0
- package/dist/tools/__tests__/task-consistency.test.js +93 -0
- package/dist/tools/__tests__/task-consistency.test.js.map +1 -0
- package/dist/tools/__tests__/task-status-parsing.test.d.ts +15 -0
- package/dist/tools/__tests__/task-status-parsing.test.d.ts.map +1 -0
- package/dist/tools/__tests__/task-status-parsing.test.js +126 -0
- package/dist/tools/__tests__/task-status-parsing.test.js.map +1 -0
- package/dist/tools/__tests__/view-section-boundary.test.d.ts +2 -0
- package/dist/tools/__tests__/view-section-boundary.test.d.ts.map +1 -0
- package/dist/tools/__tests__/view-section-boundary.test.js +132 -0
- package/dist/tools/__tests__/view-section-boundary.test.js.map +1 -0
- package/dist/tools/__tests__/write-operations-integration.test.d.ts +8 -0
- package/dist/tools/__tests__/write-operations-integration.test.d.ts.map +1 -0
- package/dist/tools/__tests__/write-operations-integration.test.js +136 -0
- package/dist/tools/__tests__/write-operations-integration.test.js.map +1 -0
- package/dist/tools/browse/content-analyzer.d.ts +27 -0
- package/dist/tools/browse/content-analyzer.d.ts.map +1 -0
- package/dist/tools/browse/content-analyzer.js +150 -0
- package/dist/tools/browse/content-analyzer.js.map +1 -0
- package/dist/tools/browse/dependency-analyzer.d.ts +63 -0
- package/dist/tools/browse/dependency-analyzer.d.ts.map +1 -0
- package/dist/tools/browse/dependency-analyzer.js +261 -0
- package/dist/tools/browse/dependency-analyzer.js.map +1 -0
- package/dist/tools/browse/folder-navigator.d.ts +35 -0
- package/dist/tools/browse/folder-navigator.d.ts.map +1 -0
- package/dist/tools/browse/folder-navigator.js +154 -0
- package/dist/tools/browse/folder-navigator.js.map +1 -0
- package/dist/tools/browse/index.d.ts +10 -0
- package/dist/tools/browse/index.d.ts.map +1 -0
- package/dist/tools/browse/index.js +14 -0
- package/dist/tools/browse/index.js.map +1 -0
- package/dist/tools/browse/relationship-classifier.d.ts +9 -0
- package/dist/tools/browse/relationship-classifier.d.ts.map +1 -0
- package/dist/tools/browse/relationship-classifier.js +38 -0
- package/dist/tools/browse/relationship-classifier.js.map +1 -0
- package/dist/tools/browse/search-engine.d.ts +69 -0
- package/dist/tools/browse/search-engine.d.ts.map +1 -0
- package/dist/tools/browse/search-engine.js +197 -0
- package/dist/tools/browse/search-engine.js.map +1 -0
- package/dist/tools/create/__tests__/file-creator.test.d.ts +6 -0
- package/dist/tools/create/__tests__/file-creator.test.d.ts.map +1 -0
- package/dist/tools/create/__tests__/file-creator.test.js +138 -0
- package/dist/tools/create/__tests__/file-creator.test.js.map +1 -0
- package/dist/tools/create/__tests__/template-processor.test.d.ts +6 -0
- package/dist/tools/create/__tests__/template-processor.test.d.ts.map +1 -0
- package/dist/tools/create/__tests__/template-processor.test.js +130 -0
- package/dist/tools/create/__tests__/template-processor.test.js.map +1 -0
- package/dist/tools/create/file-creator.d.ts +35 -0
- package/dist/tools/create/file-creator.d.ts.map +1 -0
- package/dist/tools/create/file-creator.js +103 -0
- package/dist/tools/create/file-creator.js.map +1 -0
- package/dist/tools/create/index.d.ts +6 -0
- package/dist/tools/create/index.d.ts.map +1 -0
- package/dist/tools/create/index.js +7 -0
- package/dist/tools/create/index.js.map +1 -0
- package/dist/tools/create/pipeline.d.ts +39 -0
- package/dist/tools/create/pipeline.d.ts.map +1 -0
- package/dist/tools/create/pipeline.js +112 -0
- package/dist/tools/create/pipeline.js.map +1 -0
- package/dist/tools/create/suggestion-generator.d.ts +47 -0
- package/dist/tools/create/suggestion-generator.d.ts.map +1 -0
- package/dist/tools/create/suggestion-generator.js +51 -0
- package/dist/tools/create/suggestion-generator.js.map +1 -0
- package/dist/tools/create/template-processor.d.ts +27 -0
- package/dist/tools/create/template-processor.d.ts.map +1 -0
- package/dist/tools/create/template-processor.js +74 -0
- package/dist/tools/create/template-processor.js.map +1 -0
- package/dist/tools/create/validation-processor.d.ts +48 -0
- package/dist/tools/create/validation-processor.d.ts.map +1 -0
- package/dist/tools/create/validation-processor.js +107 -0
- package/dist/tools/create/validation-processor.js.map +1 -0
- package/dist/tools/executor.d.ts +19 -0
- package/dist/tools/executor.d.ts.map +1 -0
- package/dist/tools/executor.js +53 -0
- package/dist/tools/executor.js.map +1 -0
- package/dist/tools/implementations/__tests__/browse-documents.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/browse-documents.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/browse-documents.test.js +319 -0
- package/dist/tools/implementations/__tests__/browse-documents.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/complete-coordinator-task.test.d.ts +7 -0
- package/dist/tools/implementations/__tests__/complete-coordinator-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/complete-coordinator-task.test.js +440 -0
- package/dist/tools/implementations/__tests__/complete-coordinator-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/complete-subagent-task.test.d.ts +14 -0
- package/dist/tools/implementations/__tests__/complete-subagent-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/complete-subagent-task.test.js +851 -0
- package/dist/tools/implementations/__tests__/complete-subagent-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/complete-task-notes.test.d.ts +6 -0
- package/dist/tools/implementations/__tests__/complete-task-notes.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/complete-task-notes.test.js +157 -0
- package/dist/tools/implementations/__tests__/complete-task-notes.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/complete-task.test.d.ts +14 -0
- package/dist/tools/implementations/__tests__/complete-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/complete-task.test.js +867 -0
- package/dist/tools/implementations/__tests__/complete-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/continue-task.test.d.ts +11 -0
- package/dist/tools/implementations/__tests__/continue-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/continue-task.test.js +845 -0
- package/dist/tools/implementations/__tests__/continue-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/coordinator-task.test.d.ts +7 -0
- package/dist/tools/implementations/__tests__/coordinator-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/coordinator-task.test.js +495 -0
- package/dist/tools/implementations/__tests__/coordinator-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/get-guide.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/get-guide.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/get-guide.test.js +242 -0
- package/dist/tools/implementations/__tests__/get-guide.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/get-workflow.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/get-workflow.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/get-workflow.test.js +232 -0
- package/dist/tools/implementations/__tests__/get-workflow.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/search-documents.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/search-documents.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/search-documents.test.js +336 -0
- package/dist/tools/implementations/__tests__/search-documents.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/start-coordinator-task.test.d.ts +7 -0
- package/dist/tools/implementations/__tests__/start-coordinator-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/start-coordinator-task.test.js +177 -0
- package/dist/tools/implementations/__tests__/start-coordinator-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/start-subagent-task.test.d.ts +11 -0
- package/dist/tools/implementations/__tests__/start-subagent-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/start-subagent-task.test.js +846 -0
- package/dist/tools/implementations/__tests__/start-subagent-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/start-task.test.d.ts +11 -0
- package/dist/tools/implementations/__tests__/start-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/start-task.test.js +828 -0
- package/dist/tools/implementations/__tests__/start-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/subagent-task-batch-operations.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/subagent-task-batch-operations.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/subagent-task-batch-operations.test.js +199 -0
- package/dist/tools/implementations/__tests__/subagent-task-batch-operations.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/subagent-task.test.d.ts +7 -0
- package/dist/tools/implementations/__tests__/subagent-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/subagent-task.test.js +720 -0
- package/dist/tools/implementations/__tests__/subagent-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/task-batch-operations.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/task-batch-operations.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/task-batch-operations.test.js +200 -0
- package/dist/tools/implementations/__tests__/task-batch-operations.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/task.test.d.ts +7 -0
- package/dist/tools/implementations/__tests__/task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/task.test.js +578 -0
- package/dist/tools/implementations/__tests__/task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/view-coordinator-task.test.d.ts +13 -0
- package/dist/tools/implementations/__tests__/view-coordinator-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/view-coordinator-task.test.js +1404 -0
- package/dist/tools/implementations/__tests__/view-coordinator-task.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/view-document.linked-context.test.d.ts +8 -0
- package/dist/tools/implementations/__tests__/view-document.linked-context.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/view-document.linked-context.test.js +235 -0
- package/dist/tools/implementations/__tests__/view-document.linked-context.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/view-document.simplification.test.d.ts +9 -0
- package/dist/tools/implementations/__tests__/view-document.simplification.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/view-document.simplification.test.js +160 -0
- package/dist/tools/implementations/__tests__/view-document.simplification.test.js.map +1 -0
- package/dist/tools/implementations/__tests__/view-task.test.d.ts +12 -0
- package/dist/tools/implementations/__tests__/view-task.test.d.ts.map +1 -0
- package/dist/tools/implementations/__tests__/view-task.test.js +1158 -0
- package/dist/tools/implementations/__tests__/view-task.test.js.map +1 -0
- package/dist/tools/implementations/browse-documents.d.ts +36 -0
- package/dist/tools/implementations/browse-documents.d.ts.map +1 -0
- package/dist/tools/implementations/browse-documents.js +123 -0
- package/dist/tools/implementations/browse-documents.js.map +1 -0
- package/dist/tools/implementations/complete-coordinator-task.d.ts +53 -0
- package/dist/tools/implementations/complete-coordinator-task.d.ts.map +1 -0
- package/dist/tools/implementations/complete-coordinator-task.js +159 -0
- package/dist/tools/implementations/complete-coordinator-task.js.map +1 -0
- package/dist/tools/implementations/complete-subagent-task.d.ts +47 -0
- package/dist/tools/implementations/complete-subagent-task.d.ts.map +1 -0
- package/dist/tools/implementations/complete-subagent-task.js +141 -0
- package/dist/tools/implementations/complete-subagent-task.js.map +1 -0
- package/dist/tools/implementations/complete-task.d.ts +32 -0
- package/dist/tools/implementations/complete-task.d.ts.map +1 -0
- package/dist/tools/implementations/complete-task.hierarchical.test.d.ts +8 -0
- package/dist/tools/implementations/complete-task.hierarchical.test.d.ts.map +1 -0
- package/dist/tools/implementations/complete-task.hierarchical.test.js +363 -0
- package/dist/tools/implementations/complete-task.hierarchical.test.js.map +1 -0
- package/dist/tools/implementations/complete-task.js +122 -0
- package/dist/tools/implementations/complete-task.js.map +1 -0
- package/dist/tools/implementations/continue-task.d.ts +48 -0
- package/dist/tools/implementations/continue-task.d.ts.map +1 -0
- package/dist/tools/implementations/continue-task.js +167 -0
- package/dist/tools/implementations/continue-task.js.map +1 -0
- package/dist/tools/implementations/coordinator-task.d.ts +72 -0
- package/dist/tools/implementations/coordinator-task.d.ts.map +1 -0
- package/dist/tools/implementations/coordinator-task.js +169 -0
- package/dist/tools/implementations/coordinator-task.js.map +1 -0
- package/dist/tools/implementations/create-document.d.ts +12 -0
- package/dist/tools/implementations/create-document.d.ts.map +1 -0
- package/dist/tools/implementations/create-document.js +15 -0
- package/dist/tools/implementations/create-document.js.map +1 -0
- package/dist/tools/implementations/delete-document.d.ts +16 -0
- package/dist/tools/implementations/delete-document.d.ts.map +1 -0
- package/dist/tools/implementations/delete-document.js +70 -0
- package/dist/tools/implementations/delete-document.js.map +1 -0
- package/dist/tools/implementations/edit-document.d.ts +8 -0
- package/dist/tools/implementations/edit-document.d.ts.map +1 -0
- package/dist/tools/implementations/edit-document.js +118 -0
- package/dist/tools/implementations/edit-document.js.map +1 -0
- package/dist/tools/implementations/get-guide.d.ts +13 -0
- package/dist/tools/implementations/get-guide.d.ts.map +1 -0
- package/dist/tools/implementations/get-guide.js +64 -0
- package/dist/tools/implementations/get-guide.js.map +1 -0
- package/dist/tools/implementations/get-workflow.d.ts +12 -0
- package/dist/tools/implementations/get-workflow.d.ts.map +1 -0
- package/dist/tools/implementations/get-workflow.js +71 -0
- package/dist/tools/implementations/get-workflow.js.map +1 -0
- package/dist/tools/implementations/index.d.ts +24 -0
- package/dist/tools/implementations/index.d.ts.map +1 -0
- package/dist/tools/implementations/index.js +24 -0
- package/dist/tools/implementations/index.js.map +1 -0
- package/dist/tools/implementations/manage-document.d.ts +8 -0
- package/dist/tools/implementations/manage-document.d.ts.map +1 -0
- package/dist/tools/implementations/manage-document.js +180 -0
- package/dist/tools/implementations/manage-document.js.map +1 -0
- package/dist/tools/implementations/move-document.d.ts +12 -0
- package/dist/tools/implementations/move-document.d.ts.map +1 -0
- package/dist/tools/implementations/move-document.js +72 -0
- package/dist/tools/implementations/move-document.js.map +1 -0
- package/dist/tools/implementations/move.d.ts +24 -0
- package/dist/tools/implementations/move.d.ts.map +1 -0
- package/dist/tools/implementations/move.js +167 -0
- package/dist/tools/implementations/move.js.map +1 -0
- package/dist/tools/implementations/search-documents.d.ts +39 -0
- package/dist/tools/implementations/search-documents.d.ts.map +1 -0
- package/dist/tools/implementations/search-documents.js +246 -0
- package/dist/tools/implementations/search-documents.js.map +1 -0
- package/dist/tools/implementations/section.d.ts +42 -0
- package/dist/tools/implementations/section.d.ts.map +1 -0
- package/dist/tools/implementations/section.hierarchical.test.d.ts +8 -0
- package/dist/tools/implementations/section.hierarchical.test.d.ts.map +1 -0
- package/dist/tools/implementations/section.hierarchical.test.js +299 -0
- package/dist/tools/implementations/section.hierarchical.test.js.map +1 -0
- package/dist/tools/implementations/section.js +244 -0
- package/dist/tools/implementations/section.js.map +1 -0
- package/dist/tools/implementations/section.test.d.ts +5 -0
- package/dist/tools/implementations/section.test.d.ts.map +1 -0
- package/dist/tools/implementations/section.test.js +371 -0
- package/dist/tools/implementations/section.test.js.map +1 -0
- package/dist/tools/implementations/start-coordinator-task.d.ts +44 -0
- package/dist/tools/implementations/start-coordinator-task.d.ts.map +1 -0
- package/dist/tools/implementations/start-coordinator-task.js +125 -0
- package/dist/tools/implementations/start-coordinator-task.js.map +1 -0
- package/dist/tools/implementations/start-subagent-task.d.ts +53 -0
- package/dist/tools/implementations/start-subagent-task.d.ts.map +1 -0
- package/dist/tools/implementations/start-subagent-task.js +179 -0
- package/dist/tools/implementations/start-subagent-task.js.map +1 -0
- package/dist/tools/implementations/start-task.d.ts +48 -0
- package/dist/tools/implementations/start-task.d.ts.map +1 -0
- package/dist/tools/implementations/start-task.js +216 -0
- package/dist/tools/implementations/start-task.js.map +1 -0
- package/dist/tools/implementations/subagent-task.d.ts +98 -0
- package/dist/tools/implementations/subagent-task.d.ts.map +1 -0
- package/dist/tools/implementations/subagent-task.js +277 -0
- package/dist/tools/implementations/subagent-task.js.map +1 -0
- package/dist/tools/implementations/task.d.ts +97 -0
- package/dist/tools/implementations/task.d.ts.map +1 -0
- package/dist/tools/implementations/task.hierarchical.test.d.ts +8 -0
- package/dist/tools/implementations/task.hierarchical.test.d.ts.map +1 -0
- package/dist/tools/implementations/task.hierarchical.test.js +333 -0
- package/dist/tools/implementations/task.hierarchical.test.js.map +1 -0
- package/dist/tools/implementations/task.js +235 -0
- package/dist/tools/implementations/task.js.map +1 -0
- package/dist/tools/implementations/view-coordinator-task.d.ts +61 -0
- package/dist/tools/implementations/view-coordinator-task.d.ts.map +1 -0
- package/dist/tools/implementations/view-coordinator-task.js +295 -0
- package/dist/tools/implementations/view-coordinator-task.js.map +1 -0
- package/dist/tools/implementations/view-document.d.ts +84 -0
- package/dist/tools/implementations/view-document.d.ts.map +1 -0
- package/dist/tools/implementations/view-document.js +287 -0
- package/dist/tools/implementations/view-document.js.map +1 -0
- package/dist/tools/implementations/view-section.d.ts +28 -0
- package/dist/tools/implementations/view-section.d.ts.map +1 -0
- package/dist/tools/implementations/view-section.hierarchical.test.d.ts +8 -0
- package/dist/tools/implementations/view-section.hierarchical.test.d.ts.map +1 -0
- package/dist/tools/implementations/view-section.hierarchical.test.js +318 -0
- package/dist/tools/implementations/view-section.hierarchical.test.js.map +1 -0
- package/dist/tools/implementations/view-section.js +167 -0
- package/dist/tools/implementations/view-section.js.map +1 -0
- package/dist/tools/implementations/view-subagent-task.d.ts +46 -0
- package/dist/tools/implementations/view-subagent-task.d.ts.map +1 -0
- package/dist/tools/implementations/view-subagent-task.js +283 -0
- package/dist/tools/implementations/view-subagent-task.js.map +1 -0
- package/dist/tools/implementations/view-task.d.ts +43 -0
- package/dist/tools/implementations/view-task.d.ts.map +1 -0
- package/dist/tools/implementations/view-task.hierarchical.test.d.ts +8 -0
- package/dist/tools/implementations/view-task.hierarchical.test.d.ts.map +1 -0
- package/dist/tools/implementations/view-task.hierarchical.test.js +420 -0
- package/dist/tools/implementations/view-task.hierarchical.test.js.map +1 -0
- package/dist/tools/implementations/view-task.js +280 -0
- package/dist/tools/implementations/view-task.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +6 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/registry.d.ts +10 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +132 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/schemas/__tests__/get-guide-schemas.test.d.ts +8 -0
- package/dist/tools/schemas/__tests__/get-guide-schemas.test.d.ts.map +1 -0
- package/dist/tools/schemas/__tests__/get-guide-schemas.test.js +216 -0
- package/dist/tools/schemas/__tests__/get-guide-schemas.test.js.map +1 -0
- package/dist/tools/schemas/__tests__/get-workflow-schemas.test.d.ts +8 -0
- package/dist/tools/schemas/__tests__/get-workflow-schemas.test.d.ts.map +1 -0
- package/dist/tools/schemas/__tests__/get-workflow-schemas.test.js +229 -0
- package/dist/tools/schemas/__tests__/get-workflow-schemas.test.js.map +1 -0
- package/dist/tools/schemas/browse-documents-schemas.d.ts +47 -0
- package/dist/tools/schemas/browse-documents-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/browse-documents-schemas.js +48 -0
- package/dist/tools/schemas/browse-documents-schemas.js.map +1 -0
- package/dist/tools/schemas/complete-coordinator-task-schemas.d.ts +41 -0
- package/dist/tools/schemas/complete-coordinator-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/complete-coordinator-task-schemas.js +42 -0
- package/dist/tools/schemas/complete-coordinator-task-schemas.js.map +1 -0
- package/dist/tools/schemas/complete-subagent-task-schemas.d.ts +38 -0
- package/dist/tools/schemas/complete-subagent-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/complete-subagent-task-schemas.js +41 -0
- package/dist/tools/schemas/complete-subagent-task-schemas.js.map +1 -0
- package/dist/tools/schemas/complete-task-schemas.d.ts +33 -0
- package/dist/tools/schemas/complete-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/complete-task-schemas.js +36 -0
- package/dist/tools/schemas/complete-task-schemas.js.map +1 -0
- package/dist/tools/schemas/continue-task-schemas.d.ts +27 -0
- package/dist/tools/schemas/continue-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/continue-task-schemas.js +28 -0
- package/dist/tools/schemas/continue-task-schemas.js.map +1 -0
- package/dist/tools/schemas/coordinator-task-schemas.d.ts +87 -0
- package/dist/tools/schemas/coordinator-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/coordinator-task-schemas.js +80 -0
- package/dist/tools/schemas/coordinator-task-schemas.js.map +1 -0
- package/dist/tools/schemas/create-document-schemas.d.ts +61 -0
- package/dist/tools/schemas/create-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/create-document-schemas.js +143 -0
- package/dist/tools/schemas/create-document-schemas.js.map +1 -0
- package/dist/tools/schemas/delete-document-schemas.d.ts +24 -0
- package/dist/tools/schemas/delete-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/delete-document-schemas.js +25 -0
- package/dist/tools/schemas/delete-document-schemas.js.map +1 -0
- package/dist/tools/schemas/edit-document-schemas.d.ts +27 -0
- package/dist/tools/schemas/edit-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/edit-document-schemas.js +28 -0
- package/dist/tools/schemas/edit-document-schemas.js.map +1 -0
- package/dist/tools/schemas/get-guide-schemas.d.ts +35 -0
- package/dist/tools/schemas/get-guide-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/get-guide-schemas.js +66 -0
- package/dist/tools/schemas/get-guide-schemas.js.map +1 -0
- package/dist/tools/schemas/get-workflow-schemas.d.ts +35 -0
- package/dist/tools/schemas/get-workflow-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/get-workflow-schemas.js +67 -0
- package/dist/tools/schemas/get-workflow-schemas.js.map +1 -0
- package/dist/tools/schemas/manage-document-schemas.d.ts +59 -0
- package/dist/tools/schemas/manage-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/manage-document-schemas.js +83 -0
- package/dist/tools/schemas/manage-document-schemas.js.map +1 -0
- package/dist/tools/schemas/move-document-schemas.d.ts +25 -0
- package/dist/tools/schemas/move-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/move-document-schemas.js +26 -0
- package/dist/tools/schemas/move-document-schemas.js.map +1 -0
- package/dist/tools/schemas/move-schemas.d.ts +43 -0
- package/dist/tools/schemas/move-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/move-schemas.js +43 -0
- package/dist/tools/schemas/move-schemas.js.map +1 -0
- package/dist/tools/schemas/search-documents-schemas.d.ts +77 -0
- package/dist/tools/schemas/search-documents-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/search-documents-schemas.js +78 -0
- package/dist/tools/schemas/search-documents-schemas.js.map +1 -0
- package/dist/tools/schemas/section-schemas.d.ts +361 -0
- package/dist/tools/schemas/section-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/section-schemas.js +182 -0
- package/dist/tools/schemas/section-schemas.js.map +1 -0
- package/dist/tools/schemas/start-coordinator-task-schemas.d.ts +30 -0
- package/dist/tools/schemas/start-coordinator-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/start-coordinator-task-schemas.js +31 -0
- package/dist/tools/schemas/start-coordinator-task-schemas.js.map +1 -0
- package/dist/tools/schemas/start-subagent-task-schemas.d.ts +29 -0
- package/dist/tools/schemas/start-subagent-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/start-subagent-task-schemas.js +40 -0
- package/dist/tools/schemas/start-subagent-task-schemas.js.map +1 -0
- package/dist/tools/schemas/start-task-schemas.d.ts +23 -0
- package/dist/tools/schemas/start-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/start-task-schemas.js +39 -0
- package/dist/tools/schemas/start-task-schemas.js.map +1 -0
- package/dist/tools/schemas/subagent-task-schemas.d.ts +93 -0
- package/dist/tools/schemas/subagent-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/subagent-task-schemas.js +81 -0
- package/dist/tools/schemas/subagent-task-schemas.js.map +1 -0
- package/dist/tools/schemas/task-schemas.d.ts +88 -0
- package/dist/tools/schemas/task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/task-schemas.js +80 -0
- package/dist/tools/schemas/task-schemas.js.map +1 -0
- package/dist/tools/schemas/view-coordinator-task-schemas.d.ts +27 -0
- package/dist/tools/schemas/view-coordinator-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/view-coordinator-task-schemas.js +46 -0
- package/dist/tools/schemas/view-coordinator-task-schemas.js.map +1 -0
- package/dist/tools/schemas/view-document-schemas.d.ts +152 -0
- package/dist/tools/schemas/view-document-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/view-document-schemas.js +70 -0
- package/dist/tools/schemas/view-document-schemas.js.map +1 -0
- package/dist/tools/schemas/view-section-schemas.d.ts +31 -0
- package/dist/tools/schemas/view-section-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/view-section-schemas.js +56 -0
- package/dist/tools/schemas/view-section-schemas.js.map +1 -0
- package/dist/tools/schemas/view-subagent-task-schemas.d.ts +31 -0
- package/dist/tools/schemas/view-subagent-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/view-subagent-task-schemas.js +65 -0
- package/dist/tools/schemas/view-subagent-task-schemas.js.map +1 -0
- package/dist/tools/schemas/view-task-schemas.d.ts +31 -0
- package/dist/tools/schemas/view-task-schemas.d.ts.map +1 -0
- package/dist/tools/schemas/view-task-schemas.js +62 -0
- package/dist/tools/schemas/view-task-schemas.js.map +1 -0
- package/dist/tools/types.d.ts +98 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +9 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools-manager.d.ts +8 -0
- package/dist/tools-manager.d.ts.map +1 -0
- package/dist/tools-manager.js +9 -0
- package/dist/tools-manager.js.map +1 -0
- package/dist/types/core.d.ts +71 -0
- package/dist/types/core.d.ts.map +1 -0
- package/dist/types/core.js +5 -0
- package/dist/types/core.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/linking.d.ts +97 -0
- package/dist/types/linking.d.ts.map +1 -0
- package/dist/types/linking.js +5 -0
- package/dist/types/linking.js.map +1 -0
- package/dist/utils/__tests__/path-handler.archive.test.d.ts +8 -0
- package/dist/utils/__tests__/path-handler.archive.test.d.ts.map +1 -0
- package/dist/utils/__tests__/path-handler.archive.test.js +163 -0
- package/dist/utils/__tests__/path-handler.archive.test.js.map +1 -0
- package/dist/utils/error-formatter.d.ts +32 -0
- package/dist/utils/error-formatter.d.ts.map +1 -0
- package/dist/utils/error-formatter.js +79 -0
- package/dist/utils/error-formatter.js.map +1 -0
- package/dist/utils/logger.d.ts +21 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +154 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/path-handler.d.ts +52 -0
- package/dist/utils/path-handler.d.ts.map +1 -0
- package/dist/utils/path-handler.js +129 -0
- package/dist/utils/path-handler.js.map +1 -0
- package/dist/utils/security-audit-logger.d.ts +64 -0
- package/dist/utils/security-audit-logger.d.ts.map +1 -0
- package/dist/utils/security-audit-logger.js +56 -0
- package/dist/utils/security-audit-logger.js.map +1 -0
- package/dist/utils/virtual-path-resolver.d.ts +126 -0
- package/dist/utils/virtual-path-resolver.d.ts.map +1 -0
- package/dist/utils/virtual-path-resolver.js +171 -0
- package/dist/utils/virtual-path-resolver.js.map +1 -0
- package/package.json +82 -0
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reference loading system for hierarchical content loading
|
|
3
|
+
*
|
|
4
|
+
* This module provides recursive loading of documents and their references
|
|
5
|
+
* to build hierarchical content structures with cycle detection and depth limits.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Recursive reference loading with depth control
|
|
9
|
+
* - Cycle detection to prevent infinite loops
|
|
10
|
+
* - Hierarchical content organization
|
|
11
|
+
* - Integration with existing DocumentManager
|
|
12
|
+
* - Namespace-aware content loading
|
|
13
|
+
*/
|
|
14
|
+
import { ReferenceExtractor } from './reference-extractor.js';
|
|
15
|
+
import { pathToNamespace } from './path-utilities.js';
|
|
16
|
+
import { getGlobalLogger } from '../utils/logger.js';
|
|
17
|
+
import { AccessContext } from '../document-cache.js';
|
|
18
|
+
const logger = getGlobalLogger();
|
|
19
|
+
/**
|
|
20
|
+
* Reference loading system with hierarchical content organization
|
|
21
|
+
*
|
|
22
|
+
* Provides recursive loading of documents and their references
|
|
23
|
+
* with intelligent cycle detection and depth management.
|
|
24
|
+
*/
|
|
25
|
+
export class ReferenceLoader {
|
|
26
|
+
extractor;
|
|
27
|
+
MAX_TOTAL_NODES = 1000;
|
|
28
|
+
DEFAULT_TIMEOUT_MS = 30000; // 30 seconds
|
|
29
|
+
constructor() {
|
|
30
|
+
this.extractor = new ReferenceExtractor();
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Load references recursively to build hierarchical content structure
|
|
34
|
+
*
|
|
35
|
+
* Processes normalized references and loads their target documents,
|
|
36
|
+
* recursively processing nested references up to specified depth.
|
|
37
|
+
*
|
|
38
|
+
* @param refs - Array of normalized references to load
|
|
39
|
+
* @param manager - DocumentManager for loading documents
|
|
40
|
+
* @param maxDepth - Maximum recursion depth (default: 3)
|
|
41
|
+
* @param currentDepth - Current recursion depth (default: 0)
|
|
42
|
+
* @param visitedPaths - Set of visited paths for cycle detection (internal use)
|
|
43
|
+
* @param totalNodesLoaded - Node count tracker across all branches (internal use)
|
|
44
|
+
* @param startTime - Operation start timestamp for timeout tracking (internal use)
|
|
45
|
+
* @returns Promise resolving to hierarchical content array
|
|
46
|
+
*
|
|
47
|
+
* @example Basic reference loading
|
|
48
|
+
* ```typescript
|
|
49
|
+
* const loader = new ReferenceLoader();
|
|
50
|
+
* const extractor = new ReferenceExtractor();
|
|
51
|
+
*
|
|
52
|
+
* const refs = extractor.normalizeReferences(
|
|
53
|
+
* ['@/api/auth.md', '@/api/tokens.md'],
|
|
54
|
+
* '/current/doc.md'
|
|
55
|
+
* );
|
|
56
|
+
*
|
|
57
|
+
* const hierarchy = await loader.loadReferences(refs, manager, 2);
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
async loadReferences(refs, manager, maxDepth = 3, currentDepth = 0, visitedPaths, totalNodesLoaded, startTime) {
|
|
61
|
+
// Input validation
|
|
62
|
+
if (!Array.isArray(refs)) {
|
|
63
|
+
return [];
|
|
64
|
+
}
|
|
65
|
+
if (typeof maxDepth !== 'number' || maxDepth < 0) {
|
|
66
|
+
throw new Error('maxDepth must be a non-negative number');
|
|
67
|
+
}
|
|
68
|
+
if (typeof currentDepth !== 'number' || currentDepth < 0) {
|
|
69
|
+
throw new Error('currentDepth must be a non-negative number');
|
|
70
|
+
}
|
|
71
|
+
// Initialize operation start time on first call
|
|
72
|
+
const operationStart = startTime ?? Date.now();
|
|
73
|
+
// Check for timeout
|
|
74
|
+
if (Date.now() - operationStart > this.DEFAULT_TIMEOUT_MS) {
|
|
75
|
+
throw new Error(`Reference loading operation exceeded timeout of ${this.DEFAULT_TIMEOUT_MS}ms. ` +
|
|
76
|
+
'This may indicate a very large or deeply nested reference tree.');
|
|
77
|
+
}
|
|
78
|
+
// Initialize node tracker on first call
|
|
79
|
+
const nodeTracker = totalNodesLoaded ?? { count: 0 };
|
|
80
|
+
// Check total node count limit to prevent exponential growth
|
|
81
|
+
if (nodeTracker.count >= this.MAX_TOTAL_NODES) {
|
|
82
|
+
logger.error(`Total node limit (${this.MAX_TOTAL_NODES}) exceeded. Stopping reference loading to prevent memory exhaustion.`);
|
|
83
|
+
return [];
|
|
84
|
+
}
|
|
85
|
+
// Check depth limit
|
|
86
|
+
if (currentDepth >= maxDepth) {
|
|
87
|
+
return [];
|
|
88
|
+
}
|
|
89
|
+
// Track visited paths to prevent cycles (create new set if not provided)
|
|
90
|
+
const pathsToTrack = visitedPaths ?? new Set();
|
|
91
|
+
const results = [];
|
|
92
|
+
for (const ref of refs) {
|
|
93
|
+
try {
|
|
94
|
+
const content = await this.loadSingleReference(ref, manager, maxDepth, currentDepth, pathsToTrack, nodeTracker, operationStart);
|
|
95
|
+
if (content != null) {
|
|
96
|
+
results.push(content);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
// Log error but continue processing other references
|
|
101
|
+
logger.warn(`Failed to load reference "${ref.originalRef}"`, {
|
|
102
|
+
error: error instanceof Error ? error.message : String(error)
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return results;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Load a single reference with cycle detection
|
|
110
|
+
*
|
|
111
|
+
* @param ref - Normalized reference to load
|
|
112
|
+
* @param manager - DocumentManager for loading
|
|
113
|
+
* @param maxDepth - Maximum recursion depth
|
|
114
|
+
* @param currentDepth - Current recursion depth
|
|
115
|
+
* @param visitedPaths - Set of already visited paths for cycle detection
|
|
116
|
+
* @param nodeTracker - Node count tracker across all branches
|
|
117
|
+
* @param startTime - Operation start timestamp for timeout tracking
|
|
118
|
+
* @returns Promise resolving to hierarchical content or null if skipped
|
|
119
|
+
*/
|
|
120
|
+
async loadSingleReference(ref, manager, maxDepth, currentDepth, visitedPaths, nodeTracker, startTime) {
|
|
121
|
+
// Check for cycles (should not happen due to filtering, but keeping as safety check)
|
|
122
|
+
if (visitedPaths.has(ref.documentPath)) {
|
|
123
|
+
logger.warn(`Unexpected cycle detected for path: ${ref.documentPath}`);
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
// Add to visited set
|
|
127
|
+
visitedPaths.add(ref.documentPath);
|
|
128
|
+
// Increment node counter to track total nodes across all branches
|
|
129
|
+
nodeTracker.count++;
|
|
130
|
+
// Load the document with 'reference' context for 2x eviction resistance
|
|
131
|
+
const document = await manager.cache.getDocument(ref.documentPath, AccessContext.REFERENCE);
|
|
132
|
+
if (document == null) {
|
|
133
|
+
logger.warn(`Document not found: ${ref.documentPath}`);
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
// Get content (section-specific or full document)
|
|
137
|
+
let content;
|
|
138
|
+
let title;
|
|
139
|
+
if (ref.sectionSlug != null) {
|
|
140
|
+
// Load specific section using DocumentManager to ensure proper loading
|
|
141
|
+
const sectionContent = await manager.getSectionContent(ref.documentPath, ref.sectionSlug);
|
|
142
|
+
if (sectionContent == null) {
|
|
143
|
+
logger.warn(`Section "${ref.sectionSlug}" not found in ${ref.documentPath}`);
|
|
144
|
+
return null;
|
|
145
|
+
}
|
|
146
|
+
content = sectionContent;
|
|
147
|
+
// Find section title from headings
|
|
148
|
+
const heading = document.headings.find(h => h.slug === ref.sectionSlug);
|
|
149
|
+
title = heading?.title ?? `Section: ${ref.sectionSlug}`;
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
// Load full document content directly
|
|
153
|
+
content = await manager.cache.readDocumentContent(ref.documentPath) ?? '';
|
|
154
|
+
title = document.metadata.title;
|
|
155
|
+
}
|
|
156
|
+
// Extract nested references from content
|
|
157
|
+
const nestedRefs = this.extractor.extractReferences(content);
|
|
158
|
+
const normalizedNestedRefs = this.extractor.normalizeReferences(nestedRefs, ref.documentPath);
|
|
159
|
+
// Filter out self-references and already visited paths (with cycle detection logging)
|
|
160
|
+
const filteredNestedRefs = normalizedNestedRefs.filter(nestedRef => {
|
|
161
|
+
if (visitedPaths.has(nestedRef.documentPath)) {
|
|
162
|
+
logger.warn(`Cycle detected for path: ${nestedRef.documentPath}`);
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
return true;
|
|
166
|
+
});
|
|
167
|
+
// Recursively load nested references with visited path tracking
|
|
168
|
+
const children = await this.loadReferences(filteredNestedRefs, manager, maxDepth, currentDepth + 1, visitedPaths, nodeTracker, startTime);
|
|
169
|
+
// Build hierarchical content
|
|
170
|
+
const hierarchicalContent = {
|
|
171
|
+
path: ref.documentPath,
|
|
172
|
+
title,
|
|
173
|
+
content,
|
|
174
|
+
depth: currentDepth,
|
|
175
|
+
namespace: pathToNamespace(ref.documentPath),
|
|
176
|
+
children
|
|
177
|
+
};
|
|
178
|
+
return hierarchicalContent;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Load references from content string with automatic extraction
|
|
182
|
+
*
|
|
183
|
+
* Convenience method that combines reference extraction and loading
|
|
184
|
+
* in a single operation.
|
|
185
|
+
*
|
|
186
|
+
* @param content - Content to extract references from
|
|
187
|
+
* @param contextPath - Context document path for resolution
|
|
188
|
+
* @param manager - DocumentManager for loading
|
|
189
|
+
* @param maxDepth - Maximum recursion depth (default: 3)
|
|
190
|
+
* @returns Promise resolving to hierarchical content array
|
|
191
|
+
*
|
|
192
|
+
* @example Direct content loading
|
|
193
|
+
* ```typescript
|
|
194
|
+
* const loader = new ReferenceLoader();
|
|
195
|
+
* const content = 'See @/api/auth.md and @/api/tokens.md for details.';
|
|
196
|
+
*
|
|
197
|
+
* const hierarchy = await loader.loadReferencesFromContent(
|
|
198
|
+
* content,
|
|
199
|
+
* '/current/doc.md',
|
|
200
|
+
* manager
|
|
201
|
+
* );
|
|
202
|
+
* ```
|
|
203
|
+
*/
|
|
204
|
+
async loadReferencesFromContent(content, contextPath, manager, maxDepth = 3) {
|
|
205
|
+
// Extract references from content
|
|
206
|
+
const refs = this.extractor.extractReferences(content);
|
|
207
|
+
// Normalize references
|
|
208
|
+
const normalizedRefs = this.extractor.normalizeReferences(refs, contextPath);
|
|
209
|
+
// Load hierarchical content
|
|
210
|
+
return await this.loadReferences(normalizedRefs, manager, maxDepth);
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Get flattened list of all documents in hierarchy
|
|
214
|
+
*
|
|
215
|
+
* Utility method to extract all document paths from hierarchical content
|
|
216
|
+
* for analysis or batch operations.
|
|
217
|
+
*
|
|
218
|
+
* @param hierarchy - Hierarchical content array
|
|
219
|
+
* @returns Array of document paths in depth-first order
|
|
220
|
+
*
|
|
221
|
+
* @example Flatten hierarchy
|
|
222
|
+
* ```typescript
|
|
223
|
+
* const hierarchy = await loader.loadReferences(refs, manager);
|
|
224
|
+
* const allPaths = loader.flattenHierarchy(hierarchy);
|
|
225
|
+
* // Returns: ['/api/auth.md', '/api/tokens.md', '/api/errors.md']
|
|
226
|
+
* ```
|
|
227
|
+
*/
|
|
228
|
+
flattenHierarchy(hierarchy) {
|
|
229
|
+
const paths = [];
|
|
230
|
+
const collect = (items) => {
|
|
231
|
+
for (const item of items) {
|
|
232
|
+
paths.push(item.path);
|
|
233
|
+
collect(item.children);
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
collect(hierarchy);
|
|
237
|
+
return paths;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Get hierarchy statistics for analysis
|
|
241
|
+
*
|
|
242
|
+
* @param hierarchy - Hierarchical content array
|
|
243
|
+
* @returns Statistics about the hierarchy structure
|
|
244
|
+
*/
|
|
245
|
+
getHierarchyStats(hierarchy) {
|
|
246
|
+
let totalDocuments = 0;
|
|
247
|
+
let maxDepth = -1;
|
|
248
|
+
const namespaceSet = new Set();
|
|
249
|
+
const analyze = (items) => {
|
|
250
|
+
for (const item of items) {
|
|
251
|
+
totalDocuments++;
|
|
252
|
+
maxDepth = Math.max(maxDepth, item.depth);
|
|
253
|
+
namespaceSet.add(item.namespace);
|
|
254
|
+
analyze(item.children);
|
|
255
|
+
}
|
|
256
|
+
};
|
|
257
|
+
analyze(hierarchy);
|
|
258
|
+
return {
|
|
259
|
+
totalDocuments,
|
|
260
|
+
maxDepth: maxDepth === -1 ? 0 : maxDepth,
|
|
261
|
+
namespaces: Array.from(namespaceSet).sort()
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
//# sourceMappingURL=reference-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference-loader.js","sourceRoot":"","sources":["../../src/shared/reference-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Section editing operations
|
|
3
|
+
*/
|
|
4
|
+
import type { DocumentManager } from '../document-manager.js';
|
|
5
|
+
/**
|
|
6
|
+
* Helper function to perform a single section edit operation
|
|
7
|
+
*/
|
|
8
|
+
export declare function performSectionEdit(manager: DocumentManager, normalizedPath: string, sectionSlug: string, content: string, operation: string, title?: string): Promise<{
|
|
9
|
+
action: 'edited' | 'created' | 'removed';
|
|
10
|
+
section: string;
|
|
11
|
+
depth?: number;
|
|
12
|
+
removedContent?: string;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=section-operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"section-operations.d.ts","sourceRoot":"","sources":["../../src/shared/section-operations.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAK9D;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkJjH"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Section editing operations
|
|
3
|
+
*/
|
|
4
|
+
import { getSectionContentForRemoval, deleteSection } from '../sections.js';
|
|
5
|
+
import { DocumentNotFoundError, AddressingError } from './addressing-system.js';
|
|
6
|
+
/**
|
|
7
|
+
* Helper function to perform a single section edit operation
|
|
8
|
+
*/
|
|
9
|
+
export async function performSectionEdit(manager, normalizedPath, sectionSlug, content, operation, title) {
|
|
10
|
+
// Check if document exists
|
|
11
|
+
const document = await manager.getDocument(normalizedPath);
|
|
12
|
+
if (document == null) {
|
|
13
|
+
throw new DocumentNotFoundError(normalizedPath);
|
|
14
|
+
}
|
|
15
|
+
const creationOperations = ['insert_before', 'insert_after', 'append_child'];
|
|
16
|
+
const editOperations = ['replace', 'append', 'prepend'];
|
|
17
|
+
const removeOperations = ['remove'];
|
|
18
|
+
if (removeOperations.includes(operation)) {
|
|
19
|
+
// Remove operations - delete section
|
|
20
|
+
const section = document.headings.find(h => h.slug === sectionSlug);
|
|
21
|
+
if (section == null) {
|
|
22
|
+
throw new AddressingError(`Section not found: ${sectionSlug}`, 'SECTION_NOT_FOUND', {
|
|
23
|
+
slug: sectionSlug,
|
|
24
|
+
documentPath: normalizedPath,
|
|
25
|
+
availableSections: document.headings.map(h => h.slug)
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
// Get the actual content that will be removed (excluding boundary markers)
|
|
29
|
+
// This ensures the reported removed_content matches what deleteSection actually removes
|
|
30
|
+
const absolutePath = manager.pathResolver.resolve(normalizedPath);
|
|
31
|
+
const { readFileSnapshot, writeFileIfUnchanged } = await import('../fsio.js');
|
|
32
|
+
const snapshot = await readFileSnapshot(absolutePath, { bypassValidation: true });
|
|
33
|
+
// Get the content that will actually be removed (matches deleteSection behavior)
|
|
34
|
+
const removedContent = getSectionContentForRemoval(snapshot.content, sectionSlug) ?? '';
|
|
35
|
+
const updatedContent = deleteSection(snapshot.content, sectionSlug);
|
|
36
|
+
await writeFileIfUnchanged(absolutePath, snapshot.mtimeMs, updatedContent, { bypassValidation: true });
|
|
37
|
+
return {
|
|
38
|
+
action: 'removed',
|
|
39
|
+
section: sectionSlug,
|
|
40
|
+
removedContent
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
else if (creationOperations.includes(operation)) {
|
|
44
|
+
// Creation operations - create new section
|
|
45
|
+
if (title == null || title === '') {
|
|
46
|
+
throw new AddressingError(`Title is required for creation operation: ${operation}`, 'MISSING_PARAMETER', { operation, requiredParameter: 'title' });
|
|
47
|
+
}
|
|
48
|
+
// Map operation to InsertMode
|
|
49
|
+
const insertMode = operation === 'insert_before' ? 'insert_before'
|
|
50
|
+
: operation === 'insert_after' ? 'insert_after'
|
|
51
|
+
: 'append_child';
|
|
52
|
+
const targetSlug = sectionSlug;
|
|
53
|
+
// Insert the section with automatic depth calculation
|
|
54
|
+
await manager.insertSection(normalizedPath, targetSlug, insertMode, undefined, // Let it auto-calculate depth
|
|
55
|
+
title, content, { updateToc: true });
|
|
56
|
+
// Get the created section's slug and depth
|
|
57
|
+
const updatedDocument = await manager.getDocument(normalizedPath);
|
|
58
|
+
if (updatedDocument == null) {
|
|
59
|
+
throw new DocumentNotFoundError(normalizedPath);
|
|
60
|
+
}
|
|
61
|
+
// Find the newly created section
|
|
62
|
+
const { titleToSlug } = await import('../slug.js');
|
|
63
|
+
const newSlug = titleToSlug(title);
|
|
64
|
+
const newSection = updatedDocument.headings.find(h => h.slug === newSlug);
|
|
65
|
+
return {
|
|
66
|
+
action: 'created',
|
|
67
|
+
section: newSlug,
|
|
68
|
+
...(newSection?.depth !== undefined && { depth: newSection.depth })
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
else if (editOperations.includes(operation)) {
|
|
72
|
+
// Edit operations - modify existing section
|
|
73
|
+
if (operation === 'replace') {
|
|
74
|
+
const section = document.headings.find(h => h.slug === sectionSlug);
|
|
75
|
+
if (section == null) {
|
|
76
|
+
throw new AddressingError(`Section not found: ${sectionSlug}`, 'SECTION_NOT_FOUND', {
|
|
77
|
+
slug: sectionSlug,
|
|
78
|
+
documentPath: normalizedPath,
|
|
79
|
+
availableSections: document.headings.map(h => h.slug)
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
await manager.updateSection(normalizedPath, sectionSlug, content, {
|
|
83
|
+
updateToc: true,
|
|
84
|
+
validateLinks: true
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
// For append/prepend, get current content and modify it
|
|
89
|
+
const currentContent = await manager.getSectionContent(normalizedPath, sectionSlug) ?? '';
|
|
90
|
+
let newContent;
|
|
91
|
+
if (operation === 'append') {
|
|
92
|
+
newContent = currentContent.trim() !== '' ? `${currentContent}\n\n${content}` : content;
|
|
93
|
+
}
|
|
94
|
+
else if (operation === 'prepend') {
|
|
95
|
+
newContent = currentContent.trim() !== '' ? `${content}\n\n${currentContent}` : content;
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
throw new AddressingError(`Invalid operation: ${operation}`, 'INVALID_OPERATION', { operation, validOperations: ['replace', 'append', 'prepend'] });
|
|
99
|
+
}
|
|
100
|
+
await manager.updateSection(normalizedPath, sectionSlug, newContent, {
|
|
101
|
+
updateToc: true,
|
|
102
|
+
validateLinks: true
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
return {
|
|
106
|
+
action: 'edited',
|
|
107
|
+
section: sectionSlug
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
const validOperations = [...editOperations, ...creationOperations, ...removeOperations];
|
|
112
|
+
throw new AddressingError(`Invalid operation: ${operation}`, 'INVALID_OPERATION', { operation, validOperations });
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=section-operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"section-operations.js","sourceRoot":"","sources":["../../src/shared/section-operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hierarchical slug utilities for the Document Linking System
|
|
3
|
+
*/
|
|
4
|
+
import type { HierarchicalSlug, SlugPathOperation } from '../types/linking.js';
|
|
5
|
+
/**
|
|
6
|
+
* Generate a hierarchical slug by combining parent slug with child title
|
|
7
|
+
*
|
|
8
|
+
* @param parentSlug - Parent slug path (e.g., "api/endpoints")
|
|
9
|
+
* @param childTitle - Title to convert to slug and append
|
|
10
|
+
* @returns Combined hierarchical slug (e.g., "api/endpoints/users")
|
|
11
|
+
*/
|
|
12
|
+
export declare function generateHierarchicalSlug(parentSlug: string, childTitle: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* Split a hierarchical slug path into component parts
|
|
15
|
+
*
|
|
16
|
+
* @param slugPath - Hierarchical slug path (e.g., "api/authentication/jwt-tokens")
|
|
17
|
+
* @returns Array of slug components (e.g., ["api", "authentication", "jwt-tokens"])
|
|
18
|
+
*/
|
|
19
|
+
export declare function splitSlugPath(slugPath: string): string[];
|
|
20
|
+
/**
|
|
21
|
+
* Join slug path components into a hierarchical slug
|
|
22
|
+
*
|
|
23
|
+
* @param parts - Array of slug components
|
|
24
|
+
* @returns Combined slug path with normalized separators
|
|
25
|
+
*/
|
|
26
|
+
export declare function joinSlugPath(parts: string[]): string;
|
|
27
|
+
/**
|
|
28
|
+
* Get the depth (nesting level) of a hierarchical slug
|
|
29
|
+
*
|
|
30
|
+
* @param slugPath - Hierarchical slug path
|
|
31
|
+
* @returns Number of levels in the hierarchy (e.g., "api/auth/jwt" returns 3)
|
|
32
|
+
*/
|
|
33
|
+
export declare function getSlugDepth(slugPath: string): number;
|
|
34
|
+
/**
|
|
35
|
+
* Get the parent slug from a hierarchical slug path
|
|
36
|
+
*
|
|
37
|
+
* @param slugPath - Hierarchical slug path (e.g., "api/auth/jwt")
|
|
38
|
+
* @returns Parent slug path (e.g., "api/auth") or undefined for top-level
|
|
39
|
+
*/
|
|
40
|
+
export declare function getParentSlug(slugPath: string): string | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* Get the leaf (final) component of a hierarchical slug
|
|
43
|
+
*
|
|
44
|
+
* @param slugPath - Hierarchical slug path (e.g., "api/auth/jwt-tokens")
|
|
45
|
+
* @returns Leaf component (e.g., "jwt-tokens")
|
|
46
|
+
*/
|
|
47
|
+
export declare function getSlugLeaf(slugPath: string): string;
|
|
48
|
+
/**
|
|
49
|
+
* Create a complete hierarchical slug structure with metadata
|
|
50
|
+
*
|
|
51
|
+
* @param slugPath - Hierarchical slug path
|
|
52
|
+
* @returns HierarchicalSlug object with full structure information
|
|
53
|
+
*/
|
|
54
|
+
export declare function createHierarchicalSlug(slugPath: string): HierarchicalSlug;
|
|
55
|
+
/**
|
|
56
|
+
* Check if one slug is an ancestor of another
|
|
57
|
+
*
|
|
58
|
+
* @param ancestorSlug - Potential ancestor slug path
|
|
59
|
+
* @param descendantSlug - Potential descendant slug path
|
|
60
|
+
* @returns True if ancestor is a parent/grandparent/etc. of descendant
|
|
61
|
+
*/
|
|
62
|
+
export declare function isSlugAncestor(ancestorSlug: string, descendantSlug: string): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Check if one slug is a direct child of another
|
|
65
|
+
*
|
|
66
|
+
* @param parentSlug - Potential parent slug path
|
|
67
|
+
* @param childSlug - Potential child slug path
|
|
68
|
+
* @returns True if child is a direct child of parent (one level deeper)
|
|
69
|
+
*/
|
|
70
|
+
export declare function isDirectChild(parentSlug: string, childSlug: string): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Get all direct children of a slug from a list of slugs
|
|
73
|
+
*
|
|
74
|
+
* @param parentSlug - Parent slug path
|
|
75
|
+
* @param allSlugs - Array of all available slug paths
|
|
76
|
+
* @returns Array of direct child slug paths
|
|
77
|
+
*/
|
|
78
|
+
export declare function getDirectChildren(parentSlug: string, allSlugs: string[]): string[];
|
|
79
|
+
/**
|
|
80
|
+
* Get all descendants (children, grandchildren, etc.) of a slug
|
|
81
|
+
*
|
|
82
|
+
* @param ancestorSlug - Ancestor slug path
|
|
83
|
+
* @param allSlugs - Array of all available slug paths
|
|
84
|
+
* @returns Array of descendant slug paths
|
|
85
|
+
*/
|
|
86
|
+
export declare function getAllDescendants(ancestorSlug: string, allSlugs: string[]): string[];
|
|
87
|
+
/**
|
|
88
|
+
* Calculate the relative path between two slug paths
|
|
89
|
+
*
|
|
90
|
+
* @param fromSlug - Source slug path
|
|
91
|
+
* @param toSlug - Target slug path
|
|
92
|
+
* @returns Relative path or operation result with error details
|
|
93
|
+
*/
|
|
94
|
+
export declare function getRelativeSlugPath(fromSlug: string, toSlug: string): SlugPathOperation;
|
|
95
|
+
/**
|
|
96
|
+
* Validate a hierarchical slug path structure
|
|
97
|
+
*
|
|
98
|
+
* @param slugPath - Slug path to validate
|
|
99
|
+
* @returns Validation result with success status and details
|
|
100
|
+
*/
|
|
101
|
+
export declare function validateSlugPath(slugPath: string): SlugPathOperation;
|
|
102
|
+
/**
|
|
103
|
+
* Normalize a slug path by removing extra separators and ensuring consistent format
|
|
104
|
+
*
|
|
105
|
+
* @param slugPath - Raw slug path to normalize
|
|
106
|
+
* @returns Normalized slug path
|
|
107
|
+
*/
|
|
108
|
+
export declare function normalizeSlugPath(slugPath: string): string;
|
|
109
|
+
//# sourceMappingURL=slug-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slug-utils.d.ts","sourceRoot":"","sources":["../../src/shared/slug-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG/E;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAiBvF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAYxD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAWpD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYrD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYlE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYpD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAiBzE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAWpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAW5E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMlF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMpF;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAgDvF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAgDpE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAc1D"}
|