@jsonstudio/llms 0.6.2172 → 0.6.2979
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/README.md +2 -0
- package/dist/conversion/compat/antigravity-session-signature.js +35 -1
- package/dist/conversion/compat/profiles/chat-gemini-cli.json +0 -7
- package/dist/conversion/compat/profiles/chat-gemini.json +0 -6
- package/dist/conversion/hub/core/detour-registry.d.ts +2 -0
- package/dist/conversion/hub/core/hub-context.d.ts +3 -1
- package/dist/conversion/hub/core/index.d.ts +1 -0
- package/dist/conversion/hub/core/stage-driver.js +2 -0
- package/dist/conversion/hub/format-adapters/anthropic-format-adapter.js +15 -4
- package/dist/conversion/hub/format-adapters/chat-format-adapter.js +15 -4
- package/dist/conversion/hub/format-adapters/gemini-format-adapter.js +15 -4
- package/dist/conversion/hub/format-adapters/responses-format-adapter.js +15 -4
- package/dist/conversion/hub/hub-feature.js +3 -2
- package/dist/conversion/hub/node-support.js +9 -4
- package/dist/conversion/hub/operation-table/operation-table-runner.js +10 -6
- package/dist/conversion/hub/operation-table/semantic-mappers/anthropic-mapper.js +2 -2
- package/dist/conversion/hub/operation-table/semantic-mappers/chat-mapper.js +10 -10
- package/dist/conversion/hub/operation-table/semantic-mappers/gemini-mapper.js +4 -8
- package/dist/conversion/hub/operation-table/semantic-mappers/responses-mapper.js +19 -65
- package/dist/conversion/hub/ops/operations.js +2 -121
- package/dist/conversion/hub/pipeline/compat/compat-engine.js +6 -0
- package/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.d.ts +1 -1
- package/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.js +33 -1042
- package/dist/conversion/hub/pipeline/compat/compat-profile-resolver.js +2 -0
- package/dist/conversion/hub/pipeline/compat/compat-profile-store.js +2 -0
- package/dist/conversion/hub/pipeline/compat/compat-types.d.ts +14 -17
- package/dist/conversion/hub/pipeline/compat/native-adapter-context.d.ts +3 -0
- package/dist/conversion/hub/pipeline/compat/native-adapter-context.js +39 -0
- package/dist/conversion/hub/pipeline/hub-pipeline.js +115 -262
- package/dist/conversion/hub/pipeline/session-identifiers.js +6 -196
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage1_format_parse/index.d.ts +1 -2
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage1_format_parse/index.js +37 -1
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/index.js +12 -86
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/semantic-lift.d.ts +14 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/semantic-lift.js +24 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/archive/shell-like-tool-call-normalization-fallback.d.ts +2 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/archive/shell-like-tool-call-normalization-fallback.js +157 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-capture-orchestration.d.ts +16 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-capture-orchestration.js +29 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-factories.js +3 -1
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/index.d.ts +2 -15
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/index.js +8 -595
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/responses-context-snapshot.d.ts +8 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/responses-context-snapshot.js +28 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-diagnostics.d.ts +2 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-diagnostics.js +4 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-snapshot.d.ts +10 -0
- package/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-snapshot.js +12 -0
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/context-merge.d.ts +3 -0
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/context-merge.js +30 -0
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/index.js +9 -129
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage2_format_build/index.d.ts +1 -4
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage2_format_build/index.js +9 -26
- package/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage3_compat/index.js +32 -14
- package/dist/conversion/hub/pipeline/stages/req_process/req_process_stage1_tool_governance/index.d.ts +2 -2
- package/dist/conversion/hub/pipeline/stages/req_process/req_process_stage1_tool_governance/index.js +48 -8
- package/dist/conversion/hub/pipeline/stages/req_process/req_process_stage2_route_select/index.js +18 -3
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/index.js +10 -198
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/stream-json-sniffer.d.ts +3 -0
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/stream-json-sniffer.js +81 -0
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage2_format_parse/index.d.ts +1 -2
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage2_format_parse/index.js +36 -1
- package/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage3_semantic_map/index.js +3 -1
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/chat-process-semantics-bridge.d.ts +6 -0
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/chat-process-semantics-bridge.js +17 -0
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/client-remap-protocol-switch.d.ts +9 -0
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/client-remap-protocol-switch.js +28 -0
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/index.d.ts +1 -2
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/index.js +14 -102
- package/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage2_sse_stream/index.js +3 -1
- package/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage1_tool_governance/index.js +12 -10
- package/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage2_finalize/index.js +6 -5
- package/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage3_servertool_orchestration/index.d.ts +11 -1
- package/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage3_servertool_orchestration/index.js +10 -32
- package/dist/conversion/hub/pipeline/stages/utils.js +17 -1
- package/dist/conversion/hub/pipeline/target-utils.js +14 -91
- package/dist/conversion/hub/pipelines/inbound.js +3 -1
- package/dist/conversion/hub/pipelines/outbound.js +2 -0
- package/dist/conversion/hub/policy/policy-engine.js +9 -3
- package/dist/conversion/hub/policy/protocol-spec.js +20 -148
- package/dist/conversion/hub/process/chat-process-anthropic-alias.d.ts +2 -0
- package/dist/conversion/hub/process/chat-process-anthropic-alias.js +36 -0
- package/dist/conversion/hub/process/chat-process-clock-directive-parser.d.ts +5 -0
- package/dist/conversion/hub/process/chat-process-clock-directive-parser.js +48 -0
- package/dist/conversion/hub/process/chat-process-clock-directives.d.ts +24 -0
- package/dist/conversion/hub/process/chat-process-clock-directives.js +98 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-directives.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-directives.js +42 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-finalize.d.ts +14 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-finalize.js +10 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-messages.d.ts +5 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-messages.js +10 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-orchestration.d.ts +30 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-orchestration.js +68 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-time-tag.d.ts +9 -0
- package/dist/conversion/hub/process/chat-process-clock-reminder-time-tag.js +18 -0
- package/dist/conversion/hub/process/chat-process-clock-reminders.d.ts +2 -0
- package/dist/conversion/hub/process/chat-process-clock-reminders.js +104 -0
- package/dist/conversion/hub/process/chat-process-clock-tool-schemas.d.ts +3 -0
- package/dist/conversion/hub/process/chat-process-clock-tool-schemas.js +233 -0
- package/dist/conversion/hub/process/chat-process-clock-tools.d.ts +6 -0
- package/dist/conversion/hub/process/chat-process-clock-tools.js +41 -0
- package/dist/conversion/hub/process/chat-process-continue-execution.d.ts +11 -0
- package/dist/conversion/hub/process/chat-process-continue-execution.js +82 -0
- package/dist/conversion/hub/process/chat-process-governance-context.d.ts +15 -0
- package/dist/conversion/hub/process/chat-process-governance-context.js +7 -0
- package/dist/conversion/hub/process/chat-process-governance-finalize.d.ts +16 -0
- package/dist/conversion/hub/process/chat-process-governance-finalize.js +11 -0
- package/dist/conversion/hub/process/chat-process-governance-orchestration.d.ts +9 -0
- package/dist/conversion/hub/process/chat-process-governance-orchestration.js +47 -0
- package/dist/conversion/hub/process/chat-process-governed-control-ops.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-governed-control-ops.js +5 -0
- package/dist/conversion/hub/process/chat-process-governed-filter-call.d.ts +12 -0
- package/dist/conversion/hub/process/chat-process-governed-filter-call.js +18 -0
- package/dist/conversion/hub/process/chat-process-governed-merge.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-governed-merge.js +11 -0
- package/dist/conversion/hub/process/chat-process-media.d.ts +3 -0
- package/dist/conversion/hub/process/chat-process-media.js +18 -0
- package/dist/conversion/hub/process/chat-process-node-result.d.ts +23 -0
- package/dist/conversion/hub/process/chat-process-node-result.js +24 -0
- package/dist/conversion/hub/process/chat-process-pending-tool-sync.d.ts +14 -0
- package/dist/conversion/hub/process/chat-process-pending-tool-sync.js +52 -0
- package/dist/conversion/hub/process/chat-process-post-governed-normalization.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-post-governed-normalization.js +16 -0
- package/dist/conversion/hub/process/chat-process-review.d.ts +2 -0
- package/dist/conversion/hub/process/chat-process-review.js +8 -0
- package/dist/conversion/hub/process/chat-process-servertool-orchestration.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-servertool-orchestration.js +22 -0
- package/dist/conversion/hub/process/chat-process-tool-normalization.d.ts +2 -0
- package/dist/conversion/hub/process/chat-process-tool-normalization.js +4 -0
- package/dist/conversion/hub/process/chat-process-web-search-intent.d.ts +12 -0
- package/dist/conversion/hub/process/chat-process-web-search-intent.js +13 -0
- package/dist/conversion/hub/process/chat-process-web-search-tool-schema.d.ts +3 -0
- package/dist/conversion/hub/process/chat-process-web-search-tool-schema.js +4 -0
- package/dist/conversion/hub/process/chat-process-web-search.d.ts +8 -0
- package/dist/conversion/hub/process/chat-process-web-search.js +26 -0
- package/dist/conversion/hub/process/chat-process.d.ts +2 -19
- package/dist/conversion/hub/process/chat-process.js +12 -1701
- package/dist/conversion/hub/process/client-inject-readiness.d.ts +1 -0
- package/dist/conversion/hub/process/client-inject-readiness.js +4 -0
- package/dist/conversion/hub/registry.js +5 -2
- package/dist/conversion/hub/response/chat-response-utils.js +5 -86
- package/dist/conversion/hub/response/provider-response.d.ts +9 -0
- package/dist/conversion/hub/response/provider-response.js +6 -21
- package/dist/conversion/hub/response/response-mappers.js +2 -26
- package/dist/conversion/hub/response/response-runtime.js +2 -93
- package/dist/conversion/hub/semantic-mappers/anthropic-mapper.d.ts +1 -0
- package/dist/conversion/hub/semantic-mappers/anthropic-mapper.js +1 -0
- package/dist/conversion/hub/semantic-mappers/chat-mapper.d.ts +1 -0
- package/dist/conversion/hub/semantic-mappers/chat-mapper.js +1 -0
- package/dist/conversion/hub/semantic-mappers/gemini-mapper.d.ts +1 -0
- package/dist/conversion/hub/semantic-mappers/gemini-mapper.js +1 -0
- package/dist/conversion/hub/semantic-mappers/responses-mapper.d.ts +1 -0
- package/dist/conversion/hub/semantic-mappers/responses-mapper.js +1 -0
- package/dist/conversion/hub/snapshot-recorder.js +10 -3
- package/dist/conversion/hub/standardized-bridge.js +11 -288
- package/dist/conversion/hub/tool-governance/engine.js +5 -0
- package/dist/conversion/hub/tool-governance/rules.js +10 -10
- package/dist/conversion/hub/tool-session-compat.d.ts +2 -2
- package/dist/conversion/hub/tool-session-compat.js +17 -231
- package/dist/conversion/hub/tool-surface/tool-surface-engine.js +5 -3
- package/dist/conversion/responses/responses-host-policy.js +2 -12
- package/dist/conversion/responses/responses-openai-bridge/response-payload.js +6 -82
- package/dist/conversion/responses/responses-openai-bridge/types.d.ts +1 -0
- package/dist/conversion/responses/responses-openai-bridge.js +21 -54
- package/dist/conversion/shared/anthropic-message-utils.js +151 -13
- package/dist/conversion/shared/args-mapping.js +2 -146
- package/dist/conversion/shared/bridge-actions.js +203 -718
- package/dist/conversion/shared/bridge-id-utils.js +5 -71
- package/dist/conversion/shared/bridge-instructions.js +2 -1
- package/dist/conversion/shared/bridge-message-types.d.ts +2 -0
- package/dist/conversion/shared/bridge-message-utils.js +1 -2
- package/dist/conversion/shared/bridge-metadata.d.ts +1 -0
- package/dist/conversion/shared/bridge-metadata.js +4 -0
- package/dist/conversion/shared/bridge-policies.js +5 -189
- package/dist/conversion/shared/chat-envelope-validator.js +2 -126
- package/dist/conversion/shared/chat-output-normalizer.js +2 -54
- package/dist/conversion/shared/compaction-detect.js +2 -57
- package/dist/conversion/shared/gemini-tool-utils.js +9 -524
- package/dist/conversion/shared/jsonish.js +3 -160
- package/dist/conversion/shared/mcp-injection.js +3 -169
- package/dist/conversion/shared/media.js +2 -7
- package/dist/conversion/shared/metadata-passthrough.js +9 -46
- package/dist/conversion/shared/openai-finalizer.js +2 -1
- package/dist/conversion/shared/openai-message-normalize.js +11 -283
- package/dist/conversion/shared/output-content-normalizer.js +9 -112
- package/dist/conversion/shared/payload-budget.js +2 -85
- package/dist/conversion/shared/protocol-state.js +11 -7
- package/dist/conversion/shared/reasoning-mapping.js +2 -6
- package/dist/conversion/shared/reasoning-normalizer.js +4 -1
- package/dist/conversion/shared/reasoning-tool-normalizer.js +14 -126
- package/dist/conversion/shared/reasoning-tool-parser.js +4 -87
- package/dist/conversion/shared/reasoning-utils.js +2 -6
- package/dist/conversion/shared/responses-conversation-store.js +4 -82
- package/dist/conversion/shared/responses-output-builder.js +11 -47
- package/dist/conversion/shared/responses-reasoning-registry.js +7 -1
- package/dist/conversion/shared/responses-request-adapter.d.ts +7 -1
- package/dist/conversion/shared/responses-request-adapter.js +14 -1
- package/dist/conversion/shared/responses-response-utils.js +6 -7
- package/dist/conversion/shared/responses-tool-utils.d.ts +1 -0
- package/dist/conversion/shared/responses-tool-utils.js +90 -14
- package/dist/conversion/shared/runtime-metadata.js +13 -5
- package/dist/conversion/shared/streaming-text-extractor.js +2 -7
- package/dist/conversion/shared/text-markup-normalizer/normalize.d.ts +1 -1
- package/dist/conversion/shared/text-markup-normalizer/normalize.js +43 -17
- package/dist/conversion/shared/text-markup-normalizer.d.ts +1 -0
- package/dist/conversion/shared/text-markup-normalizer.js +1 -0
- package/dist/conversion/shared/thought-signature-validator.js +3 -2
- package/dist/conversion/shared/tool-argument-repairer.js +2 -2
- package/dist/conversion/shared/tool-call-id-manager.js +5 -7
- package/dist/conversion/shared/tool-call-utils.js +3 -45
- package/dist/conversion/shared/tool-canonicalizer.js +25 -29
- package/dist/conversion/shared/tool-filter-pipeline.js +4 -99
- package/dist/conversion/shared/tool-governor.d.ts +6 -0
- package/dist/conversion/shared/tool-governor.js +43 -125
- package/dist/conversion/shared/tool-harvester.js +2 -8
- package/dist/conversion/shared/tool-mapping.js +2 -5
- package/dist/conversion/shared/tooling.d.ts +0 -4
- package/dist/conversion/shared/tooling.js +18 -0
- package/dist/native/router_hotpath_napi.node +0 -0
- package/dist/router/virtual-router/engine/provider-key/parse.d.ts +1 -6
- package/dist/router/virtual-router/engine/provider-key/parse.js +1 -43
- package/dist/router/virtual-router/engine/routing-state/store.js +48 -12
- package/dist/router/virtual-router/engine-logging.js +4 -3
- package/dist/router/virtual-router/engine-selection/alias-selection.js +45 -83
- package/dist/router/virtual-router/engine-selection/key-parsing.js +9 -23
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-directive-parser.d.ts +20 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-directive-parser.js +163 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-directives.d.ts +7 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-directives.js +103 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-orchestration-semantics.d.ts +10 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-orchestration-semantics.js +110 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-semantics.d.ts +8 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-semantics.js +281 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-time-tag-semantics.d.ts +1 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-time-tag-semantics.js +25 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminders-semantics.d.ts +4 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminders-semantics.js +44 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-tool-schema-semantics.d.ts +2 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-clock-tool-schema-semantics.js +62 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-governance-semantics.d.ts +40 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-governance-semantics.js +484 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-governed-filter-semantics.d.ts +9 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-governed-filter-semantics.js +64 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-node-result-semantics.d.ts +5 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-node-result-semantics.js +163 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-post-governed-normalization-semantics.d.ts +1 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-post-governed-normalization-semantics.js +49 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-servertool-orchestration-semantics.d.ts +30 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-servertool-orchestration-semantics.js +446 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-web-search-intent-semantics.d.ts +1 -0
- package/dist/router/virtual-router/engine-selection/native-chat-process-web-search-intent-semantics.js +49 -0
- package/dist/router/virtual-router/engine-selection/native-hub-bridge-action-semantics.d.ts +134 -0
- package/dist/router/virtual-router/engine-selection/native-hub-bridge-action-semantics.js +729 -0
- package/dist/router/virtual-router/engine-selection/native-hub-bridge-policy-semantics.d.ts +62 -0
- package/dist/router/virtual-router/engine-selection/native-hub-bridge-policy-semantics.js +338 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-edge-stage-semantics.d.ts +18 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-edge-stage-semantics.js +317 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-inbound-outbound-semantics.d.ts +22 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-inbound-outbound-semantics.js +426 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-orchestration-semantics.d.ts +57 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-orchestration-semantics.js +705 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-inbound-semantics.d.ts +46 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-inbound-semantics.js +503 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-outbound-semantics.d.ts +146 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-outbound-semantics.js +570 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-process-semantics.d.ts +25 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-process-semantics.js +148 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-resp-semantics.d.ts +25 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-resp-semantics.js +637 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-session-identifiers-semantics.d.ts +11 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-session-identifiers-semantics.js +207 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-target-semantics.d.ts +3 -0
- package/dist/router/virtual-router/engine-selection/native-hub-pipeline-target-semantics.js +128 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-analysis.d.ts +57 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-analysis.js +217 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-loader.d.ts +5 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-loader.js +284 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-policy.d.ts +5 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-policy.js +18 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-quota-buckets.d.ts +25 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath-quota-buckets.js +85 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath.d.ts +59 -0
- package/dist/router/virtual-router/engine-selection/native-router-hotpath.js +117 -0
- package/dist/router/virtual-router/engine-selection/native-shared-conversion-semantics.d.ts +76 -0
- package/dist/router/virtual-router/engine-selection/native-shared-conversion-semantics.js +1166 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-alias-selection-semantics.d.ts +16 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-alias-selection-semantics.js +96 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-actions-semantics.d.ts +6 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-actions-semantics.js +85 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-semantics.d.ts +9 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-semantics.js +70 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-state-semantics.d.ts +2 -0
- package/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-state-semantics.js +76 -0
- package/dist/router/virtual-router/engine-selection/route-utils.js +1 -1
- package/dist/router/virtual-router/engine-selection/tier-selection-antigravity-session-lease.d.ts +10 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-antigravity-session-lease.js +231 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-antigravity-target-split.d.ts +4 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-antigravity-target-split.js +43 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-quota-integration.d.ts +27 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-quota-integration.js +116 -0
- package/dist/router/virtual-router/engine-selection/tier-selection-select.d.ts +1 -1
- package/dist/router/virtual-router/engine-selection/tier-selection-select.js +29 -129
- package/dist/router/virtual-router/engine-selection/tier-selection.js +2 -265
- package/dist/router/virtual-router/engine.js +258 -249
- package/dist/router/virtual-router/features.js +2 -2
- package/dist/router/virtual-router/routing-instructions.d.ts +5 -7
- package/dist/router/virtual-router/routing-instructions.js +93 -66
- package/dist/router/virtual-router/routing-stop-message-actions.js +91 -112
- package/dist/router/virtual-router/routing-stop-message-parser.js +9 -132
- package/dist/router/virtual-router/routing-stop-message-state-codec.d.ts +1 -0
- package/dist/router/virtual-router/routing-stop-message-state-codec.js +58 -71
- package/dist/router/virtual-router/sticky-session-store.js +4 -2
- package/dist/router/virtual-router/stop-message-file-resolver.d.ts +1 -0
- package/dist/router/virtual-router/stop-message-file-resolver.js +10 -0
- package/dist/router/virtual-router/stop-message-state-sync.d.ts +1 -1
- package/dist/router/virtual-router/stop-message-state-sync.js +3 -7
- package/dist/router/virtual-router/token-counter.js +0 -9
- package/dist/router/virtual-router/types.d.ts +9 -7
- package/dist/servertool/clock/config.js +23 -51
- package/dist/servertool/clock/io.js +1 -0
- package/dist/servertool/clock/session-scope.d.ts +2 -2
- package/dist/servertool/clock/session-scope.js +5 -47
- package/dist/servertool/engine.d.ts +9 -0
- package/dist/servertool/engine.js +196 -79
- package/dist/servertool/handlers/antigravity-thought-signature-bootstrap.js +2 -2
- package/dist/servertool/handlers/clock.js +1 -1
- package/dist/servertool/handlers/continue-execution.js +8 -4
- package/dist/servertool/handlers/followup-request-builder.js +18 -1
- package/dist/servertool/handlers/gemini-empty-reply-continue.js +7 -1
- package/dist/servertool/handlers/review.js +180 -0
- package/dist/servertool/handlers/stop-message-auto/blocked-report.js +59 -1
- package/dist/servertool/handlers/stop-message-auto/iflow-followup.d.ts +23 -2
- package/dist/servertool/handlers/stop-message-auto/iflow-followup.js +397 -89
- package/dist/servertool/handlers/stop-message-auto/routing-state.d.ts +5 -15
- package/dist/servertool/handlers/stop-message-auto/routing-state.js +29 -55
- package/dist/servertool/handlers/stop-message-auto/runtime-utils.d.ts +6 -0
- package/dist/servertool/handlers/stop-message-auto/runtime-utils.js +35 -61
- package/dist/servertool/handlers/stop-message-auto.js +392 -76
- package/dist/servertool/server-side-tools.d.ts +1 -0
- package/dist/servertool/server-side-tools.js +90 -52
- package/dist/servertool/types.d.ts +17 -0
- package/dist/tools/apply-patch/patch-text/normalize.js +11 -0
- package/dist/tools/exec-command/validator.d.ts +4 -1
- package/dist/tools/exec-command/validator.js +87 -3
- package/dist/tools/tool-registry.d.ts +7 -1
- package/dist/tools/tool-registry.js +3 -2
- package/package.json +115 -7
- package/dist/servertool/handlers/stop-message-stage-policy/bd-runtime.d.ts +0 -18
- package/dist/servertool/handlers/stop-message-stage-policy/bd-runtime.js +0 -398
- package/dist/servertool/handlers/stop-message-stage-policy/decision.d.ts +0 -9
- package/dist/servertool/handlers/stop-message-stage-policy/decision.js +0 -127
- package/dist/servertool/handlers/stop-message-stage-policy/observation.d.ts +0 -2
- package/dist/servertool/handlers/stop-message-stage-policy/observation.js +0 -179
- package/dist/servertool/handlers/stop-message-stage-policy/templates.d.ts +0 -4
- package/dist/servertool/handlers/stop-message-stage-policy/templates.js +0 -96
- package/dist/servertool/handlers/stop-message-stage-policy/text-utils.d.ts +0 -9
- package/dist/servertool/handlers/stop-message-stage-policy/text-utils.js +0 -89
- package/dist/servertool/handlers/stop-message-stage-policy/types.d.ts +0 -59
- package/dist/servertool/handlers/stop-message-stage-policy.d.ts +0 -3
- package/dist/servertool/handlers/stop-message-stage-policy.js +0 -2
- /package/dist/servertool/handlers/{stop-message-stage-policy/types.js → review.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jsonstudio/llms",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.2979",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"scripts": {
|
|
9
|
-
"build": "node scripts/clean-dist.mjs && node scripts/bump-version.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
10
|
-
"build:dev": "node scripts/clean-dist.mjs && node scripts/bump-version.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
11
|
-
"build:ci": "node scripts/clean-dist.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
12
|
-
"build:coverage": "node scripts/clean-dist.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.coverage.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
9
|
+
"build": "node scripts/clean-dist.mjs && node scripts/build-native-hotpath.mjs && node scripts/bump-version.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
10
|
+
"build:dev": "node scripts/clean-dist.mjs && node scripts/build-native-hotpath.mjs && node scripts/bump-version.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
11
|
+
"build:ci": "node scripts/clean-dist.mjs && node scripts/build-native-hotpath.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
12
|
+
"build:coverage": "node scripts/clean-dist.mjs && node scripts/build-native-hotpath.mjs && node ./node_modules/typescript/bin/tsc -p tsconfig.coverage.json && node scripts/tools/copy-compat-profiles.mjs",
|
|
13
13
|
"lint": "eslint --no-eslintrc -c .eslintrc.json src --ext .ts --no-cache",
|
|
14
14
|
"lint:fix": "eslint --no-eslintrc -c .eslintrc.json src --ext .ts --no-cache --fix",
|
|
15
15
|
"postbuild": "node scripts/tests/run-matrix-ci.mjs",
|
|
@@ -28,10 +28,118 @@
|
|
|
28
28
|
"replay:responses:chat-sse": "node scripts/exp3-responses-sse-to-chat-sse.mjs",
|
|
29
29
|
"replay:responses:loop": "node scripts/exp4-responses-sse-loop.mjs",
|
|
30
30
|
"test:quota-manager": "npm run build:dev && node scripts/tests/quota-manager-402-reset.mjs",
|
|
31
|
-
"test:virtual-router": "npm run build:dev && node scripts/tests/virtual-router-prefer-autoclear.mjs && node scripts/tests/virtual-router-dry-run.mjs && node scripts/tests/virtual-router-context.mjs && node scripts/tests/virtual-router-antigravity-alias-pin.mjs && node scripts/tests/virtual-router-antigravity-session-binding.mjs && node scripts/tests/virtual-router-antigravity-auth-verify.mjs",
|
|
31
|
+
"test:virtual-router": "npm run build:dev && node scripts/tests/virtual-router-prefer-autoclear.mjs && node scripts/tests/virtual-router-dry-run.mjs && node scripts/tests/virtual-router-context.mjs && node scripts/tests/virtual-router-antigravity-alias-pin.mjs && node scripts/tests/virtual-router-antigravity-session-binding.mjs && node scripts/tests/virtual-router-antigravity-auth-verify.mjs && node scripts/tests/virtual-router-native-hotpath.mjs && node scripts/tests/virtual-router-native-parity.mjs",
|
|
32
32
|
"test:virtual-router-health": "npm run build:dev && node scripts/tests/virtual-router-health.mjs",
|
|
33
33
|
"test:golden": "npm run build:ci && node scripts/tests/chat-golden-roundtrip.mjs && node scripts/tests/anthropic-golden-roundtrip.mjs",
|
|
34
|
-
"test:coverage": "node
|
|
34
|
+
"test:coverage:virtual-router-hotpath": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-hotpath --include=dist/router/virtual-router/engine-selection/native-router-hotpath-quota-buckets.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-native-hotpath.mjs",
|
|
35
|
+
"test:coverage:virtual-router-tier-selection": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-tier-selection --include=dist/router/virtual-router/engine-selection/tier-selection-quota-integration.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-tier-selection.mjs",
|
|
36
|
+
"test:coverage:virtual-router-alias-selection-semantics": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-alias-selection-semantics --include=dist/router/virtual-router/engine-selection/native-virtual-router-alias-selection-semantics.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-alias-selection-semantics.mjs",
|
|
37
|
+
"test:coverage:virtual-router-stop-message-parser": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-stop-message-parser --include=dist/router/virtual-router/routing-stop-message-parser.js --include=dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-semantics.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-stop-message-parser.mjs",
|
|
38
|
+
"test:coverage:virtual-router-stop-message-state-codec": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-stop-message-state-codec --include=dist/router/virtual-router/routing-stop-message-state-codec.js --include=dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-state-semantics.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-stop-message-state-codec.mjs",
|
|
39
|
+
"test:coverage:virtual-router-stop-message-actions": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-stop-message-actions --include=dist/router/virtual-router/routing-stop-message-actions.js --include=dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-actions-semantics.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-stop-message-actions.mjs",
|
|
40
|
+
"test:coverage:hub-resp-inbound-sse-stream-sniffer": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-inbound-sse-stream-sniffer --include=dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/stream-json-sniffer.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-inbound-sse-stream-sniffer.mjs",
|
|
41
|
+
"test:coverage:hub-req-inbound-context-tool-snapshot": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-inbound-context-tool-snapshot --include=dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-*.js --exclude=scripts/** node scripts/tests/coverage-hub-req-inbound-context-tool-snapshot.mjs",
|
|
42
|
+
"test:coverage:hub-chat-process-media": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-media --include=dist/conversion/hub/process/chat-process-media.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-media.mjs",
|
|
43
|
+
"test:coverage:hub-chat-process-web-search-intent": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-web-search-intent --include=dist/conversion/hub/process/chat-process-web-search-intent.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-web-search-intent.mjs",
|
|
44
|
+
"test:coverage:hub-chat-process-web-search": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-web-search --include=dist/conversion/hub/process/chat-process-web-search.js --include=dist/conversion/hub/process/chat-process-web-search-tool-schema.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-web-search.mjs",
|
|
45
|
+
"test:coverage:hub-chat-process-anthropic-alias": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-anthropic-alias --include=dist/conversion/hub/process/chat-process-anthropic-alias.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-anthropic-alias.mjs",
|
|
46
|
+
"test:coverage:hub-chat-process-governed-merge": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governed-merge --include=dist/conversion/hub/process/chat-process-governed-merge.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governed-merge.mjs",
|
|
47
|
+
"test:coverage:hub-chat-process-governed-control-ops": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governed-control-ops --include=dist/conversion/hub/process/chat-process-governed-control-ops.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governed-control-ops.mjs",
|
|
48
|
+
"test:coverage:hub-chat-process-servertool-orchestration": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-servertool-orchestration --include=dist/conversion/hub/process/chat-process-servertool-orchestration.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-servertool-orchestration.mjs",
|
|
49
|
+
"test:coverage:hub-chat-process-post-governed-normalization": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-post-governed-normalization --include=dist/conversion/hub/process/chat-process-post-governed-normalization.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-post-governed-normalization.mjs",
|
|
50
|
+
"test:coverage:hub-chat-process-governed-filter-call": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governed-filter-call --include=dist/conversion/hub/process/chat-process-governed-filter-call.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governed-filter-call.mjs",
|
|
51
|
+
"test:coverage:hub-chat-process-governance-finalize": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governance-finalize --include=dist/conversion/hub/process/chat-process-governance-finalize.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governance-finalize.mjs",
|
|
52
|
+
"test:coverage:hub-chat-process-governance-context": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governance-context --include=dist/conversion/hub/process/chat-process-governance-context.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governance-context.mjs",
|
|
53
|
+
"test:coverage:hub-chat-process-governance-orchestration": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-governance-orchestration --include=dist/conversion/hub/process/chat-process-governance-orchestration.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-governance-orchestration.mjs",
|
|
54
|
+
"test:coverage:hub-chat-process-node-result": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-node-result --include=dist/conversion/hub/process/chat-process-node-result.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-node-result.mjs",
|
|
55
|
+
"test:coverage:hub-chat-process-tool-normalization": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-tool-normalization --include=dist/conversion/hub/process/chat-process-tool-normalization.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-tool-normalization.mjs",
|
|
56
|
+
"test:coverage:hub-chat-process-clock-directive-parser": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-directive-parser --include=dist/conversion/hub/process/chat-process-clock-directive-parser.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-directive-parser.mjs",
|
|
57
|
+
"test:coverage:hub-chat-process-clock-directives": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-directives --include=dist/conversion/hub/process/chat-process-clock-directives.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-directives.mjs",
|
|
58
|
+
"test:coverage:hub-chat-process-clock-directives-fallback": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-directives-fallback --include=dist/conversion/hub/process/chat-process-clock-directives.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-directives-fallback.mjs",
|
|
59
|
+
"test:coverage:hub-chat-process-clock-reminder-directives": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-reminder-directives --include=dist/conversion/hub/process/chat-process-clock-reminder-directives.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-reminder-directives.mjs",
|
|
60
|
+
"test:coverage:hub-chat-process-clock-reminder-finalize": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-reminder-finalize --include=dist/conversion/hub/process/chat-process-clock-reminder-finalize.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-reminder-finalize.mjs",
|
|
61
|
+
"test:coverage:hub-chat-process-clock-reminder-messages": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-reminder-messages --include=dist/conversion/hub/process/chat-process-clock-reminder-messages.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-reminder-messages.mjs",
|
|
62
|
+
"test:coverage:hub-chat-process-clock-reminder-orchestration": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-reminder-orchestration --include=dist/conversion/hub/process/chat-process-clock-reminder-orchestration.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-reminder-orchestration.mjs",
|
|
63
|
+
"test:coverage:hub-chat-process-clock-reminder-time-tag": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-reminder-time-tag --include=dist/conversion/hub/process/chat-process-clock-reminder-time-tag.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-reminder-time-tag.mjs",
|
|
64
|
+
"test:coverage:native-chat-process-clock-reminder-semantics": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-native-chat-process-clock-reminder-semantics --include=dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-semantics.js --exclude=scripts/** node scripts/tests/coverage-native-chat-process-clock-reminder-semantics.mjs",
|
|
65
|
+
"test:coverage:hub-chat-process-clock-tools": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-clock-tools --include=dist/conversion/hub/process/chat-process-clock-tool*.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-clock-tools.mjs",
|
|
66
|
+
"test:coverage:hub-chat-process-continue-execution": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-continue-execution --include=dist/conversion/hub/process/chat-process-continue-execution.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-continue-execution.mjs",
|
|
67
|
+
"test:coverage:native-chat-process-governance-semantics": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-native-chat-process-governance-semantics --include=dist/router/virtual-router/engine-selection/native-chat-process-governance-semantics.js --exclude=scripts/** node scripts/tests/coverage-native-chat-process-governance-semantics.mjs",
|
|
68
|
+
"test:coverage:native-chat-process-servertool-orchestration-semantics": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-native-chat-process-servertool-orchestration-semantics --include=dist/router/virtual-router/engine-selection/native-chat-process-servertool-orchestration-semantics.js --exclude=scripts/** node scripts/tests/coverage-native-chat-process-servertool-orchestration-semantics.mjs",
|
|
69
|
+
"test:coverage:hub-chat-process-pending-tool-sync": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-pending-tool-sync --include=dist/conversion/hub/process/chat-process-pending-tool-sync.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-pending-tool-sync.mjs",
|
|
70
|
+
"test:coverage:hub-chat-process-entry-client-inject": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-chat-process-entry-client-inject --include=dist/conversion/hub/process/chat-process.js --include=dist/conversion/hub/process/client-inject-readiness.js --exclude=scripts/** node scripts/tests/coverage-hub-chat-process-entry-client-inject.mjs",
|
|
71
|
+
"test:coverage:hub-req-inbound-semantic-lift": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-inbound-semantic-lift --include=dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/semantic-lift.js --exclude=scripts/** node scripts/tests/coverage-hub-req-inbound-semantic-lift.mjs",
|
|
72
|
+
"test:coverage:hub-req-inbound-context-capture-orchestration": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-inbound-context-capture-orchestration --include=dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-capture-orchestration.js --exclude=scripts/** node scripts/tests/coverage-hub-req-inbound-context-capture-orchestration.mjs",
|
|
73
|
+
"test:coverage:hub-req-inbound-responses-context-snapshot": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-inbound-responses-context-snapshot --include=dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/responses-context-snapshot.js --exclude=scripts/** node scripts/tests/coverage-hub-req-inbound-responses-context-snapshot.mjs",
|
|
74
|
+
"test:coverage:hub-req-outbound-context-merge": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-outbound-context-merge --include=dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/context-merge.js --exclude=scripts/** node scripts/tests/coverage-hub-req-outbound-context-merge.mjs",
|
|
75
|
+
"test:coverage:hub-req-process-route-select": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-process-route-select --include=dist/conversion/hub/pipeline/stages/req_process/req_process_stage2_route_select/index.js --include=dist/router/virtual-router/engine-selection/native-hub-pipeline-req-process-semantics.js --exclude=scripts/** node scripts/tests/coverage-hub-req-process-route-select.mjs",
|
|
76
|
+
"test:compare:hub-req-process-route-select": "npm run build:ci && node scripts/tests/hub-req-process-route-select-v1-v2-compare.mjs",
|
|
77
|
+
"test:coverage:hub-resp-outbound-client-semantics": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-outbound-client-semantics --include=dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/chat-process-semantics-bridge.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-outbound-client-semantics.mjs",
|
|
78
|
+
"test:coverage:hub-resp-outbound-client-remap-switch": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-outbound-client-remap-switch --include=dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/client-remap-protocol-switch.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-outbound-client-remap-protocol-switch.mjs",
|
|
79
|
+
"test:coverage:virtual-router-tier-antigravity-session-lease": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-tier-antigravity-session-lease --include=dist/router/virtual-router/engine-selection/tier-selection-antigravity-session-lease.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-tier-antigravity-session-lease.mjs",
|
|
80
|
+
"test:coverage:virtual-router-tier-antigravity-target-split": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-virtual-router-tier-antigravity-target-split --include=dist/router/virtual-router/engine-selection/tier-selection-antigravity-target-split.js --exclude=scripts/** node scripts/tests/coverage-virtual-router-tier-antigravity-target-split.mjs",
|
|
81
|
+
"test:coverage": "node scripts/run-ci-coverage.mjs",
|
|
82
|
+
"verify:module-blackbox": "node scripts/tests/module-blackbox-gate.mjs",
|
|
83
|
+
"verify:shadow-gate": "node scripts/check-shadow-coverage-gate.mjs",
|
|
84
|
+
"verify:shadow-gate:all": "node scripts/verify-shadow-gate-all.mjs",
|
|
85
|
+
"verify:shadow-gate:virtual-router-hotpath": "npm run test:coverage:virtual-router-hotpath && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-hotpath/coverage-summary.json --module virtual-router.hotpath.quota-buckets && node scripts/promote-shadow-module.mjs --module virtual-router.hotpath.quota-buckets",
|
|
86
|
+
"verify:shadow-gate:virtual-router-tier-selection": "npm run test:coverage:virtual-router-tier-selection && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-tier-selection/coverage-summary.json --module virtual-router.tier-selection-integration && node scripts/promote-shadow-module.mjs --module virtual-router.tier-selection-integration",
|
|
87
|
+
"verify:shadow-gate:virtual-router-alias-selection-semantics": "npm run test:coverage:virtual-router-alias-selection-semantics && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-alias-selection-semantics/coverage-summary.json --module virtual-router.alias-selection-semantics && node scripts/promote-shadow-module.mjs --module virtual-router.alias-selection-semantics",
|
|
88
|
+
"verify:shadow-gate:virtual-router-stop-message-parser": "npm run test:coverage:virtual-router-stop-message-parser && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-stop-message-parser/coverage-summary.json --module virtual-router.stop-message-parser && node scripts/promote-shadow-module.mjs --module virtual-router.stop-message-parser",
|
|
89
|
+
"verify:shadow-gate:virtual-router-stop-message-state-codec": "npm run test:coverage:virtual-router-stop-message-state-codec && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-stop-message-state-codec/coverage-summary.json --module virtual-router.stop-message-state-codec && node scripts/promote-shadow-module.mjs --module virtual-router.stop-message-state-codec",
|
|
90
|
+
"verify:shadow-gate:virtual-router-stop-message-actions": "npm run test:coverage:virtual-router-stop-message-actions && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-stop-message-actions/coverage-summary.json --module virtual-router.stop-message-actions && node scripts/promote-shadow-module.mjs --module virtual-router.stop-message-actions",
|
|
91
|
+
"verify:shadow-gate:hub-resp-inbound-sse-stream-sniffer": "npm run test:coverage:hub-resp-inbound-sse-stream-sniffer && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-inbound-sse-stream-sniffer/coverage-summary.json --module hub.resp-inbound.sse-stream-json-sniffer && node scripts/promote-shadow-module.mjs --module hub.resp-inbound.sse-stream-json-sniffer",
|
|
92
|
+
"verify:shadow-gate:hub-req-inbound-context-tool-snapshot": "npm run test:coverage:hub-req-inbound-context-tool-snapshot && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-inbound-context-tool-snapshot/coverage-summary.json --module hub.req-inbound.context-tool-output-snapshot && node scripts/promote-shadow-module.mjs --module hub.req-inbound.context-tool-output-snapshot",
|
|
93
|
+
"verify:shadow-gate:hub-chat-process-media": "npm run test:coverage:hub-chat-process-media && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-media/coverage-summary.json --module hub.chat-process.media-attachments && node scripts/promote-shadow-module.mjs --module hub.chat-process.media-attachments",
|
|
94
|
+
"verify:shadow-gate:hub-chat-process-web-search-intent": "npm run test:coverage:hub-chat-process-web-search-intent && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-web-search-intent/coverage-summary.json --module hub.chat-process.web-search-intent && node scripts/promote-shadow-module.mjs --module hub.chat-process.web-search-intent",
|
|
95
|
+
"verify:shadow-gate:hub-chat-process-web-search": "npm run test:coverage:hub-chat-process-web-search && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-web-search/coverage-summary.json --module hub.chat-process.web-search && node scripts/promote-shadow-module.mjs --module hub.chat-process.web-search",
|
|
96
|
+
"verify:shadow-gate:hub-chat-process-anthropic-alias": "npm run test:coverage:hub-chat-process-anthropic-alias && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-anthropic-alias/coverage-summary.json --module hub.chat-process.anthropic-alias && node scripts/promote-shadow-module.mjs --module hub.chat-process.anthropic-alias",
|
|
97
|
+
"verify:shadow-gate:hub-chat-process-governed-merge": "npm run test:coverage:hub-chat-process-governed-merge && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governed-merge/coverage-summary.json --module hub.chat-process.governed-merge && node scripts/promote-shadow-module.mjs --module hub.chat-process.governed-merge",
|
|
98
|
+
"verify:shadow-gate:hub-chat-process-governed-control-ops": "npm run test:coverage:hub-chat-process-governed-control-ops && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governed-control-ops/coverage-summary.json --module hub.chat-process.governed-control-ops && node scripts/promote-shadow-module.mjs --module hub.chat-process.governed-control-ops",
|
|
99
|
+
"verify:shadow-gate:hub-chat-process-servertool-orchestration": "npm run test:coverage:hub-chat-process-servertool-orchestration && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-servertool-orchestration/coverage-summary.json --module hub.chat-process.servertool-orchestration && node scripts/promote-shadow-module.mjs --module hub.chat-process.servertool-orchestration",
|
|
100
|
+
"verify:shadow-gate:hub-chat-process-post-governed-normalization": "npm run test:coverage:hub-chat-process-post-governed-normalization && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-post-governed-normalization/coverage-summary.json --module hub.chat-process.post-governed-normalization && node scripts/promote-shadow-module.mjs --module hub.chat-process.post-governed-normalization",
|
|
101
|
+
"verify:shadow-gate:hub-chat-process-governed-filter-call": "npm run test:coverage:hub-chat-process-governed-filter-call && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governed-filter-call/coverage-summary.json --module hub.chat-process.governed-filter-call && node scripts/promote-shadow-module.mjs --module hub.chat-process.governed-filter-call",
|
|
102
|
+
"verify:shadow-gate:hub-chat-process-governance-finalize": "npm run test:coverage:hub-chat-process-governance-finalize && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governance-finalize/coverage-summary.json --module hub.chat-process.governance-finalize && node scripts/promote-shadow-module.mjs --module hub.chat-process.governance-finalize",
|
|
103
|
+
"verify:shadow-gate:hub-chat-process-governance-context": "npm run test:coverage:hub-chat-process-governance-context && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governance-context/coverage-summary.json --module hub.chat-process.governance-context && node scripts/promote-shadow-module.mjs --module hub.chat-process.governance-context",
|
|
104
|
+
"verify:shadow-gate:hub-chat-process-governance-orchestration": "npm run test:coverage:hub-chat-process-governance-orchestration && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-governance-orchestration/coverage-summary.json --module hub.chat-process.governance-orchestration && node scripts/promote-shadow-module.mjs --module hub.chat-process.governance-orchestration",
|
|
105
|
+
"verify:shadow-gate:hub-chat-process-node-result": "npm run test:coverage:hub-chat-process-node-result && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-node-result/coverage-summary.json --module hub.chat-process.node-result && node scripts/promote-shadow-module.mjs --module hub.chat-process.node-result",
|
|
106
|
+
"verify:shadow-gate:hub-chat-process-tool-normalization": "npm run test:coverage:hub-chat-process-tool-normalization && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-tool-normalization/coverage-summary.json --module hub.chat-process.tool-normalization && node scripts/promote-shadow-module.mjs --module hub.chat-process.tool-normalization",
|
|
107
|
+
"verify:shadow-gate:hub-chat-process-clock-directive-parser": "npm run test:coverage:hub-chat-process-clock-directive-parser && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-directive-parser/coverage-summary.json --module hub.chat-process.clock-directive-parser && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-directive-parser",
|
|
108
|
+
"verify:shadow-gate:hub-chat-process-clock-directives": "npm run test:coverage:hub-chat-process-clock-directives && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-directives/coverage-summary.json --module hub.chat-process.clock-directives && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-directives",
|
|
109
|
+
"verify:shadow-gate:hub-chat-process-clock-directives-fallback": "npm run test:coverage:hub-chat-process-clock-directives-fallback && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-directives-fallback/coverage-summary.json --module hub.chat-process.clock-directives-fallback && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-directives-fallback",
|
|
110
|
+
"verify:shadow-gate:hub-chat-process-clock-reminder-directives": "npm run test:coverage:hub-chat-process-clock-reminder-directives && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-reminder-directives/coverage-summary.json --module hub.chat-process.clock-reminder-directives && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-reminder-directives",
|
|
111
|
+
"verify:shadow-gate:hub-chat-process-clock-reminder-finalize": "npm run test:coverage:hub-chat-process-clock-reminder-finalize && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-reminder-finalize/coverage-summary.json --module hub.chat-process.clock-reminder-finalize && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-reminder-finalize",
|
|
112
|
+
"verify:shadow-gate:hub-chat-process-clock-reminder-messages": "npm run test:coverage:hub-chat-process-clock-reminder-messages && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-reminder-messages/coverage-summary.json --module hub.chat-process.clock-reminder-messages && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-reminder-messages",
|
|
113
|
+
"verify:shadow-gate:hub-chat-process-clock-reminder-orchestration": "npm run test:coverage:hub-chat-process-clock-reminder-orchestration && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-reminder-orchestration/coverage-summary.json --module hub.chat-process.clock-reminder-orchestration && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-reminder-orchestration",
|
|
114
|
+
"verify:shadow-gate:hub-chat-process-clock-reminder-time-tag": "npm run test:coverage:hub-chat-process-clock-reminder-time-tag && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-reminder-time-tag/coverage-summary.json --module hub.chat-process.clock-reminder-time-tag && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-reminder-time-tag",
|
|
115
|
+
"verify:shadow-gate:hub-chat-process-clock-tools": "npm run test:coverage:hub-chat-process-clock-tools && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-clock-tools/coverage-summary.json --module hub.chat-process.clock-tools && node scripts/promote-shadow-module.mjs --module hub.chat-process.clock-tools",
|
|
116
|
+
"verify:shadow-gate:hub-chat-process-continue-execution": "npm run test:coverage:hub-chat-process-continue-execution && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-continue-execution/coverage-summary.json --module hub.chat-process.continue-execution && node scripts/promote-shadow-module.mjs --module hub.chat-process.continue-execution",
|
|
117
|
+
"verify:shadow-gate:hub-chat-process-pending-tool-sync": "npm run test:coverage:hub-chat-process-pending-tool-sync && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-pending-tool-sync/coverage-summary.json --module hub.chat-process.pending-tool-sync && node scripts/promote-shadow-module.mjs --module hub.chat-process.pending-tool-sync",
|
|
118
|
+
"verify:shadow-gate:hub-chat-process-entry-client-inject": "npm run test:coverage:hub-chat-process-entry-client-inject && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-chat-process-entry-client-inject/coverage-summary.json --module hub.chat-process.entry-client-inject && node scripts/promote-shadow-module.mjs --module hub.chat-process.entry-client-inject",
|
|
119
|
+
"verify:shadow-gate:hub-req-inbound-semantic-lift": "npm run test:coverage:hub-req-inbound-semantic-lift && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-inbound-semantic-lift/coverage-summary.json --module hub.req-inbound.semantic-lift && node scripts/promote-shadow-module.mjs --module hub.req-inbound.semantic-lift",
|
|
120
|
+
"verify:shadow-gate:hub-req-inbound-context-capture-orchestration": "npm run test:coverage:hub-req-inbound-context-capture-orchestration && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-inbound-context-capture-orchestration/coverage-summary.json --module hub.req-inbound.context-capture-orchestration && node scripts/promote-shadow-module.mjs --module hub.req-inbound.context-capture-orchestration",
|
|
121
|
+
"verify:shadow-gate:hub-req-inbound-responses-context-snapshot": "npm run test:coverage:hub-req-inbound-responses-context-snapshot && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-inbound-responses-context-snapshot/coverage-summary.json --module hub.req-inbound.responses-context-snapshot && node scripts/promote-shadow-module.mjs --module hub.req-inbound.responses-context-snapshot",
|
|
122
|
+
"verify:shadow-gate:hub-req-outbound-context-merge": "npm run test:coverage:hub-req-outbound-context-merge && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-outbound-context-merge/coverage-summary.json --module hub.req-outbound.context-merge && node scripts/promote-shadow-module.mjs --module hub.req-outbound.context-merge",
|
|
123
|
+
"verify:shadow-gate:hub-req-process-route-select": "npm run test:coverage:hub-req-process-route-select && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-process-route-select/coverage-summary.json --module hub.req-process.route-select && node scripts/promote-shadow-module.mjs --module hub.req-process.route-select",
|
|
124
|
+
"verify:shadow-gate:hub-resp-outbound-client-semantics": "npm run test:coverage:hub-resp-outbound-client-semantics && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-outbound-client-semantics/coverage-summary.json --module hub.resp-outbound.chat-process-semantics-bridge && node scripts/promote-shadow-module.mjs --module hub.resp-outbound.chat-process-semantics-bridge",
|
|
125
|
+
"verify:shadow-gate:hub-resp-outbound-client-remap-switch": "npm run test:coverage:hub-resp-outbound-client-remap-switch && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-outbound-client-remap-switch/coverage-summary.json --module hub.resp-outbound.client-remap-protocol-switch && node scripts/promote-shadow-module.mjs --module hub.resp-outbound.client-remap-protocol-switch",
|
|
126
|
+
"verify:shadow-gate:virtual-router-tier-antigravity-session-lease": "npm run test:coverage:virtual-router-tier-antigravity-session-lease && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-tier-antigravity-session-lease/coverage-summary.json --module virtual-router.tier-selection.antigravity-session-lease && node scripts/promote-shadow-module.mjs --module virtual-router.tier-selection.antigravity-session-lease",
|
|
127
|
+
"verify:shadow-gate:virtual-router-tier-antigravity-target-split": "npm run test:coverage:virtual-router-tier-antigravity-target-split && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-virtual-router-tier-antigravity-target-split/coverage-summary.json --module virtual-router.tier-selection.antigravity-target-split && node scripts/promote-shadow-module.mjs --module virtual-router.tier-selection.antigravity-target-split",
|
|
128
|
+
"verify:file-line-limit": "node scripts/check-file-line-limit.mjs",
|
|
129
|
+
"test:coverage:hub-req-inbound-format-parse": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-inbound-format-parse --include=dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage1_format_parse/index.js --exclude=scripts/** node scripts/tests/coverage-hub-req-inbound-format-parse.mjs",
|
|
130
|
+
"test:coverage:hub-req-outbound-format-build": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-outbound-format-build --include=dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage2_format_build/index.js --exclude=scripts/** node scripts/tests/coverage-hub-req-outbound-format-build.mjs",
|
|
131
|
+
"test:coverage:hub-req-outbound-compat": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-req-outbound-compat --include=dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage3_compat/index.js --exclude=scripts/** node scripts/tests/coverage-hub-req-outbound-compat.mjs",
|
|
132
|
+
"test:coverage:hub-resp-inbound-format-parse": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-inbound-format-parse --include=dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage2_format_parse/index.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-inbound-format-parse.mjs",
|
|
133
|
+
"test:coverage:hub-resp-inbound-semantic-map": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-inbound-semantic-map --include=dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage3_semantic_map/index.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-inbound-semantic-map.mjs",
|
|
134
|
+
"test:coverage:hub-resp-outbound-sse-stream": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-resp-outbound-sse-stream --include=dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage2_sse_stream/index.js --exclude=scripts/** node scripts/tests/coverage-hub-resp-outbound-sse-stream.mjs",
|
|
135
|
+
"test:coverage:hub-native-batch": "npm run build:ci && node ./node_modules/c8/bin/c8.js --reporter=json-summary --reporter=text --report-dir=coverage/module-hub-native-batch '--exclude=scripts/**' --include=dist/conversion/hub/format-adapters/chat-format-adapter.js --include=dist/conversion/hub/format-adapters/responses-format-adapter.js --include=dist/conversion/hub/format-adapters/anthropic-format-adapter.js --include=dist/conversion/hub/format-adapters/gemini-format-adapter.js --include=dist/conversion/hub/semantic-mappers/chat-mapper.js --include=dist/conversion/hub/semantic-mappers/responses-mapper.js --include=dist/conversion/hub/semantic-mappers/anthropic-mapper.js --include=dist/conversion/hub/semantic-mappers/gemini-mapper.js --include=dist/conversion/hub/snapshot-recorder.js --include=dist/conversion/hub/tool-governance/engine.js --include=dist/conversion/hub/tool-governance/rules.js --include=dist/conversion/hub/pipeline/stages/utils.js node scripts/tests/coverage-hub-native-batch.mjs",
|
|
136
|
+
"verify:shadow-gate:hub-req-inbound-format-parse": "npm run test:coverage:hub-req-inbound-format-parse && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-inbound-format-parse/coverage-summary.json --module hub.req-inbound.format-parse && node scripts/promote-shadow-module.mjs --module hub.req-inbound.format-parse",
|
|
137
|
+
"verify:shadow-gate:hub-req-outbound-format-build": "npm run test:coverage:hub-req-outbound-format-build && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-outbound-format-build/coverage-summary.json --module hub.req-outbound.format-build && node scripts/promote-shadow-module.mjs --module hub.req-outbound.format-build",
|
|
138
|
+
"verify:shadow-gate:hub-req-outbound-compat": "npm run test:coverage:hub-req-outbound-compat && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-req-outbound-compat/coverage-summary.json --module hub.req-outbound.compat && node scripts/promote-shadow-module.mjs --module hub.req-outbound.compat",
|
|
139
|
+
"verify:shadow-gate:hub-resp-inbound-format-parse": "npm run test:coverage:hub-resp-inbound-format-parse && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-inbound-format-parse/coverage-summary.json --module hub.resp-inbound.format-parse && node scripts/promote-shadow-module.mjs --module hub.resp-inbound.format-parse",
|
|
140
|
+
"verify:shadow-gate:hub-resp-inbound-semantic-map": "npm run test:coverage:hub-resp-inbound-semantic-map && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-inbound-semantic-map/coverage-summary.json --module hub.resp-inbound.semantic-map && node scripts/promote-shadow-module.mjs --module hub.resp-inbound.semantic-map",
|
|
141
|
+
"verify:shadow-gate:hub-resp-outbound-sse-stream": "npm run test:coverage:hub-resp-outbound-sse-stream && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-resp-outbound-sse-stream/coverage-summary.json --module hub.resp-outbound.sse-stream && node scripts/promote-shadow-module.mjs --module hub.resp-outbound.sse-stream",
|
|
142
|
+
"verify:shadow-gate:hub-native-batch": "npm run test:coverage:hub-native-batch && node scripts/check-shadow-coverage-gate.mjs --summary coverage/module-hub-native-batch/coverage-summary.json --module hub.native-batch.adapters-snapshot-governance && node scripts/promote-shadow-module.mjs --module hub.native-batch.adapters-snapshot-governance"
|
|
35
143
|
},
|
|
36
144
|
"dependencies": {
|
|
37
145
|
"ajv": "^8.17.1",
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { StopMessageBdCommandRunner, StopMessageBdTaskProbeResult, StopMessageBdWorkState } from './types.js';
|
|
2
|
-
export declare function resolveBdTaskSelectionFromRuntime(options?: {
|
|
3
|
-
bdCommandRunner?: StopMessageBdCommandRunner;
|
|
4
|
-
nowMs?: number;
|
|
5
|
-
cwd?: string;
|
|
6
|
-
limit?: number;
|
|
7
|
-
}): StopMessageBdTaskProbeResult;
|
|
8
|
-
export declare function resolveBdWorkStateFromRuntime(options?: {
|
|
9
|
-
bdCommandRunner?: StopMessageBdCommandRunner;
|
|
10
|
-
nowMs?: number;
|
|
11
|
-
cwd?: string;
|
|
12
|
-
}): StopMessageBdWorkState;
|
|
13
|
-
export declare function detectBdWorkState(messages: unknown[], options?: {
|
|
14
|
-
bdCommandRunner?: StopMessageBdCommandRunner;
|
|
15
|
-
nowMs?: number;
|
|
16
|
-
cwd?: string;
|
|
17
|
-
}): StopMessageBdWorkState;
|
|
18
|
-
export declare function resetStopMessageBdRuntimeCacheForTests(): void;
|
|
@@ -1,398 +0,0 @@
|
|
|
1
|
-
import * as childProcess from 'node:child_process';
|
|
2
|
-
import * as fs from 'node:fs';
|
|
3
|
-
import * as path from 'node:path';
|
|
4
|
-
import { normalizeMessageForHeuristics, normalizeText } from './text-utils.js';
|
|
5
|
-
let bdRuntimeCache = null;
|
|
6
|
-
const DEFAULT_BD_TIMEOUT_MS = 1200;
|
|
7
|
-
const DEFAULT_BD_CACHE_TTL_MS = 1500;
|
|
8
|
-
export function resolveBdTaskSelectionFromRuntime(options) {
|
|
9
|
-
const commandRunner = options?.bdCommandRunner ?? runBdCommand;
|
|
10
|
-
const timeoutMs = resolveBdTimeoutMs();
|
|
11
|
-
const cwd = resolveBdWorkingDirectory(options?.cwd);
|
|
12
|
-
const limit = typeof options?.limit === 'number' && Number.isFinite(options.limit) && options.limit > 0
|
|
13
|
-
? Math.max(1, Math.floor(options.limit))
|
|
14
|
-
: 20;
|
|
15
|
-
const inProgress = runBdIssueQuery(commandRunner, ['--no-db', 'list', '--status', 'in_progress', '--json', '--limit', String(limit)], { cwd, timeoutMs, source: 'in_progress' });
|
|
16
|
-
if (inProgress.status === 'unknown')
|
|
17
|
-
return { status: 'unknown' };
|
|
18
|
-
if (inProgress.issues.length > 0)
|
|
19
|
-
return { status: 'ok', task: inProgress.issues[0] };
|
|
20
|
-
const ready = runBdIssueQuery(commandRunner, ['--no-db', 'ready', '--json', '--limit', String(limit)], {
|
|
21
|
-
cwd,
|
|
22
|
-
timeoutMs,
|
|
23
|
-
source: 'ready'
|
|
24
|
-
});
|
|
25
|
-
if (ready.status === 'unknown')
|
|
26
|
-
return { status: 'unknown' };
|
|
27
|
-
if (ready.issues.length > 0)
|
|
28
|
-
return { status: 'ok', task: ready.issues[0] };
|
|
29
|
-
const open = runBdIssueQuery(commandRunner, ['--no-db', 'list', '--status', 'open', '--json', '--limit', String(limit)], {
|
|
30
|
-
cwd,
|
|
31
|
-
timeoutMs,
|
|
32
|
-
source: 'open'
|
|
33
|
-
});
|
|
34
|
-
if (open.status === 'unknown')
|
|
35
|
-
return { status: 'unknown' };
|
|
36
|
-
if (open.issues.length > 0)
|
|
37
|
-
return { status: 'ok', task: open.issues[0] };
|
|
38
|
-
return { status: 'ok' };
|
|
39
|
-
}
|
|
40
|
-
export function resolveBdWorkStateFromRuntime(options) {
|
|
41
|
-
const mode = resolveBdMode();
|
|
42
|
-
const nowMs = typeof options?.nowMs === 'number' && Number.isFinite(options.nowMs) ? options.nowMs : Date.now();
|
|
43
|
-
const cwd = resolveBdWorkingDirectory(options?.cwd);
|
|
44
|
-
const ttlMs = resolveBdCacheTtlMs();
|
|
45
|
-
if (ttlMs > 0 &&
|
|
46
|
-
bdRuntimeCache &&
|
|
47
|
-
bdRuntimeCache.mode === mode &&
|
|
48
|
-
bdRuntimeCache.cwd === cwd &&
|
|
49
|
-
bdRuntimeCache.expiresAt > nowMs) {
|
|
50
|
-
return bdRuntimeCache.state;
|
|
51
|
-
}
|
|
52
|
-
const commandRunner = options?.bdCommandRunner ?? runBdCommand;
|
|
53
|
-
const timeoutMs = resolveBdTimeoutMs();
|
|
54
|
-
const inProgress = runBdQuery(commandRunner, ['--no-db', 'list', '--status', 'in_progress', '--json', '--limit', '1'], {
|
|
55
|
-
cwd,
|
|
56
|
-
timeoutMs
|
|
57
|
-
});
|
|
58
|
-
if (inProgress === 'active') {
|
|
59
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'active');
|
|
60
|
-
}
|
|
61
|
-
if (inProgress === 'unknown') {
|
|
62
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'unknown');
|
|
63
|
-
}
|
|
64
|
-
const ready = runBdQuery(commandRunner, ['--no-db', 'ready', '--json', '--limit', '1'], {
|
|
65
|
-
cwd,
|
|
66
|
-
timeoutMs
|
|
67
|
-
});
|
|
68
|
-
if (ready === 'active') {
|
|
69
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'active');
|
|
70
|
-
}
|
|
71
|
-
if (ready === 'unknown') {
|
|
72
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'unknown');
|
|
73
|
-
}
|
|
74
|
-
const open = runBdQuery(commandRunner, ['--no-db', 'list', '--status', 'open', '--json', '--limit', '1'], {
|
|
75
|
-
cwd,
|
|
76
|
-
timeoutMs
|
|
77
|
-
});
|
|
78
|
-
if (open === 'active') {
|
|
79
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'active');
|
|
80
|
-
}
|
|
81
|
-
if (open === 'unknown') {
|
|
82
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'unknown');
|
|
83
|
-
}
|
|
84
|
-
const blocked = runBdQuery(commandRunner, ['--no-db', 'list', '--status', 'blocked', '--json', '--limit', '1'], {
|
|
85
|
-
cwd,
|
|
86
|
-
timeoutMs
|
|
87
|
-
});
|
|
88
|
-
if (blocked === 'active') {
|
|
89
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'active');
|
|
90
|
-
}
|
|
91
|
-
if (blocked === 'unknown') {
|
|
92
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'unknown');
|
|
93
|
-
}
|
|
94
|
-
return writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, 'idle');
|
|
95
|
-
}
|
|
96
|
-
export function detectBdWorkState(messages, options) {
|
|
97
|
-
const mode = resolveBdMode();
|
|
98
|
-
if (mode !== 'heuristic') {
|
|
99
|
-
const runtimeState = resolveBdWorkStateFromRuntime({
|
|
100
|
-
bdCommandRunner: options?.bdCommandRunner,
|
|
101
|
-
nowMs: options?.nowMs,
|
|
102
|
-
cwd: options?.cwd
|
|
103
|
-
});
|
|
104
|
-
if (runtimeState === 'active' || runtimeState === 'idle') {
|
|
105
|
-
return runtimeState;
|
|
106
|
-
}
|
|
107
|
-
if (mode === 'runtime') {
|
|
108
|
-
return 'unknown';
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return detectBdWorkStateFromHeuristics(messages);
|
|
112
|
-
}
|
|
113
|
-
export function resetStopMessageBdRuntimeCacheForTests() {
|
|
114
|
-
bdRuntimeCache = null;
|
|
115
|
-
}
|
|
116
|
-
function detectBdWorkStateFromHeuristics(messages) {
|
|
117
|
-
const normalizedTail = messages
|
|
118
|
-
.slice(-30)
|
|
119
|
-
.map((message) => normalizeMessageForHeuristics(message))
|
|
120
|
-
.filter(Boolean)
|
|
121
|
-
.join('\n')
|
|
122
|
-
.toLowerCase();
|
|
123
|
-
if (!normalizedTail.includes('bd')) {
|
|
124
|
-
return 'unknown';
|
|
125
|
-
}
|
|
126
|
-
const idlePatterns = [
|
|
127
|
-
/\bno\s+(ready|open|in_progress)\b/i,
|
|
128
|
-
/\b0\s+(ready|open|in_progress)\b/i,
|
|
129
|
-
/\bnothing\s+(to\s+do|ready|in\s+progress)\b/i,
|
|
130
|
-
/\ball\s+(tasks?|issues?)\s+(done|closed)\b/i,
|
|
131
|
-
/没有可(做|推进)任务/i,
|
|
132
|
-
/无\s*(ready|open|in_progress)\s*任务/i
|
|
133
|
-
];
|
|
134
|
-
if (idlePatterns.some((pattern) => pattern.test(normalizedTail))) {
|
|
135
|
-
return 'idle';
|
|
136
|
-
}
|
|
137
|
-
const activePatterns = [/\bin_progress\b/i, /\bready\b/i, /\bblocked\b/i, /\bopen\b/i, /\bepic status\b/i, /\bshow\s+[a-z0-9._-]+\b/i];
|
|
138
|
-
if (activePatterns.some((pattern) => pattern.test(normalizedTail))) {
|
|
139
|
-
return 'active';
|
|
140
|
-
}
|
|
141
|
-
return 'unknown';
|
|
142
|
-
}
|
|
143
|
-
function writeBdRuntimeCacheAndReturn(mode, cwd, nowMs, ttlMs, state) {
|
|
144
|
-
if (ttlMs > 0) {
|
|
145
|
-
bdRuntimeCache = {
|
|
146
|
-
mode,
|
|
147
|
-
cwd,
|
|
148
|
-
expiresAt: nowMs + ttlMs,
|
|
149
|
-
state
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
return state;
|
|
153
|
-
}
|
|
154
|
-
function resolveBdMode() {
|
|
155
|
-
const modeRaw = normalizeText(process.env.ROUTECODEX_STOPMESSAGE_BD_MODE).toLowerCase();
|
|
156
|
-
if (modeRaw === 'runtime' || modeRaw === 'real') {
|
|
157
|
-
return 'runtime';
|
|
158
|
-
}
|
|
159
|
-
if (modeRaw === 'heuristic' || modeRaw === 'text') {
|
|
160
|
-
return 'heuristic';
|
|
161
|
-
}
|
|
162
|
-
const legacyRuntimeRaw = normalizeText(process.env.ROUTECODEX_STOPMESSAGE_BD_RUNTIME).toLowerCase();
|
|
163
|
-
if (legacyRuntimeRaw === '1' || legacyRuntimeRaw === 'true' || legacyRuntimeRaw === 'on') {
|
|
164
|
-
return 'runtime';
|
|
165
|
-
}
|
|
166
|
-
if (legacyRuntimeRaw === '0' || legacyRuntimeRaw === 'false' || legacyRuntimeRaw === 'off') {
|
|
167
|
-
return 'heuristic';
|
|
168
|
-
}
|
|
169
|
-
return 'auto';
|
|
170
|
-
}
|
|
171
|
-
function resolveBdCacheTtlMs() {
|
|
172
|
-
const parsed = parseNonNegativeInteger(process.env.ROUTECODEX_STOPMESSAGE_BD_CACHE_TTL_MS);
|
|
173
|
-
if (typeof parsed === 'number') {
|
|
174
|
-
return parsed;
|
|
175
|
-
}
|
|
176
|
-
return DEFAULT_BD_CACHE_TTL_MS;
|
|
177
|
-
}
|
|
178
|
-
function resolveBdTimeoutMs() {
|
|
179
|
-
const parsed = parsePositiveInteger(process.env.ROUTECODEX_STOPMESSAGE_BD_TIMEOUT_MS);
|
|
180
|
-
if (typeof parsed === 'number') {
|
|
181
|
-
return parsed;
|
|
182
|
-
}
|
|
183
|
-
return DEFAULT_BD_TIMEOUT_MS;
|
|
184
|
-
}
|
|
185
|
-
function parseNonNegativeInteger(value) {
|
|
186
|
-
if (typeof value !== 'string') {
|
|
187
|
-
return undefined;
|
|
188
|
-
}
|
|
189
|
-
const parsed = Number.parseInt(value.trim(), 10);
|
|
190
|
-
if (!Number.isFinite(parsed) || parsed < 0) {
|
|
191
|
-
return undefined;
|
|
192
|
-
}
|
|
193
|
-
return parsed;
|
|
194
|
-
}
|
|
195
|
-
function parsePositiveInteger(value) {
|
|
196
|
-
const parsed = parseNonNegativeInteger(value);
|
|
197
|
-
if (typeof parsed !== 'number' || parsed <= 0) {
|
|
198
|
-
return undefined;
|
|
199
|
-
}
|
|
200
|
-
return parsed;
|
|
201
|
-
}
|
|
202
|
-
function resolveBdWorkingDirectory(cwdOverride) {
|
|
203
|
-
const fromOverride = normalizeText(cwdOverride);
|
|
204
|
-
if (fromOverride) {
|
|
205
|
-
return path.resolve(fromOverride);
|
|
206
|
-
}
|
|
207
|
-
const fromEnv = normalizeText(process.env.ROUTECODEX_STOPMESSAGE_BD_WORKDIR);
|
|
208
|
-
if (fromEnv) {
|
|
209
|
-
return path.resolve(fromEnv);
|
|
210
|
-
}
|
|
211
|
-
const current = process.cwd();
|
|
212
|
-
return findBdProjectRoot(current) || current;
|
|
213
|
-
}
|
|
214
|
-
function findBdProjectRoot(startDirectory) {
|
|
215
|
-
let current = path.resolve(startDirectory);
|
|
216
|
-
while (true) {
|
|
217
|
-
const beadsDir = path.join(current, '.beads');
|
|
218
|
-
const issuesJsonlPath = path.join(beadsDir, 'issues.jsonl');
|
|
219
|
-
if (fs.existsSync(issuesJsonlPath)) {
|
|
220
|
-
return current;
|
|
221
|
-
}
|
|
222
|
-
if (fs.existsSync(beadsDir)) {
|
|
223
|
-
return current;
|
|
224
|
-
}
|
|
225
|
-
const parent = path.dirname(current);
|
|
226
|
-
if (parent === current) {
|
|
227
|
-
return null;
|
|
228
|
-
}
|
|
229
|
-
current = parent;
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
function runBdCommand(args, options) {
|
|
233
|
-
try {
|
|
234
|
-
const result = childProcess.spawnSync('bd', args, {
|
|
235
|
-
cwd: options.cwd,
|
|
236
|
-
encoding: 'utf8',
|
|
237
|
-
timeout: options.timeoutMs,
|
|
238
|
-
maxBuffer: 1024 * 1024
|
|
239
|
-
});
|
|
240
|
-
return {
|
|
241
|
-
status: result.status,
|
|
242
|
-
stdout: typeof result.stdout === 'string' ? result.stdout : String(result.stdout ?? ''),
|
|
243
|
-
stderr: typeof result.stderr === 'string' ? result.stderr : String(result.stderr ?? ''),
|
|
244
|
-
error: result.error
|
|
245
|
-
};
|
|
246
|
-
}
|
|
247
|
-
catch (error) {
|
|
248
|
-
return {
|
|
249
|
-
status: null,
|
|
250
|
-
stdout: '',
|
|
251
|
-
stderr: '',
|
|
252
|
-
error
|
|
253
|
-
};
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
function runBdQuery(commandRunner, args, options) {
|
|
257
|
-
const result = commandRunner(args, options);
|
|
258
|
-
if (result.error || result.status !== 0) {
|
|
259
|
-
return 'unknown';
|
|
260
|
-
}
|
|
261
|
-
const list = parseJsonArrayOutput(result.stdout);
|
|
262
|
-
if (!list) {
|
|
263
|
-
return 'unknown';
|
|
264
|
-
}
|
|
265
|
-
return list.length > 0 ? 'active' : 'idle';
|
|
266
|
-
}
|
|
267
|
-
function runBdIssueQuery(commandRunner, args, options) {
|
|
268
|
-
const result = commandRunner(args, { cwd: options.cwd, timeoutMs: options.timeoutMs });
|
|
269
|
-
if (result.error || result.status !== 0) {
|
|
270
|
-
return { status: 'unknown', issues: [] };
|
|
271
|
-
}
|
|
272
|
-
const list = parseJsonArrayOutput(result.stdout);
|
|
273
|
-
if (!list) {
|
|
274
|
-
return { status: 'unknown', issues: [] };
|
|
275
|
-
}
|
|
276
|
-
if (list.length === 0) {
|
|
277
|
-
return { status: 'ok', issues: [] };
|
|
278
|
-
}
|
|
279
|
-
const issues = list
|
|
280
|
-
.map((item) => normalizeIssueSelection(item, options.source))
|
|
281
|
-
.filter((item) => Boolean(item))
|
|
282
|
-
.sort(compareIssueSelection);
|
|
283
|
-
if (issues.length === 0) {
|
|
284
|
-
return { status: 'unknown', issues: [] };
|
|
285
|
-
}
|
|
286
|
-
return { status: 'ok', issues };
|
|
287
|
-
}
|
|
288
|
-
function parseJsonArrayOutput(stdout) {
|
|
289
|
-
const trimmed = typeof stdout === 'string' ? stdout.trim() : '';
|
|
290
|
-
if (!trimmed) {
|
|
291
|
-
return [];
|
|
292
|
-
}
|
|
293
|
-
const parsedDirect = parseJsonArray(trimmed);
|
|
294
|
-
if (parsedDirect) {
|
|
295
|
-
return parsedDirect;
|
|
296
|
-
}
|
|
297
|
-
const firstBracket = trimmed.indexOf('[');
|
|
298
|
-
const lastBracket = trimmed.lastIndexOf(']');
|
|
299
|
-
if (firstBracket >= 0 && lastBracket > firstBracket) {
|
|
300
|
-
const arraySlice = trimmed.slice(firstBracket, lastBracket + 1).trim();
|
|
301
|
-
const parsedSlice = parseJsonArray(arraySlice);
|
|
302
|
-
if (parsedSlice) {
|
|
303
|
-
return parsedSlice;
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
return null;
|
|
307
|
-
}
|
|
308
|
-
function parseJsonArray(raw) {
|
|
309
|
-
try {
|
|
310
|
-
const value = JSON.parse(raw);
|
|
311
|
-
if (Array.isArray(value)) {
|
|
312
|
-
return value;
|
|
313
|
-
}
|
|
314
|
-
if (value && typeof value === 'object') {
|
|
315
|
-
const record = value;
|
|
316
|
-
if (Array.isArray(record.items)) {
|
|
317
|
-
return record.items;
|
|
318
|
-
}
|
|
319
|
-
if (Array.isArray(record.issues)) {
|
|
320
|
-
return record.issues;
|
|
321
|
-
}
|
|
322
|
-
if (Array.isArray(record.data)) {
|
|
323
|
-
return record.data;
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
return null;
|
|
327
|
-
}
|
|
328
|
-
catch {
|
|
329
|
-
return null;
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
function normalizeIssueSelection(item, source) {
|
|
333
|
-
if (!item || typeof item !== 'object' || Array.isArray(item)) {
|
|
334
|
-
return null;
|
|
335
|
-
}
|
|
336
|
-
const record = item;
|
|
337
|
-
const issueId = normalizeText(record.id);
|
|
338
|
-
if (!issueId) {
|
|
339
|
-
return null;
|
|
340
|
-
}
|
|
341
|
-
const issueTitle = normalizeText(record.title) ||
|
|
342
|
-
normalizeText(record.summary) ||
|
|
343
|
-
normalizeText(record.name) ||
|
|
344
|
-
`Issue ${issueId}`;
|
|
345
|
-
const priority = parseIssuePriority(record.priority);
|
|
346
|
-
return {
|
|
347
|
-
issueId,
|
|
348
|
-
issueTitle: issueTitle.slice(0, 240),
|
|
349
|
-
priority,
|
|
350
|
-
source
|
|
351
|
-
};
|
|
352
|
-
}
|
|
353
|
-
function parseIssuePriority(value) {
|
|
354
|
-
if (typeof value === 'number' && Number.isFinite(value)) {
|
|
355
|
-
return Math.max(0, Math.floor(value));
|
|
356
|
-
}
|
|
357
|
-
if (typeof value === 'string') {
|
|
358
|
-
const normalized = value.trim().toLowerCase();
|
|
359
|
-
const pMatch = normalized.match(/^p?(\d+)$/);
|
|
360
|
-
if (pMatch) {
|
|
361
|
-
const parsed = Number.parseInt(pMatch[1], 10);
|
|
362
|
-
if (Number.isFinite(parsed)) {
|
|
363
|
-
return Math.max(0, parsed);
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
return 99;
|
|
368
|
-
}
|
|
369
|
-
function compareIssueSelection(a, b) {
|
|
370
|
-
if (a.priority !== b.priority) {
|
|
371
|
-
return a.priority - b.priority;
|
|
372
|
-
}
|
|
373
|
-
const idCompare = compareIssueId(a.issueId, b.issueId);
|
|
374
|
-
if (idCompare !== 0) {
|
|
375
|
-
return idCompare;
|
|
376
|
-
}
|
|
377
|
-
return a.issueTitle.localeCompare(b.issueTitle);
|
|
378
|
-
}
|
|
379
|
-
function compareIssueId(left, right) {
|
|
380
|
-
const leftParts = left.match(/\d+|\D+/g) || [left];
|
|
381
|
-
const rightParts = right.match(/\d+|\D+/g) || [right];
|
|
382
|
-
const maxLen = Math.max(leftParts.length, rightParts.length);
|
|
383
|
-
for (let idx = 0; idx < maxLen; idx += 1) {
|
|
384
|
-
const l = leftParts[idx] || '';
|
|
385
|
-
const r = rightParts[idx] || '';
|
|
386
|
-
const lNum = /^\d+$/.test(l) ? Number.parseInt(l, 10) : NaN;
|
|
387
|
-
const rNum = /^\d+$/.test(r) ? Number.parseInt(r, 10) : NaN;
|
|
388
|
-
if (Number.isFinite(lNum) && Number.isFinite(rNum)) {
|
|
389
|
-
if (lNum !== rNum)
|
|
390
|
-
return lNum - rNum;
|
|
391
|
-
continue;
|
|
392
|
-
}
|
|
393
|
-
const compare = l.localeCompare(r);
|
|
394
|
-
if (compare !== 0)
|
|
395
|
-
return compare;
|
|
396
|
-
}
|
|
397
|
-
return 0;
|
|
398
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { StopMessageBdCommandRunner, StopMessageStageDecision, StopMessageStageStateSnapshot } from './types.js';
|
|
2
|
-
export declare function resolveStopMessageStageDecision(args: {
|
|
3
|
-
baseText: string;
|
|
4
|
-
state: StopMessageStageStateSnapshot;
|
|
5
|
-
capturedMessages: unknown[];
|
|
6
|
-
bdCommandRunner?: StopMessageBdCommandRunner;
|
|
7
|
-
bdWorkingDirectory?: string;
|
|
8
|
-
nowMs?: number;
|
|
9
|
-
}): StopMessageStageDecision;
|