@automaton-labs/aib 0.0.7 → 0.0.8
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 +36 -257
- package/config/agent-dx-policy.default.json +31 -0
- package/config/control-plane-client.default.json +3 -0
- package/dist/agent-dx/agent-dx.js +805 -0
- package/dist/agent-dx/presentation.js +32 -0
- package/dist/alias-advisor/analyze.js +982 -0
- package/dist/alias-advisor/exact-text-cost.js +74 -0
- package/dist/alias-advisor/lexical.js +240 -0
- package/dist/alias-advisor/model.js +2 -0
- package/dist/alias-advisor/path-identity.js +49 -0
- package/dist/alias-advisor/ranking.js +171 -0
- package/dist/alias-advisor/token-estimator.js +85 -0
- package/dist/bin/aib.js +5 -1
- package/dist/bin/cli.js +811 -4
- package/dist/commands/add-missing-imports-preview-cache.js +99 -2
- package/dist/commands/add-missing-imports.js +241 -2
- package/dist/commands/apply-module-plan.js +1319 -3
- package/dist/commands/background-command.js +378 -2
- package/dist/commands/captured-input.js +74 -1
- package/dist/commands/config-command.js +314 -2
- package/dist/commands/config-output.js +357 -10
- package/dist/commands/control-plane-command.js +183 -1
- package/dist/commands/declaration-command.js +1209 -7
- package/dist/commands/declaration-execution-cache.js +79 -1
- package/dist/commands/declaration-format.js +221 -1
- package/dist/commands/declaration-preview-cache.js +114 -2
- package/dist/commands/diagnostics-command.js +70 -3
- package/dist/commands/doctor.js +137 -3
- package/dist/commands/execution-command.js +117 -1
- package/dist/commands/exports-star-collapse-command.js +178 -0
- package/dist/commands/exports-star-command.js +252 -0
- package/dist/commands/exports-star-preview-cache.js +84 -0
- package/dist/commands/feedback-command.js +176 -3
- package/dist/commands/file-move-to-dir-execution-cache.js +92 -1
- package/dist/commands/file-move-to-dir-preview-cache.js +125 -2
- package/dist/commands/file-move-to-dir-worker.js +54 -0
- package/dist/commands/file-move-to-dir.js +1073 -5
- package/dist/commands/file-mutation-runtime.js +102 -1
- package/dist/commands/file-mutation-worker-apply.js +180 -0
- package/dist/commands/file-refactor-batch-execution-cache.js +90 -1
- package/dist/commands/file-refactor-batch-preview-cache.js +125 -2
- package/dist/commands/file-refactor-batch-worker.js +54 -0
- package/dist/commands/file-refactor-batch.js +1154 -5
- package/dist/commands/file-rename-execution-cache.js +92 -1
- package/dist/commands/file-rename-preview-cache.js +125 -2
- package/dist/commands/file-rename-worker.js +54 -0
- package/dist/commands/file-rename.js +1053 -5
- package/dist/commands/file-text-edit-executor.js +205 -0
- package/dist/commands/find-importers.js +52 -1
- package/dist/commands/find-unused-imports.js +55 -1
- package/dist/commands/generate-docs-command.js +244 -6
- package/dist/commands/help-command.js +460 -7
- package/dist/commands/import-specifier-policy.js +391 -0
- package/dist/commands/imports-command.js +68 -1
- package/dist/commands/imports-rebase.js +1138 -0
- package/dist/commands/init-skill-usage.js +92 -3
- package/dist/commands/init-workspace.js +30 -1
- package/dist/commands/inspect-alias-candidates.js +413 -0
- package/dist/commands/inspect-cycles.js +811 -5
- package/dist/commands/inspect-direct-usages.js +98 -0
- package/dist/commands/inspect-duplicates-format.js +229 -0
- package/dist/commands/inspect-format-primitives.js +127 -0
- package/dist/commands/inspect-format.js +1590 -18
- package/dist/commands/inspect-graph.js +1553 -9
- package/dist/commands/inspect-imports.js +339 -2
- package/dist/commands/inspect-mixed-format.js +524 -0
- package/dist/commands/inspect-module-plan-format.js +216 -0
- package/dist/commands/inspect-module-plan-serialization.js +402 -0
- package/dist/commands/inspect-reference-path-format.js +157 -0
- package/dist/commands/inspect-request-values.js +599 -0
- package/dist/commands/inspect-selector-kind.js +21 -0
- package/dist/commands/inspect-selector.js +50 -0
- package/dist/commands/inspect-symbol-format.js +90 -0
- package/dist/commands/inspect-topology.js +435 -0
- package/dist/commands/inspect-tree.js +827 -5
- package/dist/commands/inspect-usages-detail.js +793 -0
- package/dist/commands/inspect-usages-evidence.js +31 -0
- package/dist/commands/inspect-usages-format.js +367 -0
- package/dist/commands/inspect.js +1450 -16
- package/dist/commands/internal-command.js +64 -0
- package/dist/commands/json-file-input.js +60 -1
- package/dist/commands/module-plan-cache.js +156 -2
- package/dist/commands/module-plan-standalone.js +208 -0
- package/dist/commands/module-plan-timeout.js +77 -1
- package/dist/commands/move-preview-cache.js +101 -2
- package/dist/commands/mutate-aggregate-output.js +996 -0
- package/dist/commands/mutate-child-execution.js +374 -0
- package/dist/commands/mutate-command.js +1394 -0
- package/dist/commands/mutate-declaration-output.js +313 -0
- package/dist/commands/mutate-domain-adapters.js +638 -0
- package/dist/commands/mutate-execution-cache.js +114 -0
- package/dist/commands/mutate-execution-status.js +598 -0
- package/dist/commands/mutate-failure-output.js +531 -0
- package/dist/commands/mutate-file-view.js +151 -0
- package/dist/commands/mutate-object-output.js +91 -0
- package/dist/commands/mutate-output-values.js +97 -0
- package/dist/commands/mutate-preview-cache.js +86 -0
- package/dist/commands/mutate-response-replay.js +153 -0
- package/dist/commands/mutate-result-projection.js +818 -0
- package/dist/commands/mutation-eta.js +28 -0
- package/dist/commands/mutation-execution-cache.js +140 -3
- package/dist/commands/mutation-recovery-journal.js +195 -0
- package/dist/commands/normalize-imports.js +1120 -4
- package/dist/commands/object-pack-command.js +546 -0
- package/dist/commands/object-pack-preview-cache.js +88 -0
- package/dist/commands/observability-command.js +47 -3
- package/dist/commands/ota-command.js +403 -2
- package/dist/commands/print-config.js +10 -1
- package/dist/commands/quick-read.js +1113 -11
- package/dist/commands/refactor-batch-builder.js +265 -1
- package/dist/commands/refactor-batch-execution-cache.js +85 -1
- package/dist/commands/refactor-batch-preview-cache.js +96 -2
- package/dist/commands/refactor-batch.js +461 -4
- package/dist/commands/rename-entities.js +794 -4
- package/dist/commands/rename-execution-cache.js +49 -1
- package/dist/commands/rename-input.js +22 -1
- package/dist/commands/rename-polling-policy.js +68 -0
- package/dist/commands/rename-preview-cache.js +96 -2
- package/dist/commands/result-view.js +993 -7
- package/dist/commands/reveal-command.js +445 -5
- package/dist/commands/selector-suggestions.js +93 -0
- package/dist/commands/session-workspace.js +1836 -31
- package/dist/commands/shared.js +2 -1
- package/dist/commands/skills-command.js +315 -0
- package/dist/commands/sync-command.js +59 -2
- package/dist/commands/worker-command.js +173 -1
- package/dist/commands/workspace-cache.js +55 -1
- package/dist/config/defaults.js +26 -1
- package/dist/config/env-vars.js +77 -1
- package/dist/config/glob-match.js +44 -1
- package/dist/config/import-rules.js +165 -1
- package/dist/config/local-config.js +293 -3
- package/dist/config/mutation-comments.js +51 -1
- package/dist/config/path-aliases.js +165 -1
- package/dist/config/path-display.js +84 -1
- package/dist/config/product-storage.js +37 -1
- package/dist/config/request-env.js +21 -0
- package/dist/config/request-routing-context.js +23 -0
- package/dist/config/resolve-command-alias.js +74 -1
- package/dist/config/resolve.js +24 -1
- package/dist/config/tsconfig-discovery.js +113 -1
- package/dist/config/typescript-preferences.js +131 -0
- package/dist/config/workspace-root.js +310 -3
- package/dist/config/workspace-state.js +254 -1
- package/dist/content/content-bundle.js +88 -1
- package/dist/diagnostics/module-plan-timeline.js +75 -2
- package/dist/diagnostics/readiness-text.js +45 -8
- package/dist/dsl/aib-dsl.js +838 -1
- package/dist/dsl/declaration-dsl.js +264 -1
- package/dist/dsl/file-move-to-dir-dsl.js +123 -1
- package/dist/dsl/file-refactor-batch-dsl.js +203 -1
- package/dist/dsl/file-rename-dsl.js +135 -1
- package/dist/dsl/mutate-dsl.js +746 -0
- package/dist/help/bootstrap.bash.md +176 -341
- package/dist/help/bootstrap.md +175 -340
- package/dist/help/bootstrap.pwsh.md +176 -341
- package/dist/help/docs/basics.md +1 -1
- package/dist/help/docs/config-setup.import-normalize.md +65 -65
- package/dist/help/docs/config-setup.import-rules.md +6 -5
- package/dist/help/docs/first-setup.md +6 -5
- package/dist/help/docs/help-protocol.md +4 -3
- package/dist/help/docs/import.base.md +38 -0
- package/dist/help/docs/import.rebase.md +85 -0
- package/dist/help/docs/inspect.aliasCandidates.md +39 -0
- package/dist/help/docs/inspect.code.md +1 -7
- package/dist/help/docs/inspect.file.md +10 -19
- package/dist/help/docs/inspect.graph.md +3 -17
- package/dist/help/{dsl/docs/inspect.md → docs/inspect.shared.md} +13 -12
- package/dist/help/docs/modulePlan.md +24 -28
- package/dist/help/docs/move.md +19 -22
- package/dist/help/{dsl/topics/file.move.md → docs/moveToDir.md} +36 -34
- package/dist/help/docs/mutate.mixed.md +34 -0
- package/dist/help/docs/mutation.shared.md +55 -0
- package/dist/help/docs/patterns.md +3 -12
- package/dist/help/docs/qr.md +12 -6
- package/dist/help/docs/quick-map.md +36 -24
- package/dist/help/docs/recipe.file-layout.md +10 -10
- package/dist/help/docs/recipe.import-boundary.md +92 -0
- package/dist/help/docs/recipe.safe-artifact-probing.md +68 -0
- package/dist/help/docs/recipe.unfamiliar-area.md +64 -0
- package/dist/help/docs/recipes.md +20 -0
- package/dist/help/docs/rename.md +19 -27
- package/dist/help/docs/renameFile.md +36 -0
- package/dist/help/docs/rules.md +26 -0
- package/dist/help/dsl/bootstrap.bash.md +176 -341
- package/dist/help/dsl/bootstrap.md +175 -340
- package/dist/help/dsl/bootstrap.pwsh.md +176 -341
- package/dist/help/dsl/docs/basics.md +1 -1
- package/dist/help/dsl/docs/config-setup.import-normalize.md +65 -65
- package/dist/help/dsl/docs/config-setup.import-rules.md +6 -5
- package/dist/help/dsl/docs/first-setup.md +6 -5
- package/dist/help/dsl/docs/help-protocol.md +4 -3
- package/dist/help/dsl/docs/import.base.md +38 -0
- package/dist/help/dsl/docs/import.rebase.md +85 -0
- package/dist/help/dsl/docs/inspect.aliasCandidates.md +39 -0
- package/dist/help/dsl/docs/inspect.code.md +1 -7
- package/dist/help/dsl/docs/inspect.file.md +10 -19
- package/dist/help/dsl/docs/inspect.graph.md +3 -17
- package/dist/help/{docs/inspect.md → dsl/docs/inspect.shared.md} +13 -12
- package/dist/help/dsl/docs/modulePlan.md +24 -28
- package/dist/help/dsl/docs/move.md +19 -22
- package/dist/help/{topics/file.move.md → dsl/docs/moveToDir.md} +36 -34
- package/dist/help/dsl/docs/mutate.mixed.md +34 -0
- package/dist/help/dsl/docs/mutation.shared.md +55 -0
- package/dist/help/dsl/docs/patterns.md +3 -12
- package/dist/help/dsl/docs/qr.md +12 -6
- package/dist/help/dsl/docs/quick-map.md +36 -24
- package/dist/help/dsl/docs/recipe.file-layout.md +10 -10
- package/dist/help/dsl/docs/recipe.import-boundary.md +92 -0
- package/dist/help/dsl/docs/recipe.safe-artifact-probing.md +68 -0
- package/dist/help/dsl/docs/recipe.unfamiliar-area.md +64 -0
- package/dist/help/dsl/docs/recipes.md +20 -0
- package/dist/help/dsl/docs/rename.md +19 -27
- package/dist/help/dsl/docs/renameFile.md +36 -0
- package/dist/help/dsl/docs/rules.md +26 -0
- package/dist/help/dsl/full.md +175 -340
- package/dist/help/dsl/help-index.md +48 -43
- package/dist/help/dsl/snippets/agents.md +2 -2
- package/dist/help/dsl/tokens/qr.inline.examples.md +1 -1
- package/dist/help/dsl/topics/basics.md +1 -1
- package/dist/help/dsl/topics/config-setup.import-normalize.md +65 -65
- package/dist/help/dsl/topics/config-setup.import-rules.md +6 -5
- package/dist/help/dsl/topics/first-setup.md +6 -5
- package/dist/help/dsl/topics/help-protocol.md +4 -3
- package/dist/help/dsl/topics/import.base.md +36 -0
- package/dist/help/dsl/topics/import.rebase.md +83 -0
- package/dist/help/dsl/topics/inspect.aliasCandidates.md +37 -0
- package/dist/help/dsl/topics/inspect.code.md +1 -7
- package/dist/help/dsl/topics/inspect.file.md +10 -19
- package/dist/help/dsl/topics/inspect.graph.md +3 -17
- package/dist/help/dsl/topics/{inspect.md → inspect.shared.md} +13 -12
- package/dist/help/dsl/topics/modulePlan.md +21 -26
- package/dist/help/dsl/topics/move.md +17 -18
- package/dist/help/{docs/file.move.md → dsl/topics/moveToDir.md} +33 -35
- package/dist/help/dsl/topics/mutate.mixed.md +32 -0
- package/dist/help/dsl/topics/mutation.shared.md +53 -0
- package/dist/help/dsl/topics/patterns.md +3 -12
- package/dist/help/dsl/topics/qr.md +12 -6
- package/dist/help/dsl/topics/quick-map.md +36 -24
- package/dist/help/dsl/topics/recipe.file-layout.md +10 -10
- package/dist/help/dsl/topics/recipe.import-boundary.md +90 -0
- package/dist/help/dsl/topics/recipe.safe-artifact-probing.md +66 -0
- package/dist/help/dsl/topics/recipe.unfamiliar-area.md +62 -0
- package/dist/help/dsl/topics/recipes.md +18 -0
- package/dist/help/dsl/topics/rename.md +15 -15
- package/dist/help/dsl/topics/renameFile.md +34 -0
- package/dist/help/dsl/topics/rules.md +24 -0
- package/dist/help/full.md +175 -340
- package/dist/help/help-index.md +48 -43
- package/dist/help/help-meta.json +98 -48
- package/dist/help/index.md +52 -20
- package/dist/help/snippets/agents.md +2 -2
- package/dist/help/tokens/qr.inline.examples.md +1 -1
- package/dist/help/topics/basics.md +1 -1
- package/dist/help/topics/config-setup.import-normalize.md +65 -65
- package/dist/help/topics/config-setup.import-rules.md +6 -5
- package/dist/help/topics/first-setup.md +6 -5
- package/dist/help/topics/help-protocol.md +4 -3
- package/dist/help/topics/import.base.md +36 -0
- package/dist/help/topics/import.rebase.md +83 -0
- package/dist/help/topics/inspect.aliasCandidates.md +37 -0
- package/dist/help/topics/inspect.code.md +1 -7
- package/dist/help/topics/inspect.file.md +10 -19
- package/dist/help/topics/inspect.graph.md +3 -17
- package/dist/help/topics/{inspect.md → inspect.shared.md} +13 -12
- package/dist/help/topics/modulePlan.md +21 -26
- package/dist/help/topics/move.md +17 -18
- package/dist/help/{dsl/docs/file.move.md → topics/moveToDir.md} +33 -35
- package/dist/help/topics/mutate.mixed.md +32 -0
- package/dist/help/topics/mutation.shared.md +53 -0
- package/dist/help/topics/patterns.md +3 -12
- package/dist/help/topics/qr.md +12 -6
- package/dist/help/topics/quick-map.md +36 -24
- package/dist/help/topics/recipe.file-layout.md +10 -10
- package/dist/help/topics/recipe.import-boundary.md +90 -0
- package/dist/help/topics/recipe.safe-artifact-probing.md +66 -0
- package/dist/help/topics/recipe.unfamiliar-area.md +62 -0
- package/dist/help/topics/recipes.md +18 -0
- package/dist/help/topics/rename.md +15 -15
- package/dist/help/topics/renameFile.md +34 -0
- package/dist/help/topics/rules.md +24 -0
- package/dist/host/capabilities.js +56 -1
- package/dist/imports/standalone-import-analysis.js +602 -0
- package/dist/imports/standalone-import-model.js +2 -0
- package/dist/imports/standalone-import-process.js +66 -0
- package/dist/imports/standalone-import-worker.js +27 -0
- package/dist/imports/standalone-ts-project.js +147 -0
- package/dist/inspect/inspect-duplicates-service.js +526 -0
- package/dist/inspect/inspect-reverse-module-closure.js +338 -0
- package/dist/inspect/inspect-source-ranges.js +82 -0
- package/dist/inspect/inspect-source-shape.js +649 -0
- package/dist/inspect/standalone-inspect-analysis.js +319 -0
- package/dist/inspect/standalone-inspect-model.js +9 -0
- package/dist/inspect/standalone-inspect-process.js +55 -0
- package/dist/inspect/standalone-inspect-usages.js +274 -0
- package/dist/inspect/standalone-inspect-worker.js +13 -0
- package/dist/metrics/central-metrics.js +101 -2
- package/dist/mutation/concrete-edit-plan.js +157 -0
- package/dist/mutation/exports-star-collapse-preview.js +361 -0
- package/dist/mutation/exports-star-expand-apply.js +373 -0
- package/dist/mutation/exports-star-expand-preview.js +807 -0
- package/dist/mutation/file-impact-scan.js +182 -0
- package/dist/mutation/file-mutation-discovery.js +674 -0
- package/dist/mutation/file-mutation-eta.js +99 -0
- package/dist/mutation/file-mutation-standalone-apply.js +584 -0
- package/dist/mutation/file-mutation-standalone-planner.js +500 -0
- package/dist/mutation/file-mutation-tsserver-session.js +473 -0
- package/dist/mutation/mutation-estimate.js +45 -0
- package/dist/mutation/mutation-plan.js +467 -0
- package/dist/mutation/object-mutation-foundation.js +2 -0
- package/dist/mutation/object-mutation-partition.js +148 -0
- package/dist/mutation/object-pack-semantic-apply.js +507 -0
- package/dist/mutation/object-pack-semantic-preview.js +984 -0
- package/dist/mutation/object-unpack-semantic-preview.js +993 -0
- package/dist/mutation/package-manifest-impact.js +176 -0
- package/dist/mutation/rename-owner-worker-child.js +37 -0
- package/dist/mutation/rename-owner-worker.js +122 -0
- package/dist/mutation/runtime-cycle-query.js +66 -0
- package/dist/mutation/semantic-execution-progress.js +63 -0
- package/dist/mutation/semantic-export-index.js +474 -0
- package/dist/mutation/semantic-impact-scan.js +434 -0
- package/dist/mutation/semantic-model.js +2 -0
- package/dist/mutation/semantic-move-best-effort-planner.js +209 -0
- package/dist/mutation/semantic-move-config-worker-child.js +61 -0
- package/dist/mutation/semantic-move-config-worker.js +449 -0
- package/dist/mutation/semantic-move-declarations.js +94 -0
- package/dist/mutation/semantic-move-metrics.js +119 -0
- package/dist/mutation/semantic-move-model.js +2 -0
- package/dist/mutation/semantic-move-owner-authority.js +122 -0
- package/dist/mutation/semantic-move-owner-candidates.js +300 -0
- package/dist/mutation/semantic-move-owner-divergence-harness.js +474 -0
- package/dist/mutation/semantic-move-owner-divergence-runner.js +162 -0
- package/dist/mutation/semantic-move-plan-hash.js +56 -0
- package/dist/mutation/semantic-move-policy.js +360 -0
- package/dist/mutation/semantic-move-process.js +218 -0
- package/dist/mutation/semantic-move-provider-diagnostics.js +27 -0
- package/dist/mutation/semantic-move-standalone-engine.js +919 -0
- package/dist/mutation/semantic-move-standalone-planner.js +1553 -0
- package/dist/mutation/semantic-move-transaction.js +639 -0
- package/dist/mutation/semantic-mutation-engine.js +478 -0
- package/dist/mutation/semantic-mutation-runtime.js +521 -0
- package/dist/mutation/semantic-planner-retry.js +26 -0
- package/dist/mutation/semantic-program-roots.js +69 -0
- package/dist/mutation/semantic-rename-commonjs.js +229 -0
- package/dist/mutation/semantic-rename-config-worker-child.js +46 -0
- package/dist/mutation/semantic-rename-config-worker.js +498 -0
- package/dist/mutation/semantic-rename-locations.js +192 -0
- package/dist/mutation/semantic-rename-model.js +2 -0
- package/dist/mutation/semantic-rename-process.js +210 -0
- package/dist/mutation/semantic-rename-standalone-engine.js +302 -0
- package/dist/mutation/semantic-rename-standalone-planner.js +567 -0
- package/dist/mutation/semantic-rename-transaction.js +333 -0
- package/dist/mutation/semantic-unused-import-cleanup.js +248 -0
- package/dist/mutation/semantic-worker-retry.js +40 -0
- package/dist/mutation/semantic-workspace.js +804 -0
- package/dist/mutation/targeted-import-canonicalizer.js +359 -0
- package/dist/observability/config.js +206 -1
- package/dist/observability/context.js +59 -1
- package/dist/observability/failure-snapshot.js +124 -2
- package/dist/observability/recent.js +63 -2
- package/dist/payloads/read-stdin-json.js +212 -1
- package/dist/rg-wrapper/core.js +714 -6
- package/dist/rg-wrapper/options.js +125 -1
- package/dist/rtk-wrapper/core.js +144 -2
- package/dist/rtk-wrapper/git-safety.js +203 -0
- package/dist/rtk-wrapper/output-adapter.js +106 -0
- package/dist/runtime/buffered-process.js +114 -0
- package/dist/runtime/bundled-node.js +97 -1
- package/dist/runtime/command-lifecycle.js +2 -0
- package/dist/runtime/input-source.js +238 -1
- package/dist/runtime/node-cli-identity.js +37 -0
- package/dist/runtime/run-command.js +191 -1
- package/dist/selectors/parse-entities.js +84 -1
- package/dist/semantic/semantic-context-pool.js +830 -0
- package/dist/semantic/semantic-context-provider.js +416 -0
- package/dist/semantic/semantic-resident-admission.js +38 -0
- package/dist/semantic/semantic-worker-child.js +40 -0
- package/dist/semantic/semantic-worker-manager.js +460 -0
- package/dist/semantic/semantic-worker-protocol.js +2 -0
- package/dist/semantic/semantic-worker-runtime.js +38 -0
- package/dist/semantic/workspace-semantic-context-pools.js +136 -0
- package/dist/session/client.js +359 -1
- package/dist/session/daemon-state.js +185 -2
- package/dist/session/external-tool-coordinator.js +88 -0
- package/dist/session/external-tool-request.js +52 -0
- package/dist/session/lane-owner.js +116 -0
- package/dist/session/paths.js +71 -1
- package/dist/session/runtime-lifecycle.js +225 -0
- package/dist/session/runtime-shutdown.js +95 -0
- package/dist/session/server.js +1194 -7
- package/dist/session/session-health.js +27 -0
- package/dist/shared/agent-text.js +29 -1
- package/dist/shared/errors.js +496 -30
- package/dist/shared/event-loop.js +6 -1
- package/dist/shared/hints.js +37 -1
- package/dist/shared/metrics.js +43 -1
- package/dist/shared/presentation.js +69 -4
- package/dist/shared/stdin-examples.js +77 -1
- package/dist/shared/stdout.js +6 -2
- package/dist/shared/types.js +23 -1
- package/dist/tool-runtime/runtime-tools.js +120 -1
- package/dist/topology/availability.js +663 -0
- package/dist/topology/cache.js +130 -0
- package/dist/topology/candidates.js +372 -0
- package/dist/topology/core.js +903 -0
- package/dist/topology/dependency-snapshot.js +189 -0
- package/dist/topology/model.js +2 -0
- package/dist/topology/scope.js +100 -0
- package/dist/topology/ts-oracle-batch.js +529 -0
- package/dist/topology/ts-oracle-host.js +69 -0
- package/dist/topology/ts-oracle-model.js +2 -0
- package/dist/topology/ts-oracle.js +224 -0
- package/dist/topology/tsconfig-loader.js +105 -0
- package/dist/topology/workspace-project-index.js +542 -0
- package/dist/tracing/config.js +192 -2
- package/dist/tracing/failure-summary.js +100 -0
- package/dist/tracing/trace.js +318 -5
- package/dist/tsc-wrapper/core.js +697 -0
- package/dist/workers/control-plane/aib-control-plane-worker.cjs +32 -32
- package/dist/workers/control-plane/client-config.default.json +3 -3
- package/dist/workers/lexical-worker-child.js +27 -0
- package/dist/workers/lexical-worker-manager.js +394 -0
- package/dist/workers/lexical-worker-protocol.js +2 -0
- package/dist/workers/lexical-worker-runtime.js +25 -0
- package/dist/workers/owned-one-shot-process.js +115 -0
- package/dist/workers/product-storage.js +23 -1
- package/dist/workers/registry.js +241 -1
- package/package.json +8 -13
- package/scripts/postinstall.cjs +29 -29
- package/scripts/provision-runtime.cjs +411 -459
- package/dist/client/http-client.js +0 -1
- package/dist/client/transport-options.js +0 -1
- package/dist/client/websocket-client.js +0 -1
- package/dist/commands/entity-resolution.js +0 -1
- package/dist/commands/file-command.js +0 -1
- package/dist/commands/host-command.js +0 -1
- package/dist/commands/inspect-symbol-query.js +0 -1
- package/dist/commands/list-instances.js +0 -1
- package/dist/commands/module-plan-command.js +0 -1
- package/dist/commands/move-command.js +0 -1
- package/dist/commands/move-to-file.js +0 -2
- package/dist/commands/ping.js +0 -1
- package/dist/commands/refactor-command.js +0 -1
- package/dist/commands/rename-command.js +0 -1
- package/dist/commands/runtime-command.js +0 -4
- package/dist/commands/runtime-info.js +0 -1
- package/dist/commands/validate-module-plan.js +0 -2
- package/dist/compatibility/policy.js +0 -1
- package/dist/config/auto-start-ide.js +0 -1
- package/dist/discovery/registry.js +0 -1
- package/dist/discovery/select-instance.js +0 -1
- package/dist/help/docs/file.rename.md +0 -35
- package/dist/help/docs/mutation.md +0 -60
- package/dist/help/docs/refactor.batch.md +0 -44
- package/dist/help/dsl/docs/file.rename.md +0 -35
- package/dist/help/dsl/docs/mutation.md +0 -60
- package/dist/help/dsl/docs/refactor.batch.md +0 -44
- package/dist/help/dsl/topics/file.rename.md +0 -33
- package/dist/help/dsl/topics/mutation.md +0 -58
- package/dist/help/dsl/topics/refactor.batch.md +0 -33
- package/dist/help/topics/file.rename.md +0 -33
- package/dist/help/topics/mutation.md +0 -58
- package/dist/help/topics/refactor.batch.md +0 -33
- package/dist/ide-launch/common.cjs +0 -162
- package/dist/managed-host/extension-vsix-resolver.js +0 -1
- package/dist/managed-host/manage-serve-web-host.cjs +0 -141
- package/dist/managed-host/serve-web-autostart.js +0 -1
- package/dist/managed-host/serve-web-host.cjs +0 -2115
- package/dist/runtime/managed-runtime-provisioning.js +0 -1
- package/dist/shared/diagnostic-catalog.js +0 -1
- package/dist/shared/diagnostics.js +0 -1
- package/dist/shared/operations.js +0 -1
- package/dist/shared/protocol.js +0 -1
- package/dist/shared/routes.js +0 -1
- package/extension/vscode-refactor-bridge-extension.vsix +0 -0
- package/runtimes/launcher/linux-x64/aib +0 -0
- package/runtimes/launcher/win-x64/aib.exe +0 -0
|
@@ -81,11 +81,12 @@ Example:
|
|
|
81
81
|
|
|
82
82
|
5. Configure import rules
|
|
83
83
|
|
|
84
|
-
importRules control imports created or expanded by move/modulePlan mutation cleanup.
|
|
85
|
-
They do not rewrite the whole project.
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
84
|
+
importRules control imports created or expanded by move/modulePlan mutation cleanup.
|
|
85
|
+
They do not rewrite the whole project.
|
|
86
|
+
|
|
87
|
+
A non-empty importRules block in aib.json is the complete AIB import-style authority.
|
|
88
|
+
Omitted fields keep TypeScript/AIB defaults; they are not filled from editor settings.
|
|
89
|
+
When importRules is empty, AIB may reuse explicit workspace-local IDE/TS preferences.
|
|
89
90
|
Do not assume IDE/TS defaults match the repo style.
|
|
90
91
|
|
|
91
92
|
Fields:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
After context compaction, always run:
|
|
2
|
-
aib help help-protocol quick-map
|
|
2
|
+
aib help help-protocol quick-map recipes rules
|
|
3
3
|
aib config aliases
|
|
4
4
|
|
|
5
5
|
Use focused help when you would otherwise guess how a known AIB capability works.
|
|
@@ -14,11 +14,12 @@ aib help config-setup.import-normalize imports.normalize
|
|
|
14
14
|
|
|
15
15
|
Refresh focused config help by signal:
|
|
16
16
|
- repeated long paths: aib help config-setup.aliases
|
|
17
|
-
-
|
|
17
|
+
- imports created by mutation do not match repo style: aib help config-setup.import-rules
|
|
18
18
|
- noisy tree/graph output: aib help config-setup.excludes
|
|
19
19
|
- too many visible tsconfigs: aib help config-setup.tsconfigs
|
|
20
20
|
|
|
21
21
|
When refreshing multiple areas, request them together instead of one by one.
|
|
22
|
+
Include broad shared topics only once.
|
|
22
23
|
|
|
23
24
|
Example:
|
|
24
|
-
aib help
|
|
25
|
+
aib help mutation moveToDir renameFile inspect inspect.file inspect.deps
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
Import mutations change import declarations and import/export specifiers.
|
|
2
|
+
|
|
3
|
+
Use them when the import target or import style is the intent.
|
|
4
|
+
|
|
5
|
+
Current import mutation intents:
|
|
6
|
+
- imports.normalize changes import style for already-correct targets.
|
|
7
|
+
- imports.useBarrel moves eligible consumers to a barrel/index boundary.
|
|
8
|
+
- imports.useDirect moves eligible consumers from a barrel back to direct source imports.
|
|
9
|
+
|
|
10
|
+
Do not use imports.normalize when the real intent is to force a specific barrel boundary.
|
|
11
|
+
Do not use imports.useBarrel/useDirect when the real intent is only alias-vs-relative style cleanup.
|
|
12
|
+
|
|
13
|
+
Shared controls:
|
|
14
|
+
|
|
15
|
+
@scope consumer file or directory scope to scan
|
|
16
|
+
@files explicit consumer files to scan
|
|
17
|
+
pathExclude files, directories, or glob-like patterns to skip
|
|
18
|
+
symbols exported names to update, when supported by the operation
|
|
19
|
+
|
|
20
|
+
Prefer @scope for a bounded area.
|
|
21
|
+
Use @files for a small known consumer set.
|
|
22
|
+
Use pathExclude for tests, generated files, fixtures, or migration-excluded areas.
|
|
23
|
+
|
|
24
|
+
Use symbols only when the request should affect part of the import surface.
|
|
25
|
+
Do not add symbols by default.
|
|
26
|
+
|
|
27
|
+
Choose the import operation by intent:
|
|
28
|
+
|
|
29
|
+
Use imports.normalize after imports already point to the right files/modules, but their specifier style should change.
|
|
30
|
+
|
|
31
|
+
Use imports.useBarrel when an existing barrel/index file should become the import boundary.
|
|
32
|
+
|
|
33
|
+
Use imports.useDirect when a barrel boundary should be removed for selected consumers.
|
|
34
|
+
|
|
35
|
+
If both target boundary and style are wrong, change the boundary first.
|
|
36
|
+
Normalize style only after the boundary is correct.
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
Import Boundary Mutations
|
|
2
|
+
|
|
3
|
+
Import boundary mutations change where consumers import exported symbols from.
|
|
4
|
+
|
|
5
|
+
Use imports.useBarrel when an existing barrel file should become the import boundary.
|
|
6
|
+
Use imports.useDirect when consumers currently import through a barrel but should import directly from source files.
|
|
7
|
+
|
|
8
|
+
Both operations scan a consumer scope and rewrite eligible ES named imports.
|
|
9
|
+
|
|
10
|
+
Use execute for routine changes.
|
|
11
|
+
Use preview/apply when you want to review intent before writing.
|
|
12
|
+
|
|
13
|
+
Common commands:
|
|
14
|
+
aib mutate preview --stdin
|
|
15
|
+
aib mutate execute --stdin
|
|
16
|
+
aib mutate apply <mutateId>
|
|
17
|
+
|
|
18
|
+
If a name is ambiguous, use selectors.
|
|
19
|
+
|
|
20
|
+
Syntax:
|
|
21
|
+
|
|
22
|
+
@scope <consumer-scope>
|
|
23
|
+
imports.useBarrel <barrel-file> [pathExclude=[...]] [symbols=[...]]
|
|
24
|
+
|
|
25
|
+
@scope <consumer-scope>
|
|
26
|
+
imports.useDirect <barrel-file> [pathExclude=[...]] [symbols=[...]]
|
|
27
|
+
|
|
28
|
+
Controls:
|
|
29
|
+
|
|
30
|
+
@scope consumer file or directory scope to scan
|
|
31
|
+
pathExclude consumer files, directories, or glob-like patterns to leave unchanged
|
|
32
|
+
symbols exported barrel names to update
|
|
33
|
+
|
|
34
|
+
Use pathExclude for tests, generated files, fixtures, or migration-excluded areas.
|
|
35
|
+
|
|
36
|
+
By default, do not list symbols.
|
|
37
|
+
AIB reads the barrel and rewrites eligible imports for exported names it can resolve.
|
|
38
|
+
Use symbols only when the request must affect a specific subset of the barrel surface.
|
|
39
|
+
|
|
40
|
+
Run:
|
|
41
|
+
aib mutate execute --stdin
|
|
42
|
+
|
|
43
|
+
Use a barrel as the import boundary:
|
|
44
|
+
|
|
45
|
+
Input:
|
|
46
|
+
@scope src/features
|
|
47
|
+
imports.useBarrel src/logs/index.ts
|
|
48
|
+
|
|
49
|
+
Use direct source imports instead of a barrel:
|
|
50
|
+
|
|
51
|
+
Input:
|
|
52
|
+
@scope src/features
|
|
53
|
+
imports.useDirect src/logs/index.ts
|
|
54
|
+
|
|
55
|
+
Skip consumers that should not be rewritten:
|
|
56
|
+
|
|
57
|
+
Input:
|
|
58
|
+
@scope src/features
|
|
59
|
+
imports.useBarrel src/logs/index.ts pathExclude=["**/*.test.ts","src/generated/**"]
|
|
60
|
+
|
|
61
|
+
Limit the request to selected exported names:
|
|
62
|
+
|
|
63
|
+
Input:
|
|
64
|
+
@scope src/features
|
|
65
|
+
imports.useDirect src/logs/index.ts symbols=[parseLogsQuery,LogsQuery]
|
|
66
|
+
|
|
67
|
+
Compatibility
|
|
68
|
+
|
|
69
|
+
Supported:
|
|
70
|
+
- ES named imports
|
|
71
|
+
- named re-exports
|
|
72
|
+
- star re-exports
|
|
73
|
+
- type-only named imports
|
|
74
|
+
- aliased named re-exports
|
|
75
|
+
|
|
76
|
+
Skipped or unsupported:
|
|
77
|
+
- CommonJS require/module.exports
|
|
78
|
+
- default re-exports
|
|
79
|
+
- namespace imports
|
|
80
|
+
- side-effect imports
|
|
81
|
+
- default import parts
|
|
82
|
+
|
|
83
|
+
Skipped imports are not rewritten.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
Find repeated TypeScript import prefixes that may be worth turning into TS path aliases.
|
|
2
|
+
|
|
3
|
+
Use aliasCandidates when imports share long prefixes and you want evidence for adopting an existing alias or creating a new one.
|
|
4
|
+
|
|
5
|
+
The advisor collects lexical import evidence, then validates shortlisted candidates against repo topology and TypeScript resolution for every owning tsconfig. Incomplete coverage, incompatible mappings, package-boundary violations, and other hard conflicts are rejected rather than rescued by ranking.
|
|
6
|
+
|
|
7
|
+
Output separates evidence filters from the provisional ranking policy. Token savings use a deterministic path estimate and are not a Codex billing estimate. Parent and child candidates are compared by marginal coverage so overlapping imports are not counted twice.
|
|
8
|
+
|
|
9
|
+
Candidates are classified as recommended, review, optional, or rejected. Creating a new alias remains review-only when runtime support or token confidence is not proven.
|
|
10
|
+
|
|
11
|
+
This command is a read-only advisor. It does not edit tsconfig or rewrite imports.
|
|
12
|
+
|
|
13
|
+
Run:
|
|
14
|
+
aib inspect aliasCandidates <scope>
|
|
15
|
+
|
|
16
|
+
DSL:
|
|
17
|
+
aliasCandidates scope=src/main limit=20
|
|
18
|
+
|
|
19
|
+
Options:
|
|
20
|
+
limit max candidates to print
|
|
21
|
+
minImports lexical evidence prefilter; not the ranking threshold
|
|
22
|
+
minFiles importing-file evidence prefilter; not the ranking threshold
|
|
23
|
+
candidate filter by source prefix or alias pattern
|
|
24
|
+
detail sum or examples
|
|
25
|
+
|
|
26
|
+
Find candidates:
|
|
27
|
+
|
|
28
|
+
Run:
|
|
29
|
+
aib inspect aliasCandidates src/main
|
|
30
|
+
|
|
31
|
+
Show examples for one suggested alias:
|
|
32
|
+
|
|
33
|
+
Run:
|
|
34
|
+
aib inspect aliasCandidates src/main --candidate "#services/*" --detail examples
|
|
35
|
+
|
|
36
|
+
DSL:
|
|
37
|
+
aliasCandidates scope=src/main candidate="#services/*" detail=examples
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
Use code
|
|
2
|
-
It returns focused code without reading the whole file.
|
|
3
|
-
|
|
4
|
-
Good for:
|
|
5
|
-
- reading a known function, class, method, declaration, `default`, or `IIFE#N`
|
|
6
|
-
- fetching several related code blocks in one request
|
|
7
|
-
- keeping context focused on code needed for the current task
|
|
1
|
+
Use code when you know file path and declaration/member selector, but do not know ranges.
|
|
8
2
|
|
|
9
3
|
Controls:
|
|
10
4
|
file, entity, entities, parent, show, ranges
|
|
@@ -2,30 +2,21 @@ Use file to map top-level declarations physically present in one file.
|
|
|
2
2
|
Exported declarations are marked in the output.
|
|
3
3
|
It shows what lives in the file before you decide whether to read code.
|
|
4
4
|
|
|
5
|
-
Good for:
|
|
6
|
-
- mapping a file
|
|
7
|
-
- listing top-level declarations
|
|
8
|
-
- seeing default exports, decorators, IIFEs, and runtime calls
|
|
5
|
+
Good for:
|
|
6
|
+
- mapping a file
|
|
7
|
+
- listing top-level declarations
|
|
8
|
+
- seeing default exports, decorators, IIFEs, and runtime calls
|
|
9
9
|
- checking whether a file contains real declarations or mostly re-exports
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
file
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
Controls:
|
|
16
|
-
file, ranges, localOnly
|
|
17
|
-
|
|
18
|
-
Specific:
|
|
19
|
-
localOnly show local declarations and reexports without resolving facade API; +localOnly
|
|
20
|
-
|
|
21
|
-
Defaults: +ranges
|
|
11
|
+
Controls:
|
|
12
|
+
file, ranges
|
|
13
|
+
|
|
14
|
+
Defaults: +ranges
|
|
22
15
|
Use -ranges to show names without ranges.
|
|
23
16
|
|
|
24
17
|
Run:
|
|
25
18
|
aib inspect --stdin
|
|
26
19
|
|
|
27
|
-
Input:
|
|
28
|
-
file @svc/service.ts
|
|
20
|
+
Input:
|
|
21
|
+
file @svc/service.ts
|
|
29
22
|
file src/index.ts
|
|
30
|
-
|
|
31
|
-
inspect file src/service.ts [--ranges] [--local-only]
|
|
@@ -64,11 +64,10 @@ Use DSL or request flags to hide sections such as edges/hubs/entrypoints/leaves.
|
|
|
64
64
|
|
|
65
65
|
Specialized graph command:
|
|
66
66
|
Run:
|
|
67
|
-
aib inspect graph --
|
|
67
|
+
aib inspect graph @svc --view local --save services-graph
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
graph
|
|
71
|
-
graph from=aib:graph:services-graph focus=[@svc/users.ts,@svc/admins.ts] +symbolUsage -edges
|
|
69
|
+
Focus saved graph:
|
|
70
|
+
aib inspect graph --from-file aib:graph:services-graph --focus @svc/users.ts --focus @svc/admins.ts --symbol-usage
|
|
72
71
|
|
|
73
72
|
Multiple scopes:
|
|
74
73
|
Run:
|
|
@@ -86,19 +85,6 @@ aib inspect --stdin
|
|
|
86
85
|
Input:
|
|
87
86
|
graph scope=src view=local exclude=["**/*.test.ts","**/* copy.ts"] >src-graph
|
|
88
87
|
|
|
89
|
-
Graph prefs:
|
|
90
|
-
inspect.graph.edges boolean
|
|
91
|
-
inspect.graph.hubs boolean
|
|
92
|
-
inspect.graph.entrypoints boolean
|
|
93
|
-
inspect.graph.leaves boolean
|
|
94
|
-
inspect.graph.symbols boolean
|
|
95
|
-
inspect.graph.symbolUsage boolean
|
|
96
|
-
|
|
97
|
-
symbolUsage is usually the better first choice when imported names matter.
|
|
98
|
-
|
|
99
|
-
Example:
|
|
100
|
-
session prefs set inspect.graph.edges false inspect.graph.hubs false inspect.graph.symbolUsage true
|
|
101
|
-
|
|
102
88
|
Output fields:
|
|
103
89
|
summary file/edge/package counts
|
|
104
90
|
paths compact path aliases used in text output
|
|
@@ -9,18 +9,19 @@ map: learn what exists and how it connects
|
|
|
9
9
|
focus: choose files/entities/usages that matter
|
|
10
10
|
code: fetch exact code needed
|
|
11
11
|
|
|
12
|
-
Choose inspect operation:
|
|
13
|
-
|
|
14
|
-
declarations in one file file
|
|
15
|
-
static/dynamic imports imports
|
|
16
|
-
public API exports
|
|
17
|
-
methods/properties of parent members
|
|
18
|
-
exact implementation code
|
|
19
|
-
outgoing deps of one entity deps
|
|
20
|
-
incoming references/callers usages
|
|
21
|
-
file/module connectivity graph
|
|
22
|
-
compact directory layout tree
|
|
23
|
-
|
|
12
|
+
Choose inspect operation:
|
|
13
|
+
|
|
14
|
+
declarations in one file file
|
|
15
|
+
static/dynamic imports imports
|
|
16
|
+
public API exports
|
|
17
|
+
methods/properties of parent members
|
|
18
|
+
exact implementation code
|
|
19
|
+
outgoing deps of one entity deps
|
|
20
|
+
incoming references/callers usages
|
|
21
|
+
file/module connectivity graph
|
|
22
|
+
compact directory layout tree
|
|
23
|
+
path alias candidates aliasCandidates
|
|
24
|
+
repeated declarations/helpers duplicates
|
|
24
25
|
local import cycles cycles
|
|
25
26
|
|
|
26
27
|
Prefer one batch DSL request for related questions.
|
|
@@ -1,41 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
Use execute for routine changes.
|
|
3
|
-
Use preview/apply when
|
|
1
|
+
Run mutation DSL through aib mutate.
|
|
2
|
+
Use execute for routine changes.
|
|
3
|
+
Use preview/apply when you want to review intent before writing.
|
|
4
|
+
|
|
5
|
+
Common commands:
|
|
6
|
+
aib mutate preview --stdin
|
|
7
|
+
aib mutate execute --stdin
|
|
8
|
+
aib mutate apply <mutateId>
|
|
4
9
|
|
|
5
10
|
If a name is ambiguous, use selectors.
|
|
6
11
|
Run help selectors to refresh selector syntax.
|
|
7
12
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
modulePlan orchestrates semantic moves and updates affected references/imports.
|
|
12
|
-
|
|
13
|
-
If imports created by modulePlan do not match the repo style, run:
|
|
14
|
-
aib help config-setup.import-rules
|
|
13
|
+
Use module only for a full-file split: moving all declarations from one source file into target modules.
|
|
14
|
+
Do not mix module with other mutation operations.
|
|
15
15
|
|
|
16
16
|
Use +expectEmpty when your modulePlan intent is to move all declarations out of the source file.
|
|
17
17
|
It does not change the move behavior; it only asks output to report remaining source declarations if any remain.
|
|
18
18
|
Use it only when remaining declarations would mean the split did not match your intent.
|
|
19
19
|
Do not use it for partial extractions.
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
Use execute when you want to preview and apply immediately.
|
|
21
|
+
Focused syntax:
|
|
22
|
+
module <targetFile>: <entity...>
|
|
23
|
+
|
|
24
|
+
Split one large source file into several targets:
|
|
25
|
+
Run:
|
|
26
|
+
aib mutate execute --stdin
|
|
28
27
|
|
|
29
|
-
Split one large source file into several targets:
|
|
30
|
-
Run:
|
|
31
|
-
aib modulePlan execute --stdin
|
|
32
|
-
|
|
33
28
|
Input:
|
|
34
29
|
@source src/large-service.ts +expectEmpty
|
|
35
30
|
module src/large-service.types.ts: ServiceOptions ServiceMode
|
|
36
|
-
module src/large-service.core.ts: LargeService createLargeService
|
|
37
|
-
|
|
38
|
-
How inheritance works above:
|
|
39
|
-
@source sets the source file once.
|
|
40
|
-
+expectEmpty says no declarations should remain in the source after the plan.
|
|
31
|
+
module src/large-service.core.ts: LargeService createLargeService
|
|
32
|
+
|
|
33
|
+
How inheritance works above:
|
|
34
|
+
@source sets the source file once.
|
|
35
|
+
+expectEmpty says no declarations should remain in the source after the plan.
|
|
41
36
|
Each module line declares one target and the entities that should move there.
|
package/dist/help/topics/move.md
CHANGED
|
@@ -1,30 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
Use execute for routine changes.
|
|
3
|
-
Use preview/apply when
|
|
1
|
+
Run mutation DSL through aib mutate.
|
|
2
|
+
Use execute for routine changes.
|
|
3
|
+
Use preview/apply when you want to review intent before writing.
|
|
4
|
+
|
|
5
|
+
Common commands:
|
|
6
|
+
aib mutate preview --stdin
|
|
7
|
+
aib mutate execute --stdin
|
|
8
|
+
aib mutate apply <mutateId>
|
|
4
9
|
|
|
5
10
|
If a name is ambiguous, use selectors.
|
|
6
11
|
Run help selectors to refresh selector syntax.
|
|
7
12
|
|
|
8
|
-
Move transfers
|
|
9
|
-
Move is semantic; it moves supported declarations and updates affected imports/references.
|
|
10
|
-
Use
|
|
11
|
-
For large file splitting across several target files, use modulePlan.
|
|
13
|
+
Move transfers declarations from one source file to target files.
|
|
14
|
+
Move is semantic; it moves supported declarations and updates affected imports/references.
|
|
15
|
+
Use move as the default operation for moving declarations, including multi-target extractions.
|
|
12
16
|
|
|
13
17
|
If imports created by move do not match the repo style, run:
|
|
14
18
|
aib help config-setup.import-rules
|
|
15
19
|
|
|
16
|
-
|
|
17
|
-
move
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
Use preview/apply when you want to inspect the planned change before writing files.
|
|
22
|
-
Use execute when you want to write immediately.
|
|
20
|
+
Syntax:
|
|
21
|
+
move <targetFile>: <entity...>
|
|
22
|
+
|
|
23
|
+
Run:
|
|
24
|
+
aib mutate execute --stdin
|
|
23
25
|
|
|
24
|
-
Move several entities into one target:
|
|
25
|
-
Run:
|
|
26
|
-
aib move toFile execute --stdin
|
|
27
|
-
|
|
28
26
|
Input:
|
|
29
27
|
@source src/service.ts
|
|
30
28
|
move src/service.helpers.ts: oldHelper OtherHelper
|
|
29
|
+
move src/service.types.ts: ServiceOptions
|
|
@@ -1,46 +1,44 @@
|
|
|
1
|
-
|
|
1
|
+
Run mutation DSL through aib mutate.
|
|
2
|
+
Use execute for routine changes.
|
|
3
|
+
Use preview/apply when you want to review intent before writing.
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
Common commands:
|
|
6
|
+
aib mutate preview --stdin
|
|
7
|
+
aib mutate execute --stdin
|
|
8
|
+
aib mutate apply <mutateId>
|
|
6
9
|
|
|
7
|
-
|
|
10
|
+
moveToDir moves whole files into target directories.
|
|
8
11
|
Missing target directories are created automatically.
|
|
9
12
|
|
|
10
13
|
Use it when the filesystem layout is the intent.
|
|
11
14
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
file move toDir execute --stdin
|
|
15
|
-
file move toDir apply <previewId>
|
|
16
|
-
|
|
17
|
-
Use preview/apply when you want to inspect planned file moves before writing files.
|
|
18
|
-
Use execute when you want to write immediately.
|
|
15
|
+
Syntax:
|
|
16
|
+
moveToDir <targetDir>: <file...>
|
|
19
17
|
|
|
20
18
|
Run:
|
|
21
|
-
aib
|
|
22
|
-
|
|
23
|
-
Input:
|
|
24
|
-
@base src/svc
|
|
25
|
-
moveToDir facade: ../services/fileA.ts fileB.ts
|
|
26
|
-
moveToDir ../core/services: fileC.ts classes/main/fileD.ts
|
|
27
|
-
|
|
28
|
-
How this resolves:
|
|
29
|
-
../services/fileA.ts resolves to src/services/fileA.ts
|
|
30
|
-
fileB.ts resolves to src/svc/fileB.ts
|
|
31
|
-
facade resolves to src/svc/facade
|
|
32
|
-
../core/services resolves to src/core/services
|
|
19
|
+
aib mutate execute --stdin
|
|
20
|
+
|
|
21
|
+
Input:
|
|
22
|
+
@base src/svc
|
|
23
|
+
moveToDir facade: ../services/fileA.ts fileB.ts
|
|
24
|
+
moveToDir ../core/services: fileC.ts classes/main/fileD.ts
|
|
25
|
+
|
|
26
|
+
How this resolves:
|
|
27
|
+
../services/fileA.ts resolves to src/services/fileA.ts
|
|
28
|
+
fileB.ts resolves to src/svc/fileB.ts
|
|
29
|
+
facade resolves to src/svc/facade
|
|
30
|
+
../core/services resolves to src/core/services
|
|
33
31
|
moved files keep their basename, not their source subdirectory
|
|
34
|
-
|
|
35
|
-
Resulting files:
|
|
36
|
-
src/svc/facade/fileA.ts
|
|
37
|
-
src/svc/facade/fileB.ts
|
|
38
|
-
src/core/services/fileC.ts
|
|
32
|
+
|
|
33
|
+
Resulting files:
|
|
34
|
+
src/svc/facade/fileA.ts
|
|
35
|
+
src/svc/facade/fileB.ts
|
|
36
|
+
src/core/services/fileC.ts
|
|
39
37
|
src/core/services/fileD.ts
|
|
40
38
|
|
|
41
|
-
Rules:
|
|
42
|
-
- @base sets the base directory for source files and target directories.
|
|
43
|
-
- source file paths resolve from @base; cwd-relative paths are accepted when the @base path does not exist.
|
|
44
|
-
- target directories resolve from @base.
|
|
45
|
-
- source paths and target directories may use `..`.
|
|
46
|
-
-
|
|
39
|
+
Rules:
|
|
40
|
+
- @base sets the base directory for source files and target directories.
|
|
41
|
+
- source file paths resolve from @base; cwd-relative paths are accepted when the @base path does not exist.
|
|
42
|
+
- target directories resolve from @base.
|
|
43
|
+
- source paths and target directories may use `..`.
|
|
44
|
+
- moveToDir supports files, not directories.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Run mutation DSL through aib mutate.
|
|
2
|
+
Use execute for routine changes.
|
|
3
|
+
Use preview/apply when you want to review intent before writing.
|
|
4
|
+
|
|
5
|
+
Common commands:
|
|
6
|
+
aib mutate preview --stdin
|
|
7
|
+
aib mutate execute --stdin
|
|
8
|
+
aib mutate apply <mutateId>
|
|
9
|
+
|
|
10
|
+
If a name is ambiguous, use selectors.
|
|
11
|
+
Run help selectors to refresh selector syntax.
|
|
12
|
+
|
|
13
|
+
Use one mutate request for one ordered workflow.
|
|
14
|
+
Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
|
|
15
|
+
Order lines the way the workflow should run.
|
|
16
|
+
Do not include module lines in mixed requests.
|
|
17
|
+
|
|
18
|
+
Run:
|
|
19
|
+
aib mutate execute --stdin
|
|
20
|
+
|
|
21
|
+
Input:
|
|
22
|
+
@source src/service.ts
|
|
23
|
+
rename oldHelper->newHelper AUser->AdminUser
|
|
24
|
+
move src/service.helpers.ts: newHelper
|
|
25
|
+
move src/service.types.ts: AdminUser
|
|
26
|
+
|
|
27
|
+
@base src/main
|
|
28
|
+
moveToDir facade: ../services/fileA.ts fileB.ts
|
|
29
|
+
moveToDir ../core/services: fileC.ts classes/main/fileD.ts
|
|
30
|
+
|
|
31
|
+
@base src
|
|
32
|
+
renameFile svc/ws-cli.ts->cli.ts svc/ws-command.ts->command.ts
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
Mutation commands change code and files through TS/IDE-backed operations.
|
|
2
|
+
Successful mutations update affected references and imports.
|
|
3
|
+
|
|
4
|
+
Semantic mutations change TypeScript symbols/declarations.
|
|
5
|
+
File mutations change file layout.
|
|
6
|
+
|
|
7
|
+
After a successful mutation, do not manually patch the same imports unless aib reports a follow-up or checks show a real issue.
|
|
8
|
+
|
|
9
|
+
If mutation imports do not match the repo style, run:
|
|
10
|
+
aib help config-setup.import-rules
|
|
11
|
+
|
|
12
|
+
AIB mutations are designed to reduce manual checking.
|
|
13
|
+
Your job is to express the intent in DSL.
|
|
14
|
+
AIB's job is to convert that intent into code changes.
|
|
15
|
+
|
|
16
|
+
The DSL inside the request describes the intent:
|
|
17
|
+
rename rename TypeScript symbols
|
|
18
|
+
move move TypeScript declarations into target files
|
|
19
|
+
moveToDir move whole files into directories
|
|
20
|
+
renameFile rename whole files
|
|
21
|
+
module full-file split: move all declarations from one source into target modules
|
|
22
|
+
|
|
23
|
+
Mix rename, move, moveToDir, and renameFile when they belong to the same workflow.
|
|
24
|
+
Run module splits as a separate mutate request.
|
|
25
|
+
|
|
26
|
+
Do not read all changed files just because a mutation touched them.
|
|
27
|
+
That defeats the purpose of using AIB for mechanical refactors.
|
|
28
|
+
|
|
29
|
+
When the command completes, use its output as the source of truth for what changed and what remains.
|
|
30
|
+
After failure or partial success, use the output to decide the next request.
|
|
31
|
+
|
|
32
|
+
Set the command timeout to 5 minutes for AIB requests.
|
|
33
|
+
If the harness stops waiting before final output appears, recover with:
|
|
34
|
+
|
|
35
|
+
aib execution status last
|
|
36
|
+
|
|
37
|
+
Modes:
|
|
38
|
+
preview review DSL intent, then apply by id
|
|
39
|
+
apply execute from preview
|
|
40
|
+
execute execute immediately
|
|
41
|
+
|
|
42
|
+
Use preview/apply when you are learning a mutation command.
|
|
43
|
+
Use execute for routine requests.
|
|
44
|
+
|
|
45
|
+
preview/apply uses more tool calls and more output tokens.
|
|
46
|
+
preview checks the DSL intent; execute/apply writes files and can still hit mutation errors.
|
|
47
|
+
execute writes immediately and reports what changed.
|
|
48
|
+
|
|
49
|
+
Prefer one mutate DSL request for related changes.
|
|
50
|
+
For mixable operations, batch the ordered workflow instead of sending one command per symbol or file.
|
|
51
|
+
|
|
52
|
+
If a mutation cannot be fully completed, aib reports what failed, what was applied, and what did not run.
|
|
53
|
+
Fix wrong input before retrying; do not repeat provider/manual-extraction failures unchanged.
|
|
@@ -1,18 +1,9 @@
|
|
|
1
1
|
To refresh help protocol:
|
|
2
2
|
aib help help-protocol
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
Use qr for cross-OS quick reads of text files, logs, JSON, scripts, and line windows.
|
|
6
|
-
It is not a replacement for inspect.
|
|
7
|
-
Use normal text search when the question is just text.
|
|
8
|
-
|
|
9
|
-
For a first pass in a new codebase, map directories before reading files:
|
|
4
|
+
Working patterns
|
|
10
5
|
|
|
11
|
-
aib
|
|
12
|
-
|
|
13
|
-
Start compact for broad scans.
|
|
14
|
-
Use summary, locations, or local graph views first when output could be large.
|
|
15
|
-
Expand to code or wider graph views only for the parts that matter now.
|
|
6
|
+
Use aib before broad file reads when the question is about TS/JS structure, references, dependencies, or focused code.
|
|
16
7
|
If output hides data and shows `view: aib:res_<id>`, use `aib view ...` to fetch only the hidden part instead of repeating the original request.
|
|
17
8
|
|
|
18
9
|
Compact output is a starting point, not a substitute for needed code.
|
|
@@ -33,7 +24,7 @@ That defeats the purpose of using AIB for mechanical refactors.
|
|
|
33
24
|
If the command succeeds, the requested mechanical change was applied.
|
|
34
25
|
After failure or partial success, use the output to decide the next request.
|
|
35
26
|
|
|
36
|
-
|
|
27
|
+
Set the command timeout to 5 minutes for AIB requests.
|
|
37
28
|
|
|
38
29
|
If a mutation command times out or returns no final output, use:
|
|
39
30
|
|
package/dist/help/topics/qr.md
CHANGED
|
@@ -2,19 +2,25 @@ Use qr for cross-OS quick reads of text files: ts, js, cmd, sh, json, log, txt,
|
|
|
2
2
|
Use it for compact line windows and batching.
|
|
3
3
|
qr supports AIB path aliases.
|
|
4
4
|
|
|
5
|
-
It is not a replacement for inspect.
|
|
5
|
+
It is not a replacement for aib inspect in TS/JS cases.
|
|
6
6
|
Use it as a token-efficient way to read text data when semantic inspect is not needed.
|
|
7
7
|
|
|
8
8
|
For focused text reads, prefer qr over cat/Get-Content/type, especially when aliases, line windows, or batching help.
|
|
9
9
|
Use shell reads only when piping into shell tooling or qr is unavailable.
|
|
10
10
|
|
|
11
11
|
Controls:
|
|
12
|
-
h=N
|
|
13
|
-
t=N
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
h=N head; first N lines
|
|
13
|
+
t=N tail; last N lines
|
|
14
|
+
r=A:B,C:D,E ranges; A with next B lines, C with next D lines, E with default 80 lines
|
|
15
|
+
s=A:B,C:D,E slices; inclusive A through B, C through D, and line E
|
|
16
|
+
all whole file
|
|
16
17
|
|
|
17
18
|
If no window is provided, qr uses h=80.
|
|
18
|
-
If all is present, it
|
|
19
|
+
If all is present, it reads the whole file.
|
|
20
|
+
Avoid `all` for files whose size/content is unknown; it can dump unnecessary context.
|
|
21
|
+
Overlapping windows are merged.
|
|
22
|
+
|
|
23
|
+
Use s= when copying ranges from inspect file.
|
|
24
|
+
Combine windows for the same file instead of repeating the path.
|
|
19
25
|
|
|
20
26
|
{{qr.inline.examples}}
|