Metadata-Version: 2.4
Name: tesserakit-docs
Version: 0.4.0
Summary: Docs job pack for Tessera: measure Python docstring coverage for public symbols.
Project-URL: Homepage, https://github.com/ShaileshRawat1403/tessera
Project-URL: Repository, https://github.com/ShaileshRawat1403/tessera
Project-URL: Issues, https://github.com/ShaileshRawat1403/tessera/issues
Author: Shailesh Rawat
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: pydantic>=2.7
Requires-Dist: rich>=13.7
Requires-Dist: tesserakit-core>=0.1.0
Requires-Dist: typer>=0.12
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == 'dev'
Description-Content-Type: text/markdown

# tesserakit-docs

Measure Python docstring coverage for public symbols.

`tessera-docs` parses Python source with the standard-library `ast` module (it never imports or runs the code), inventories every documentable symbol (modules, classes, functions, methods), and reports which public ones lack docstrings.

## Coverage check

```bash
tessera docs coverage --input . --output ./out/docs_pack
tessera docs coverage --input . --include-tests   # also scan test files
```

Test files are excluded by default; pass `--include-tests` to include them.

Artifacts written:

```text
symbols.jsonl            one DocSymbol per symbol (kind, public, has_docstring, line)
index.md                 coverage headline
validation_report.md     missing-docstring findings + low-coverage warning
coverage_report.md       coverage by kind and lowest-coverage files
undocumented.md          every undocumented public symbol with file:line
```

## What counts

- **Public** = name does not start with `_` (so `_private` and `__dunder__` are excluded).
- Symbol kinds: `module`, `class`, `function`, `method`.
- A symbol is documented if `ast.get_docstring` returns a value.

## Findings

- `missing_module_docstring` (info)
- `missing_class_docstring`, `missing_function_docstring`, `missing_method_docstring` (warning)
- `low_doc_coverage` — overall public coverage below 80%
- `parse_error` — a file could not be parsed
- `no_public_symbols` — nothing public found
