sourcecode 5.5.5__tar.gz → 5.5.6__tar.gz
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.
- {sourcecode-5.5.5 → sourcecode-5.5.6}/CHANGELOG.md +14 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/PKG-INFO +3 -3
- {sourcecode-5.5.5 → sourcecode-5.5.6}/README.md +2 -2
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/USER_GUIDE.md +1 -1
- {sourcecode-5.5.5 → sourcecode-5.5.6}/pyproject.toml +1 -1
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/__init__.py +1 -1
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/cli.py +12 -6
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/repository_ir.py +0 -2
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/servlet_surface.py +40 -27
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/timeline.py +6 -1
- {sourcecode-5.5.5 → sourcecode-5.5.6}/.github/workflows/build-windows.yml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/.github/workflows/perf-gate.yml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/.gitignore +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/.ruff.toml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/CLAUDE.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/CONTRIBUTING.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/LICENSE +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/SECURITY.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/CACHE.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/COMMERCIAL-OFFER.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/CUSTOMER-VALIDATION.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/DEFECT-LEDGER.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/DEMO-5MIN.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/DEVELOPMENT-ROADMAP.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/EXECUTION-PLAN-12MO.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/EXECUTIVE-ROADMAP.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/MANUAL-USUARIO.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/MODERNIZATION.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/PRODUCT_AUDIT.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/PRODUCT_IDENTITY.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/PRODUCT_TIERS.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/RC1-CHECKLIST.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/RELEASE-CHECKLIST.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/CATALOG-retrieval-intents.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-knowledge-provider-integration.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p5.3b-statement-surface.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p5.5-span-index.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p6-semantic-impact-engine.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p6-semantic-integration-engine.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p7-semantic-services.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-robustness-security-inference.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-semantic-retrieval.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/EPV-p6-class-typeref.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p6-flow-analyzer-comparison.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p6-integration-detector-comparison.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p8-flow-analyzer-migration.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p9-integration-detector-migration.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0001-semantic-ir.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0002-source-evidence-boundary.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0003-architectural-characterization.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0004-semantic-retrieval.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0005-evidence-reconciliation.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0006-performance-harness.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0007-composition-semantics.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0008-answer-coherence.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/consumer-disposition-inventory.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/overview.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/product-architecture-review.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/product-strategy-layering.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/semantic-ir-consumer-matrix.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/semantic-ir-roadmap.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/baseline-ci.yml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/commercial-pipeline-audit.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/contracts-ci.yml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/contracts.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-petclinic-rest-issue11-vets-pagination.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-petclinic-rest-issue147-validation.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-petclinic-rest-workflow.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-phase18-openapi-surface.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-phase20-validation-surface.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-16-broadleaf-checkout-impact-fieldtest.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-16-petclinic-rest-issue11-weakness2-closed.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-16-spring-petclinic-issue2333-dead-vets.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/licensing-schema.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/migrate-check.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/README.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/REGRESSION-GATE.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/SUMMARY.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/alfresco__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/alfresco__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/broadleaf__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/broadleaf__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/eureka__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/eureka__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/jenkins__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/jenkins__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/jobrunr__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/jobrunr__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/keycloak__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/keycloak__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/neo4j__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/neo4j__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/ofbiz__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/ofbiz__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/openmrs__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/openmrs__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/petclinic__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.15/petclinic__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/SUMMARY.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/alfresco__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/alfresco__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/broadleaf__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/broadleaf__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/eureka__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/eureka__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/jenkins__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/jenkins__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/jobrunr__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/jobrunr__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/keycloak__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/keycloak__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/neo4j__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/neo4j__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/ofbiz__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/ofbiz__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/openmrs__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/openmrs__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/petclinic__ask__cold.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/2.5.16/petclinic__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/README.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__ask__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__endpoints__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__migrate-check__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__posture__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__spring-audit__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__validation__warm.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/reference-best/README.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/posture.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/privacy.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/pro-experience-audit.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/schema.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/spec/envelope-v1.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/docs/spring-audit-ci.yml +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/raw +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/compare_integration_engines.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/customer_smoke_test.sh +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/generate_jdk_exports.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/perf_gate.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/perf_harness.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/scripts/sync_gate_anchors.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/adaptive_scanner.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/archetype.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/architectural_baseline.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/architectural_delta.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/architecture_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/architecture_summary.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/ast_extractor.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/audit_report.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/baseline_autocapture.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/bundled_docs.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/cache.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/cache_model.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/call_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/caller_metrics.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/caller_reach.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/canonical_ir.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/chain_rules.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/change_plan.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/cir_graphs.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/classifier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/client_calls.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/code_notes_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/compare.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/confidence_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/constraint_diff.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/consumer_join.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/container_wiring.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/context_cache.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/context_graph.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/context_scorer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/context_summarizer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/contract_diff.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/contract_init.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/contract_model.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/contract_pipeline.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/coverage_parser.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/data_exposure.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/data_labels.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/declarations.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/defect_identity.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/degradation.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/dependency_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/deployment_prefix.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detach.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/base.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/csproj_parser.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/dart.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/dotnet.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/elixir.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/go.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/heuristic.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/hybrid.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/java.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/jvm_ext.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/nodejs.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/parsers.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/php.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/project.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/python.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/ruby.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/rust.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/systems.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/terraform.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/detectors/tooling.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/doc_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/dynamic_argument_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/endpoint_literals.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/endpoint_metrics.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/entrypoint_classifier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/env_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/envelope.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/environment_resolution.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/error_schema.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/evidence_provider.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/execution_plan.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/explain.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/facts/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/facts/registry.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/file_chunker.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/file_classifier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/filter_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/format_contract.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/fqn_utils.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/gate_anchors.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/git_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/git_checkout.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/graph_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/graph_evidence.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/hibernate_strat.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/identity_fallback.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/integration_coordinates.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/jdk_exports.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/license.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/manifest_cache.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/dependency_import.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/onboarding/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/onboarding/applier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/onboarding/backup.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/onboarding/detector.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/onboarding/planner.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/orchestrator.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/registry.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/runner.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp/server.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/mcp_nudge.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/metrics_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/migrate_check.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/migration_blast.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/non_coverage.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/openapi_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/openrewrite_recipe.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/output_budget.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/output_encoding.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/parallel.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/parse_cache.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/partial_contract.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/path_admission.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/path_filters.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/perf.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/phased_run.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/pipe_contract.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/posture.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/pr_comment_renderer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/pr_impact.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/prepare_context.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/progress.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/provenance.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/ranking_engine.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/readiness_timeline.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/readonly.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/reconciliation.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/redactor.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/reference_facts.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/release_info.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/relevance_scorer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/remedies.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/rename_refactor.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/repo_classifier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/context.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/errors.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/executor.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/planner.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/query.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/request.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/resolution.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/result.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/retriever.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/runtime.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_endpoint.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_graph.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_impact.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_intf.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_struct.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/retrieval/steps_txsec.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/ris.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/risk.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/rule_catalog.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/rule_pass.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/runs.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/runtime_classifier.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/sarif.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/scanner.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/schema.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/schemas/envelope-v1.schema.json +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/security_chain.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/security_config.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/security_config_scan.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/security_posture.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/semantic_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/semantic_impact_engine.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/semantic_integration_engine.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/semantic_services.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/serializer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/source_text.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_event_topology.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_findings.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_impact.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_model.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_profiles.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_properties.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_security_audit.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_semantic.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/spring_tx_analyzer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/sql_taint.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/summarizer.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/target_admission.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/__init__.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/config.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/consent.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/events.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/filters.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/telemetry/transport.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/test_gap_ranking.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/test_sources.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/text_input.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/token_estimate.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/tree_utils.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/type_usage_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/validation_inference.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/validation_surface.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/verify_edit.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/verify_repo.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/verify_rules.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/version_check.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/waivers.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/src/sourcecode/workspace.py +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/functions/README.md +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/functions/get-license/index.ts +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/functions/lemonsqueezy-webhook/index.ts +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/functions/telemetry/index.ts +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/sql/license_event_ordering.sql +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/sql/licensing_schema.sql +0 -0
- {sourcecode-5.5.5 → sourcecode-5.5.6}/supabase/sql/telemetry_events.sql +0 -0
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [5.5.6] — 2026-08-13
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
- `impact` now projects from the canonical IR, restoring typed static-method
|
|
9
|
+
callers without merging unrelated service-locator accessors.
|
|
10
|
+
- Legacy servlet descriptors account for mappings whose servlet declaration is
|
|
11
|
+
unavailable, and timeline Git metadata is decoded as UTF-8.
|
|
12
|
+
- Class FQNs remain class FQNs when used as impact seeds.
|
|
13
|
+
|
|
14
|
+
### Documentation
|
|
15
|
+
- Recorded the 5.5.5 re-audit balance, cache-measurement retractions, fixes,
|
|
16
|
+
and remaining output-budget, schema, timeline-cost, Git-basis and release
|
|
17
|
+
ledger work.
|
|
18
|
+
|
|
5
19
|
## [5.5.5] — 2026-08-13
|
|
6
20
|
|
|
7
21
|
**MSAS performance-audit corrections and read-only hygiene verification.**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sourcecode
|
|
3
|
-
Version: 5.5.
|
|
3
|
+
Version: 5.5.6
|
|
4
4
|
Summary: Persistent structural context and ultra-fast repeated analysis for AI coding agents
|
|
5
5
|
License-File: LICENSE
|
|
6
6
|
Keywords: agents,ai,codebase,context,developer-tools,llm
|
|
@@ -42,7 +42,7 @@ Description-Content-Type: text/markdown
|
|
|
42
42
|
|
|
43
43
|
**Context · Impact · Migration · Architecture · Review — everything from one structural model.**
|
|
44
44
|
|
|
45
|
-

|
|
46
46
|

|
|
47
47
|
|
|
48
48
|
> **ASK Engine** is the product. The CLI command is **`ask`**. The legacy **`sourcecode`**
|
|
@@ -126,7 +126,7 @@ brew tap haroundominique/sourcecode && brew install sourcecode
|
|
|
126
126
|
# pip / pipx
|
|
127
127
|
pipx install sourcecode # or: pip install sourcecode
|
|
128
128
|
|
|
129
|
-
ask version # ask 5.5.
|
|
129
|
+
ask version # ask 5.5.6 — and, on a build that has aged,
|
|
130
130
|
# how many releases have probably shipped since
|
|
131
131
|
```
|
|
132
132
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
**Context · Impact · Migration · Architecture · Review — everything from one structural model.**
|
|
6
6
|
|
|
7
|
-

|
|
8
8
|

|
|
9
9
|
|
|
10
10
|
> **ASK Engine** is the product. The CLI command is **`ask`**. The legacy **`sourcecode`**
|
|
@@ -88,7 +88,7 @@ brew tap haroundominique/sourcecode && brew install sourcecode
|
|
|
88
88
|
# pip / pipx
|
|
89
89
|
pipx install sourcecode # or: pip install sourcecode
|
|
90
90
|
|
|
91
|
-
ask version # ask 5.5.
|
|
91
|
+
ask version # ask 5.5.6 — and, on a build that has aged,
|
|
92
92
|
# how many releases have probably shipped since
|
|
93
93
|
```
|
|
94
94
|
|
|
@@ -6311,9 +6311,8 @@ def impact_cmd(
|
|
|
6311
6311
|
|
|
6312
6312
|
_enforce_format("impact", format)
|
|
6313
6313
|
|
|
6314
|
-
from sourcecode.repository_ir import
|
|
6315
|
-
|
|
6316
|
-
)
|
|
6314
|
+
from sourcecode.repository_ir import find_java_files, compute_blast_radius
|
|
6315
|
+
from sourcecode.context_graph import ContextGraph
|
|
6317
6316
|
from sourcecode.output_budget import BUDGET_IMPACT
|
|
6318
6317
|
|
|
6319
6318
|
# Legacy-compat: old syntax was `impact <path> <target>`.
|
|
@@ -6366,9 +6365,16 @@ def impact_cmd(
|
|
|
6366
6365
|
return
|
|
6367
6366
|
|
|
6368
6367
|
_prog = Progress()
|
|
6369
|
-
_prog.start(f"building
|
|
6368
|
+
_prog.start(f"building CIR ({len(file_list)} files) for impact analysis")
|
|
6370
6369
|
try:
|
|
6371
|
-
|
|
6370
|
+
# `impact-chain` resolves callers from the canonical IR, whose typed body
|
|
6371
|
+
# facts contribute method-level call edges. Reading the legacy parse-only
|
|
6372
|
+
# IR here made `impact` miss static calls (including locator accessors).
|
|
6373
|
+
from sourcecode import context_cache as _ctxcache
|
|
6374
|
+
try:
|
|
6375
|
+
cir = _ctxcache.shared_cir(root, file_list, progress=_work_sink(_prog))
|
|
6376
|
+
except Exception:
|
|
6377
|
+
cir = ContextGraph.build(file_list, root, progress=_work_sink(_prog)).cir
|
|
6372
6378
|
finally:
|
|
6373
6379
|
_prog.finish()
|
|
6374
6380
|
|
|
@@ -6379,7 +6385,7 @@ def impact_cmd(
|
|
|
6379
6385
|
# skipped the budget when writing to a file (C2-2).
|
|
6380
6386
|
_to_file = output_path is not None
|
|
6381
6387
|
result = compute_blast_radius(
|
|
6382
|
-
|
|
6388
|
+
cir._raw_ir, target, max_depth=depth, list_limit=0 if _to_file else None, root=root
|
|
6383
6389
|
)
|
|
6384
6390
|
result = _apply_budget(result, BUDGET_IMPACT, label="impact", output_path=output_path)
|
|
6385
6391
|
if _misread and result.get("resolution") == "not_found":
|
|
@@ -88,42 +88,53 @@ def _from_web_xml(xml_path: Path, relative: str) -> "tuple[list[ServletMapping],
|
|
|
88
88
|
text = xml_path.read_text(encoding="utf-8", errors="replace")
|
|
89
89
|
root = ET.fromstring(text)
|
|
90
90
|
except Exception:
|
|
91
|
-
|
|
91
|
+
# Legacy descriptors can contain constructs ElementTree rejects. Keep the
|
|
92
|
+
# lexical fallback below, including its omission census; returning here
|
|
93
|
+
# made an undeclared live mapping look as though it had never existed.
|
|
94
|
+
root = None
|
|
92
95
|
classes: "dict[str, str]" = {}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
96
|
+
if root is not None:
|
|
97
|
+
for elem in root.iter():
|
|
98
|
+
if _local(elem.tag) != "servlet":
|
|
99
|
+
continue
|
|
100
|
+
name = _child_text(elem, "servlet-name")
|
|
101
|
+
klass = _child_text(elem, "servlet-class")
|
|
102
|
+
if name:
|
|
103
|
+
classes[name] = klass
|
|
100
104
|
out: "list[ServletMapping]" = []
|
|
101
105
|
undeclared_servlet_mappings = 0
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
name = _child_text(elem, "servlet-name")
|
|
106
|
-
if not name or name not in classes:
|
|
107
|
-
undeclared_servlet_mappings += sum(
|
|
108
|
-
1 for child in elem.iter()
|
|
109
|
-
if _local(child.tag) == "url-pattern" and (child.text or "").strip()
|
|
110
|
-
)
|
|
111
|
-
continue
|
|
112
|
-
for child in elem.iter():
|
|
113
|
-
if _local(child.tag) != "url-pattern" or not (child.text or "").strip():
|
|
106
|
+
if root is not None:
|
|
107
|
+
for elem in root.iter():
|
|
108
|
+
if _local(elem.tag) != "servlet-mapping":
|
|
114
109
|
continue
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
110
|
+
name = _child_text(elem, "servlet-name")
|
|
111
|
+
if not name or name not in classes:
|
|
112
|
+
undeclared_servlet_mappings += sum(
|
|
113
|
+
1 for child in elem.iter()
|
|
114
|
+
if _local(child.tag) == "url-pattern" and (child.text or "").strip()
|
|
115
|
+
)
|
|
116
|
+
continue
|
|
117
|
+
for child in elem.iter():
|
|
118
|
+
if _local(child.tag) != "url-pattern" or not (child.text or "").strip():
|
|
119
|
+
continue
|
|
120
|
+
out.append(ServletMapping(
|
|
121
|
+
url_pattern=child.text.strip(),
|
|
122
|
+
servlet_name=name,
|
|
123
|
+
servlet_class=classes.get(name, ""),
|
|
124
|
+
source_file=relative,
|
|
125
|
+
source="web.xml",
|
|
126
|
+
))
|
|
122
127
|
# Keep a tolerant lexical fallback for descriptors containing legacy XML
|
|
123
128
|
# constructs that ElementTree rejects or partially normalizes. Comments are
|
|
124
129
|
# removed first so commented deployment examples never become live routes.
|
|
125
130
|
try:
|
|
126
131
|
active = re.sub(r"<!--.*?-->", "", text, flags=re.DOTALL)
|
|
132
|
+
if root is None:
|
|
133
|
+
for block in re.findall(r"<servlet\b[^>]*>(.*?)</servlet>", active, re.DOTALL | re.IGNORECASE):
|
|
134
|
+
name_match = re.search(r"<servlet-name\b[^>]*>\s*([^<]+?)\s*</servlet-name>", block, re.DOTALL | re.IGNORECASE)
|
|
135
|
+
class_match = re.search(r"<servlet-class\b[^>]*>\s*([^<]+?)\s*</servlet-class>", block, re.DOTALL | re.IGNORECASE)
|
|
136
|
+
if name_match:
|
|
137
|
+
classes[name_match.group(1).strip()] = class_match.group(1).strip() if class_match else ""
|
|
127
138
|
for block in re.findall(r"<servlet-mapping\b[^>]*>(.*?)</servlet-mapping>", active, re.DOTALL | re.IGNORECASE):
|
|
128
139
|
name_match = re.search(r"<servlet-name\b[^>]*>\s*([^<]+?)\s*</servlet-name>", block, re.DOTALL | re.IGNORECASE)
|
|
129
140
|
pattern_match = re.search(r"<url-pattern\b[^>]*>\s*([^<]+?)\s*</url-pattern>", block, re.DOTALL | re.IGNORECASE)
|
|
@@ -131,6 +142,8 @@ def _from_web_xml(xml_path: Path, relative: str) -> "tuple[list[ServletMapping],
|
|
|
131
142
|
continue
|
|
132
143
|
servlet_name = name_match.group(1).strip() if name_match else ""
|
|
133
144
|
if not servlet_name or servlet_name not in classes:
|
|
145
|
+
if root is None:
|
|
146
|
+
undeclared_servlet_mappings += 1
|
|
134
147
|
continue
|
|
135
148
|
candidate = ServletMapping(
|
|
136
149
|
url_pattern=pattern_match.group(1).strip(),
|
|
@@ -211,7 +211,12 @@ class Sample:
|
|
|
211
211
|
|
|
212
212
|
def _git(repo: Path, *args: str) -> subprocess.CompletedProcess:
|
|
213
213
|
return subprocess.run(
|
|
214
|
-
["git", "-C", str(repo),
|
|
214
|
+
["git", "-C", str(repo), "-c", "i18n.logOutputEncoding=utf-8", *args],
|
|
215
|
+
capture_output=True,
|
|
216
|
+
text=True,
|
|
217
|
+
encoding="utf-8",
|
|
218
|
+
errors="replace",
|
|
219
|
+
check=False,
|
|
215
220
|
)
|
|
216
221
|
|
|
217
222
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-knowledge-provider-integration.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-p6-semantic-integration-engine.md
RENAMED
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/DESIGN-robustness-security-inference.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p6-flow-analyzer-comparison.md
RENAMED
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p6-integration-detector-comparison.md
RENAMED
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p8-flow-analyzer-migration.md
RENAMED
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/REPORT-p9-integration-detector-migration.md
RENAMED
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0002-source-evidence-boundary.md
RENAMED
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/architecture/adr/0003-architectural-characterization.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-petclinic-rest-issue11-vets-pagination.md
RENAMED
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-15-petclinic-rest-issue147-validation.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-16-broadleaf-checkout-impact-fieldtest.md
RENAMED
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/eval/2026-06-16-spring-petclinic-issue2333-dead-vets.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__ask__warm.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sourcecode-5.5.5 → sourcecode-5.5.6}/docs/perf/baselines/gate-latest/broadleaf__posture__warm.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|