sourcecode 1.35.10__tar.gz → 1.35.11__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.
Files changed (103) hide show
  1. {sourcecode-1.35.10 → sourcecode-1.35.11}/PKG-INFO +1 -1
  2. {sourcecode-1.35.10 → sourcecode-1.35.11}/pyproject.toml +1 -1
  3. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/__init__.py +1 -1
  4. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/serializer.py +8 -1
  5. {sourcecode-1.35.10 → sourcecode-1.35.11}/.github/workflows/build-windows.yml +0 -0
  6. {sourcecode-1.35.10 → sourcecode-1.35.11}/.gitignore +0 -0
  7. {sourcecode-1.35.10 → sourcecode-1.35.11}/.ruff.toml +0 -0
  8. {sourcecode-1.35.10 → sourcecode-1.35.11}/CHANGELOG.md +0 -0
  9. {sourcecode-1.35.10 → sourcecode-1.35.11}/CONTRIBUTING.md +0 -0
  10. {sourcecode-1.35.10 → sourcecode-1.35.11}/LICENSE +0 -0
  11. {sourcecode-1.35.10 → sourcecode-1.35.11}/README.md +0 -0
  12. {sourcecode-1.35.10 → sourcecode-1.35.11}/SECURITY.md +0 -0
  13. {sourcecode-1.35.10 → sourcecode-1.35.11}/raw +0 -0
  14. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/adaptive_scanner.py +0 -0
  15. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/architecture_analyzer.py +0 -0
  16. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/architecture_summary.py +0 -0
  17. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/ast_extractor.py +0 -0
  18. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/cache.py +0 -0
  19. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/canonical_ir.py +0 -0
  20. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/cir_graphs.py +0 -0
  21. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/classifier.py +0 -0
  22. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/cli.py +0 -0
  23. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/code_notes_analyzer.py +0 -0
  24. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/confidence_analyzer.py +0 -0
  25. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/context_scorer.py +0 -0
  26. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/context_summarizer.py +0 -0
  27. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/contract_model.py +0 -0
  28. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/contract_pipeline.py +0 -0
  29. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/coverage_parser.py +0 -0
  30. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/dependency_analyzer.py +0 -0
  31. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/__init__.py +0 -0
  32. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/base.py +0 -0
  33. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/csproj_parser.py +0 -0
  34. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/dart.py +0 -0
  35. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/dotnet.py +0 -0
  36. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/elixir.py +0 -0
  37. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/go.py +0 -0
  38. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/heuristic.py +0 -0
  39. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/hybrid.py +0 -0
  40. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/java.py +0 -0
  41. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/jvm_ext.py +0 -0
  42. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/nodejs.py +0 -0
  43. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/parsers.py +0 -0
  44. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/php.py +0 -0
  45. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/project.py +0 -0
  46. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/python.py +0 -0
  47. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/ruby.py +0 -0
  48. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/rust.py +0 -0
  49. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/systems.py +0 -0
  50. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/terraform.py +0 -0
  51. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/detectors/tooling.py +0 -0
  52. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/doc_analyzer.py +0 -0
  53. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/entrypoint_classifier.py +0 -0
  54. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/env_analyzer.py +0 -0
  55. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/error_schema.py +0 -0
  56. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/file_classifier.py +0 -0
  57. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/flow_analyzer.py +0 -0
  58. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/git_analyzer.py +0 -0
  59. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/graph_analyzer.py +0 -0
  60. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/license.py +0 -0
  61. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/__init__.py +0 -0
  62. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/onboarding/__init__.py +0 -0
  63. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/onboarding/applier.py +0 -0
  64. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/onboarding/backup.py +0 -0
  65. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/onboarding/detector.py +0 -0
  66. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/onboarding/planner.py +0 -0
  67. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/orchestrator.py +0 -0
  68. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/registry.py +0 -0
  69. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/runner.py +0 -0
  70. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp/server.py +0 -0
  71. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/mcp_nudge.py +0 -0
  72. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/metrics_analyzer.py +0 -0
  73. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/output_budget.py +0 -0
  74. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/path_filters.py +0 -0
  75. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/pr_comment_renderer.py +0 -0
  76. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/prepare_context.py +0 -0
  77. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/progress.py +0 -0
  78. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/ranking_engine.py +0 -0
  79. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/redactor.py +0 -0
  80. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/relevance_scorer.py +0 -0
  81. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/repo_classifier.py +0 -0
  82. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/repository_ir.py +0 -0
  83. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/ris.py +0 -0
  84. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/runtime_classifier.py +0 -0
  85. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/scanner.py +0 -0
  86. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/schema.py +0 -0
  87. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/semantic_analyzer.py +0 -0
  88. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_event_topology.py +0 -0
  89. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_findings.py +0 -0
  90. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_impact.py +0 -0
  91. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_model.py +0 -0
  92. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_security_audit.py +0 -0
  93. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_semantic.py +0 -0
  94. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/spring_tx_analyzer.py +0 -0
  95. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/summarizer.py +0 -0
  96. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/__init__.py +0 -0
  97. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/config.py +0 -0
  98. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/consent.py +0 -0
  99. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/events.py +0 -0
  100. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/filters.py +0 -0
  101. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/telemetry/transport.py +0 -0
  102. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/tree_utils.py +0 -0
  103. {sourcecode-1.35.10 → sourcecode-1.35.11}/src/sourcecode/workspace.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sourcecode
3
- Version: 1.35.10
3
+ Version: 1.35.11
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
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "sourcecode"
7
- version = "1.35.10"
7
+ version = "1.35.11"
8
8
  description = "Persistent structural context and ultra-fast repeated analysis for AI coding agents"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -1,3 +1,3 @@
1
1
  """sourcecode — Deterministic codebase context maps for AI coding agents."""
2
2
 
3
- __version__ = "1.35.10"
3
+ __version__ = "1.35.11"
@@ -1090,10 +1090,14 @@ def _architecture_context(sm: SourceMap) -> dict[str, Any]:
1090
1090
  if arch.limitations:
1091
1091
  ctx["limitations"] = arch.limitations
1092
1092
  return ctx
1093
+ # Promote low→medium when a real pattern was detected.
1094
+ # "low" in that case reflects missing docs (no OpenAPI/ADR), not structural
1095
+ # uncertainty — mirrors the same promotion in confidence_analyzer._compute_overall().
1096
+ _eff_confidence = "medium" if arch.confidence == "low" and pattern else arch.confidence
1093
1097
  ctx = {
1094
1098
  "summary": sm.architecture_summary,
1095
1099
  "pattern": pattern or "insufficient_evidence",
1096
- "confidence": arch.confidence,
1100
+ "confidence": _eff_confidence,
1097
1101
  "method": arch.method,
1098
1102
  }
1099
1103
  if arch.layers:
@@ -1197,6 +1201,9 @@ def _section_confidence(sm: SourceMap) -> dict[str, str]:
1197
1201
  arch_conf = "low"
1198
1202
  if sm.architecture is not None and sm.architecture.requested:
1199
1203
  arch_conf = sm.architecture.confidence
1204
+ _arch_pattern = sm.architecture.pattern
1205
+ if arch_conf == "low" and _arch_pattern not in (None, "unknown", "flat"):
1206
+ arch_conf = "medium"
1200
1207
  file_conf = "medium" if sm.file_paths else "low"
1201
1208
  return {
1202
1209
  "stack": cs.stack_confidence if cs else "low",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes