Metadata-Version: 2.4
Name: blindspot
Version: 0.0.3
Summary: The bus factor for the AI era. Map team knowledge blindspots before someone leaves.
Project-URL: Homepage, https://github.com/aydincn/blindspot
Project-URL: Repository, https://github.com/aydincn/blindspot
Project-URL: Documentation, https://github.com/aydincn/blindspot/tree/main/docs
Project-URL: Changelog, https://github.com/aydincn/blindspot/blob/main/CHANGELOG.md
Author: Aydın Çetin
License: MIT
License-File: LICENSE
Keywords: bus-factor,code-analysis,engineering-resilience,knowledge-graph,ownership
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: >=3.11
Requires-Dist: gitpython>=3.1.40
Requires-Dist: jinja2>=3.1
Requires-Dist: networkx>=3.2
Requires-Dist: pydantic>=2.5
Requires-Dist: pyyaml>=6.0
Requires-Dist: rich>=13.7
Requires-Dist: typer>=0.12
Provides-Extra: dev
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.5; extra == 'dev'
Requires-Dist: types-pyyaml; extra == 'dev'
Description-Content-Type: text/markdown

# blindspot

**The bus factor for the AI era.** Map your team's knowledge blindspots before someone leaves.

> 🚧 **Pre-alpha.** Codename: *Blindspot*. APIs and metrics will change.

## Why

AI coding tools made engineering teams faster. But faster does not mean *understood*. Codebases now carry a new kind of risk: services that shipped quickly, owned by one person, reviewed by no one in depth — and that one person can leave tomorrow.

Existing tools measure velocity. **blindspot measures resilience.**

## What it measures

- **Ownership concentration** — who *actually* understands each part of the codebase, weighted by recency and review depth
- **Bus factor** per service / folder — how many people would need to leave before knowledge is critically lost
- **Review lineage** — who reviews what, and where reviewer redundancy is dangerously thin
- **Departure simulation** — *"If two senior devs on Payment leave next month, what coverage do we lose?"*
- **Knowledge decay** — code volatility and contributor drift, projected 30 / 60 / 90 days forward

## Quick start

```bash
pip install blindspot
blindspot scan /path/to/repo --output blindspot_report.html
blindspot simulate --person alice@example.com /path/to/repo
```

Output is a single self-contained HTML file. No server, no signup, no telemetry.

A rule-based narrator ships in the package — `pip install blindspot && blindspot scan /repo` produces a full report with an executive summary out of the box. Configure a cloud LLM key (Anthropic or OpenAI) for richer prose; the report itself shows you how.

## Documentation

Full end-to-end documentation lives in [docs/](docs/README.md) — the
algorithms (with formulas and parameters), the architecture, the CLI
reference, configuration, and how to read every section of the report.

## Design principles

- **Service-first, not person-first.** Default views show service-level risk. Individual views require explicit, justified access.
- **Evidence over inference.** AI-usage signals come from official telemetry (e.g. GitHub Copilot Usage API) when available — not from guessing.
- **Reports, not surveillance.** blindspot answers *"is this service fragile?"*, not *"is this person slacking?"*.

## Roadmap

| Phase | Surface | Status |
|---|---|---|
| 1 | CLI + static HTML report | In progress |
| 1 | GitHub Action + Checks API output | Planned |
| 2 | Self-hosted dashboard | Planned |
| 2 | AI signal layer (Copilot Usage API) | Planned |
| 3 | Slack / Jira / incident integration | Planned |

## License

MIT. See [LICENSE](LICENSE).
