Skip to content

Code Metrics

Generated: 2026-10-09 22:49 UTC


Lines of Code

Files Code Comment Blank Total
Source 36 3 011 1 019 256 4 286
Tests 33 3 781 479 440 4 700
Combined 69 6 792 1 498 696 8 986
  • Comment/code ratio: 34%
  • Test/source ratio: 125.6%
Source by module (click to expand)
Module Files Code Comment Blank
terok_clearance/ 36 3 011 1 019 256
terok_clearance/cli/ 8 190 92 51
terok_clearance/cli/verbs/ 5 57 48 22
terok_clearance/cli/verbs/clearance.py — 9 12 7
terok_clearance/cli/verbs/notify.py — 30 14 1
terok_clearance/cli/verbs/serve.py — 9 11 7
terok_clearance/cli/verbs/serve_verdict.py — 9 11 7
terok_clearance/cli/main.py — 23 19 1
terok_clearance/cli/terminal_clearance.py — 110 25 28
terok_clearance/client/ 3 850 194 31
terok_clearance/client/client.py — 172 57 9
terok_clearance/client/subscriber.py — 678 137 22
terok_clearance/domain/ 2 48 44 11
terok_clearance/domain/events.py — 48 44 11
terok_clearance/hub/ 3 583 185 29
terok_clearance/hub/ingester.py — 132 39 6
terok_clearance/hub/server.py — 451 146 23
terok_clearance/notifications/ 5 618 220 53
terok_clearance/notifications/callback.py — 150 28 6
terok_clearance/notifications/desktop.py — 394 124 29
terok_clearance/notifications/factory.py — 21 36 13
terok_clearance/notifications/protocol.py — 53 32 5
terok_clearance/resources/ 1 82 1 1
terok_clearance/runtime/ 2 13 26 8
terok_clearance/runtime/service.py — 13 26 8
terok_clearance/verdict/ 5 295 93 33
terok_clearance/verdict/client.py — 102 7 2
terok_clearance/verdict/interface.py — 31 31 11
terok_clearance/verdict/server.py — 157 44 14
terok_clearance/verdict/socket.py — 5 11 6
terok_clearance/wire/ 5 196 136 34
terok_clearance/wire/errors.py — 59 9 7
terok_clearance/wire/interface.py — 43 35 5
terok_clearance/wire/sanitize.py — 26 69 8
terok_clearance/wire/socket.py — 68 23 14
terok_clearance/__init__.py — 113 14 2
terok_clearance/commands.py — 23 14 3

Architecture

Module Dependency Graph

graph TD
    terok_clearance.wire.errors --> terok_clearance.wire.interface
    terok_clearance.notifications.factory --> terok_clearance.notifications.desktop
    terok_clearance.hub.server --> terok_clearance.hub.ingester
    terok_clearance.hub.server --> terok_clearance.runtime.service
    terok_clearance.hub.server --> terok_clearance.verdict.client
    terok_clearance.verdict.socket --> terok_clearance.wire.socket
    terok_clearance.verdict.server --> terok_clearance.runtime.service
    terok_clearance.client.subscriber --> terok_clearance.client.client
    terok_clearance.cli.main --> terok_clearance.commands
    terok_clearance.cli.verbs.clearance --> terok_clearance.cli.terminal_clearance
    terok_clearance
    terok_clearance.domain.events
    terok_clearance.wire.socket
    terok_clearance.wire.interface
    terok_clearance.wire.sanitize
    terok_clearance.notifications.protocol
    terok_clearance.notifications.callback
    terok_clearance.notifications.desktop
    terok_clearance.hub.ingester
    terok_clearance.verdict.interface
    terok_clearance.verdict.client
    terok_clearance.client.client
    terok_clearance.runtime.service
    terok_clearance.commands
    terok_clearance.cli.terminal_clearance
    terok_clearance.cli.verbs.notify
    terok_clearance.cli.verbs.serve
    terok_clearance.cli.verbs.serve_verdict

Module Boundaries

26 modules, 10 dependency edges — all boundaries validated.

Module Summary

26 modules (click to expand)
Module Deps Description
terok_clearance 0
terok_clearance.domain.events 0
terok_clearance.wire.socket 0
terok_clearance.wire.interface 0
terok_clearance.wire.errors 1
terok_clearance.wire.sanitize 0 without having to climb back up to renderer-specific helpers.
terok_clearance.notifications.protocol 0 notification tree; the three concrete backends are infrastructure.
terok_clearance.notifications.callback 0
terok_clearance.notifications.desktop 0
terok_clearance.notifications.factory 1
terok_clearance.hub.ingester 0 Hub — varlink server + reader ingestion + shield exec.
terok_clearance.hub.server 3
terok_clearance.verdict.interface 0 the hub handles all authz before forwarding a triple here.
terok_clearance.verdict.socket 1
terok_clearance.verdict.client 0
terok_clearance.verdict.server 1
terok_clearance.client.client 0 Client — varlink consumer library.
terok_clearance.client.subscriber 1
terok_clearance.runtime.service 0 Runtime — deployment helpers.
terok_clearance.cli.main 1
terok_clearance.commands 0 through importlib at wire time. No intra-package static edge.
terok_clearance.cli.terminal_clearance 0
terok_clearance.cli.verbs.notify 0
terok_clearance.cli.verbs.serve 0
terok_clearance.cli.verbs.serve_verdict 0
terok_clearance.cli.verbs.clearance 1

Test Coverage

Overall line coverage: 90.7% (1252/1380 statements).

Each rectangle is a source file. Area is proportional to the number of statements; colour encodes the coverage percentage (green = fully covered, red = uncovered). Files are grouped by the first 3 directory levels.

Cognitive Complexity

Threshold: 15 (functions above this are listed below)

  • Functions analyzed: 141
  • Median complexity: 1 · Average: 2.1 · Max: 29
  • Within threshold (15): 99% (139/141)
    0–  3 │ ██████████████████████████████ 117 (83.0%)
    4–  6 │ ████                            16 (11.3%)
    7–  9 │ █                                3 ( 2.1%)
   10– 12 │ █                                3 ( 2.1%)
   13– 15 │                                  0 ( 0.0%) ◄ threshold
   16– 18 │                                  0 ( 0.0%)
   19– 21 │                                  1 ( 0.7%)
   22– 25 │                                  0 ( 0.0%)
   26+    │                                  1 ( 0.7%)

2 functions exceeding threshold:

Complexity Function File
29 ClearanceClient::_run_stream src/terok_clearance/client/client.py
21 EventSubscriber::_on_event src/terok_clearance/client/subscriber.py

Dead Code Analysis

No dead code found at 80% confidence threshold.

Docstring Coverage

  • Needed: 10; Found: 9; Missing: 1; Coverage: 90.0%
  • Needed: 23; Found: 21; Missing: 2; Coverage: 91.3%
  • Needed: 11; Found: 10; Missing: 1; Coverage: 90.9%
  • Needed: 200 - Found: 196 - Missing: 4
  • Total coverage: 98.0% - Grade: Excellent

Generated by scc, complexipy, vulture, tach, and docstr-coverage.