Skip to content

feat(ai): multi-scale semantic outline & inspectional scanner (#272) - #282

Merged
dan-petty merged 1 commit into
release/v0.2.21from
feat/272-multi-scale-semantic-outline-scanner
Sep 19, 2026
Merged

dan-petty merged 1 commit into
release/v0.2.21from
feat/272-multi-scale-semantic-outline-scanner

Conversation

@dan-petty

@dan-petty dan-petty commented Sep 19, 2026

Copy link
Copy Markdown
Owner

Closes #272

Implements Mortimer Adler-inspired multi-scale semantic code outline and inspectional scanning across 3 discrete focal zoom levels:

  • Level 0 (Topology): AST class/method hierarchies, exported symbols, docstring summaries, and cyclomatic hotspots (< 200 tokens/file).
  • Level 1 (Structural Outline): Signatures, parameter types, return contracts, and control-flow sketches (> 85% token reduction).
  • Level 2 (Deep Focal Window): Line-bounded targeted code slices with surrounding breadcrumb context.

Key Deliverables

  • High-Performance Inspection Engine: Sub-10ms AST generation latency in src/devops_cli/ai/inspection.py.
  • CLI Subcommand: Native devops ai read with --inspect, --level, --lines, --symbol, --format, and --repo.
  • FastMCP Tool: Registered and verified ai_read tool in FastMCP server.
  • Pre-Analysis Integration: Connected semantic_outline to FileAnalysisMeta and analyze_single_file().
  • Comprehensive Test Suite: 11 unit and integration tests in tests/test_ai_inspection.py with structural tuple equality assertions.
  • Dynamic Documentation: Synchronized dynamic documentation across docs/CLI_REFERENCE.md, docs/MCP_TOOLS.md, and README.md.

Verification

  • uv run devops ci: Passed 100% across all 13 checks (3,408 passed, 0 failed, 0 warnings).
  • Architectural invariants: Verified cyclomatic complexity $M \le 10$ and nesting depth $\le 5$ project-wide.

@dan-petty dan-petty added this to the v0.2.21 milestone Sep 19, 2026
@dan-petty
dan-petty merged commit 0b96584 into release/v0.2.21 Sep 19, 2026
5 checks passed
@dan-petty
dan-petty deleted the feat/272-multi-scale-semantic-outline-scanner branch September 19, 2026 13:51
dan-petty added a commit that referenced this pull request Sep 19, 2026
* feat(release): v0.2.21 (#279)

* fix(reliability): harden exception handling, optimize telemetry & clean data tier (#280) (#281)

* feat(reliability): harden exception handling, optimize telemetry & clean data tier (#280)

- Harden exception handling across AI, Git, Security, and Core modules with explicit error types and context
- Prevent silent error suppression and arbitrary default fallbacks across public APIs
- Optimize Jaeger/OTel traces, Prometheus metrics, and FluentBit logging configurations
- Enhance GitHub rate limiting client with header tracking and proactive quota safety
- Clean up .data directory handling, configure dedicated data.dir path, and deduplicate config writes
- Add forward-looking roadmap initiatives for process group management and merge readiness
- Expand test suites and architectural invariants for data dir config and stray script prevention
- Track deliverable completion in docs/agent/tasks/task-280-harden-exceptions-telemetry-data-tier.md

* fix(security): sanitize CodeQL clear-text secret logging in settings and credentials (#280)

* feat(ai): multi-scale semantic outline & inspectional scanner (#272) (#282)

* feat(ai, telemetry): dynamic slot leasing, telemetry deduplication, and context-aware file review (#283) (#284)

- Implement dynamic least-loaded slot leasing across candidate Ollama servers using condition variables to prevent Head-of-Line blocking.
- Add multi-layered file classification (shebangs, MIME types, AST/JSON/YAML/TOML parsing, canonical filenames/extensions) to route documentation, configuration, and code files to specialized review task prompts and persona subsets.
- Optimize review pre-analysis batching to run static AST extraction without redundant LLM chat calls.
- Fix OTelTyper lazy proxy registration to attribute code.namespace and code.function to target commands and eliminate duplicate telemetry attributes.
- Add comprehensive test suites for slot leasing, file classification, and telemetry deduplication.

* feat(ai): priority classification for AI/LLM requests (#285) (#286)

* docs(roadmap): expand v0.2.24 with 8 vibes-grounded improvements from Obs 18-20, Systems 09-10

New roadmap items derived from empirical vibes observations:

P0 - Critical:
- Lazy Domain-Gated MCP Tool Schema Hydration (Obs 18): 100+ tools consume 25% of context window; lazy hydration reclaims 85%
- Pipeline Stage Context Budgeting & Invariant Pinning (Obs 19): sequential pipeline context bloat; invariant eviction under multi-turn drift
- Capability-Gated Model Failover & AIMD Batch Recovery (Obs 20): 70B→14B failover cliff; one-way embedding batch ratchet

P1 - High:
- Lossless Structured Error Reflection for Schema Retries (Obs 19): 256-char truncation forces multi-turn retry loops
- Background Shell Pipe Deadlock Fix & Output Contract (Systems Obs 09): 64KB pipe buffer deadlock on verbose commands
- Structured Constraint Propagation Across Subagent Delegation (Systems Obs 09): 3-layer delegation retains only 61% fidelity
- MCP Resource-First Data Access & Tool Output Sandboxing (Systems Obs 10): Resources 3x cheaper for read-heavy patterns
- Lossless Structured Error Reflection (Obs 19): single-turn correction via structured field-path errors

* feat(ai): priority classification for AI/LLM requests (#285)

* feat(roadmap): add GitHub/VS Code agentic integrations and Grafana dashboards (#287, #289) (#288)

* feat(roadmap): add GitHub and VS Code agentic integrations (#287)

* feat(roadmap): add devops-cli Grafana dashboards suite (#289)

* feat(ai): track approximate lifetime spend per backend service with prometheus and grafana observability (#290) (#291)

* feat(ai): track approximate lifetime spend per backend service with prometheus and grafana observability (#290)

* fix(security): resolve Bandit B608 by using static parameterized queries in SpendLedger

* feat(ai, k8s): prioritize roadmap into 0.3.x-0.5.x lines and integrate LightLLM and Portkey AI routing (#292)

* feat(ai, k8s): prioritize roadmap into 0.3.x-0.5.x lines and integrate LightLLM and Portkey AI routing

* feat(roadmap, k8s): add turnkey Grafana dashboards for all Kubernetes stacks (#293) (#294)

* feat(roadmap, k8s): add turnkey Grafana dashboards for all Kubernetes stacks (#293)

* docs(sdlc): fix Phase 6 Mermaid release choreography diagram

* feat(roadmap): synchronize milestones, issues #307-#326, release epics, and project fields (#327)

* docs(release): compile v0.2.21 changelog notes (#328)

* fix(release): query milestone deliverables and enforce branch protection in pre-commit (#331)

* fix(release): query milestone deliverables and enforce branch protection in pre-commit (#330)

* build(ci): move devops ci quality gate to pre-push hook
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant