new-site/api/migrations/045_facs_fields.sql
justin f8cd37ac8c Initial commit — Performance West telecom compliance platform
Includes: API (Express/TypeScript), Astro site, Python workers,
document generators, FCC compliance tools, Canada CRTC formation,
Ansible infrastructure, and deployment scripts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-27 06:54:22 -05:00

56 lines
2.3 KiB
SQL

-- 045: FACS (Foreign Adversary Control System) intake fields
--
-- Captures data needed for Schedule A/B/C determination and
-- foreign adversary ownership disclosure under 47 CFR 1.80003.
-- Effective June 9, 2026 (FCC 26-2, GN Docket No. 25-166).
-- Foreign adversary control attestation
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS facs_schedule TEXT
CHECK (facs_schedule IN ('A', 'B', 'C'));
-- Does this entity have any foreign adversary ownership or control?
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS facs_has_foreign_adversary BOOLEAN;
-- FACS attestation filing status
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS facs_filing_status TEXT
CHECK (facs_filing_status IN (
'not_required', -- Schedule C / exempt
'pending', -- needs to file
'filed_no', -- filed attestation: no foreign adversary control
'filed_yes', -- filed attestation: yes (Schedule B disclosure required)
'disclosure_filed' -- Schedule B detailed disclosure submitted
));
-- Foreign ownership details (JSONB for flexibility)
-- Structure:
-- {
-- "has_foreign_owners": true/false,
-- "foreign_adversary_nexus": true/false,
-- "ownership_interests": [
-- {
-- "holder_name": "Entity Name",
-- "holder_country": "CN",
-- "interest_type": "equity|voting|board|contractual",
-- "interest_pct": 15.0,
-- "is_direct": true/false,
-- "is_foreign_adversary": true/false,
-- "description": "15% equity via holding company XYZ Ltd"
-- }
-- ],
-- "control_mechanisms": ["board_seats", "veto_rights", "management_agreement"],
-- "section_214_auth": true/false,
-- "covered_authorizations": ["section_214_domestic", "section_214_international"],
-- "facs_notes": "Additional context..."
-- }
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS facs_ownership_data JSONB DEFAULT '{}';
-- Covered authorization types held by this entity
-- Used for Schedule A/B/C determination
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS covered_authorizations TEXT[]
DEFAULT '{}';
-- Section 214 authorization (key determinant for Schedule A)
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS has_section_214 BOOLEAN DEFAULT FALSE;
-- Filing timestamp
ALTER TABLE telecom_entities ADD COLUMN IF NOT EXISTS facs_filed_at TIMESTAMPTZ;