#865 Split api/blueprints/v1/invitations.py (1155 lines, over 550 hard cap)

open medium file-size tech-debt Created 2026-08-22 11:45 · Updated 2026-08-22 11:45

Description

Edit
EARS SPEC: - The file api/blueprints/v1/invitations.py shall be reduced to at most 500 lines, and shall never exceed the 550-line hard cap. - When api/blueprints/v1/invitations.py is split, the module path callers already import shall keep working unchanged. - The split shall NOT create module shadowing: no package may be created with the same name as a module that remains on the same path. - After the split the API route table (283), tool registry (126) and CLI tree (50) shall be identical to the baseline captured under #854. CURRENT: 1155 lines (2.1x the 550 hard cap). PARENT: #854. METHOD (preferred): keep invitations.py as the public surface and extract cohesive groups into SIBLING modules with DISTINCT names, which invitations.py imports. Do NOT create a directory named after invitations.py without the .py extension. Alternative: convert it into a package + __init__.py and DELETE the original - but NEVER keep both, that is the shadowing trap. VERIFY: re-run the three oracles from #854 and diff against baseline; run the test suite.

Comments

Loading comments...

Context

Loading context...

Audit History

View All
Loading audit history...