2.2 KiB
2.2 KiB
Stage 04: Governance Registries
Date: 2026-07-29
Result
Four versioned registries now describe the existing product before runtime decomposition:
config/pages.config.jsonregisters all 16 primary workspaces.config/features.config.jsonregisters 20 feature owners and their access/data scope.config/api.config.jsonregisters 74 method/path combinations, including dynamic paths.config/data-fields.config.jsonregisters 18 initial canonical data products and provider eligibility.
The API registry is generated from the current request handler so route drift fails tests. The other registries are curated contracts and may change only through an explicit product or data governance decision.
Access Decisions Preserved
- Health, login, and registration are public.
- Market views require an authenticated account.
- Intelligent screening, Mentor, Wentian, and their history endpoints require membership.
- My Review remains visible to authenticated users; LLM assistant endpoints remain member gated inside that workspace.
- System management and shared knowledge modification remain administrator-only.
- Frontend visibility does not grant API access.
Data Decisions Preserved
- Tushare and licensed iFinD data may be calculation inputs when a dataset contract permits it.
- Eastmoney and Tencent public endpoints are display-only in the initial registry.
- Analyst consensus history and Level-2 microstructure remain blocked rather than silently approximated.
- Chart fallbacks remain separate from calculation datasets.
- The current unadjusted deterministic daily-bar behavior is recorded honestly; adjustment normalization is deferred to the data-quality phase rather than changed here.
Transitional Rule
These files do not yet replace server.py, api_access.py, or the current frontend navigation.
They are checked against those surfaces to prevent untracked drift. Later phases make each
registry authoritative in one atomic migration with compatibility tests.
Verification
tests/test_governance_registries.py verifies uniqueness, page coverage, current API coverage,
explicit public routes, feature ownership, role validity, and provider eligibility.