nx_supp_channel.nx source
↩ module page · 185 lines · 7540 B
1// nx_supp_channel.nx -- SUPPLEMENT GTM SUITE / COMMERCIAL CHANNEL rung.
2// "Which regulator is most permissive" is the wrong question, and this file
3// exists to replace it with the right one: WHICH CHANNEL is this substance
4// lawful in, and what does that channel demand.
5//
6// A substance is not simply legal or illegal. It is legal THROUGH a route:
7// retail supplement -- DSHEA, no prescriber, no premarket approval (ODI)
8// OTC drug -- an existing monograph, no prescriber
9// compounded Rx -- 503A pharmacy, patient-specific prescription
10// outsourcing facility-- 503B, office stock, cGMP, FDA-registered
11// approved drug -- NDA / ANDA / BLA
12// Ask "where is it permitted" and the answer is a country. Ask "through what
13// route" and the answer is a business model.
14//
15// THE ANSWER THAT SURPRISES PEOPLE. For the peptide category the United
16// States is among the MOST permissive jurisdictions on earth -- not through
17// the supplement shelf, which is firmly closed to peptides, but through
18// SECTION 503A COMPOUNDING. A licensed prescriber plus a compounding
19// pharmacy is a real, legal, and large channel, and it is exactly how
20// compounded oxytocin troches and the whole "peptide clinic" model operate.
21// Most countries have nothing comparable. So the instinct to look abroad for
22// permissiveness usually ends up pointing back home, at a channel that was
23// available the whole time and simply requires a prescriber.
24//
25// BUT 503A IS NOT A LOOPHOLE, AND THIS FILE ENCODES WHY. A bulk drug
26// substance may only be compounded under 503A if it satisfies at least ONE
27// of three prongs (FD&C Act 503A(b)(1)(A)(i)):
28// 1. it is the subject of an approved application, OR
29// 2. it appears in a USP or NF monograph, OR
30// 3. it appears on FDA's 503A bulk drug substances list.
31// Oxytocin passes prong 1 -- it is an approved drug substance -- so a
32// patient-specific compounded preparation is lawful. Kisspeptin-10 passes
33// NONE of the three. BPC-157 was placed in 503A CATEGORY 2 in 2023,
34// explicitly not eligible. So the same channel that legitimises one peptide
35// forecloses another, by a rule, on the record -- which is the difference
36// between a regulated channel and an unpoliced one.
37//
38// WHAT NO CHANNEL AND NO COUNTRY WILL DO. Manufacturing offshore does not
39// create a route to a US consumer: FDA jurisdiction attaches at import and to
40// marketing directed at US buyers, so "make it in X, ship to US customers" is
41// an unapproved new drug plus misbranding regardless of how permissive X is.
42// That is the actual fact pattern in peptide enforcement actions, and it is
43// why ch_offshore_manufacture_opens_us_retail() returns 0.
44//
45// Grounding (cited; researcher-groundable):
46// fdc_act_503a_bulk_drug_substance_three_prong_test
47// fda_503a_category_2_bpc157_2023_not_eligible
48// fdc_act_503b_outsourcing_facility_cgmp
49// fda_import_jurisdiction_unapproved_new_drug_misbranding
50//
51// genealogy_id: supplement_gtm + nishi_food_science_suite
52
53import "nx_syscalls.nx"
54import "nx_supp_ingredient.nx"
55
56// ===== Channels (sealed) ==============================================
57
58const CH_NONE: i64 = 0
59const CH_SUPPLEMENT: i64 = 1 // DSHEA retail
60const CH_OTC_MONOGRAPH: i64 = 2 // OTC drug, no prescriber
61const CH_RX_COMPOUNDED: i64 = 3 // 503A, patient-specific prescription
62const CH_RX_OUTSOURCING: i64 = 4 // 503B, office stock, cGMP
63const CH_APPROVED_DRUG: i64 = 5 // NDA / ANDA / BLA
64
65func ch_name(c: i64) -> *u8 {
66 if c == CH_SUPPLEMENT { return "retail dietary supplement (DSHEA)" as *u8 }
67 if c == CH_OTC_MONOGRAPH { return "OTC drug monograph" as *u8 }
68 if c == CH_RX_COMPOUNDED { return "503A compounded prescription" as *u8 }
69 if c == CH_RX_OUTSOURCING { return "503B outsourcing facility" as *u8 }
70 if c == CH_APPROVED_DRUG { return "approved drug (NDA/ANDA/BLA)" as *u8 }
71 return "no lawful channel" as *u8
72}
73
74func ch_requires_prescriber(c: i64) -> i64 {
75 if c == CH_RX_COMPOUNDED { return 1 }
76 if c == CH_RX_OUTSOURCING { return 1 }
77 if c == CH_APPROVED_DRUG { return 1 }
78 return 0
79}
80
81// ===== The 503A three-prong test ======================================
82//
83// Encoded as three separate predicates because that is how the statute reads,
84// and because which prong a substance passes determines what evidence a
85// pharmacy has to hold.
86
87// Prong 1: subject of an approved application.
88func ch_is_approved_drug_substance(id: i64) -> i64 {
89 if id == SI_OXYTOCIN { return 1 }
90 if id == SI_BREMELANOTIDE { return 1 }
91 return 0
92}
93
94// Prong 2: appears in a USP or NF monograph.
95func ch_has_usp_monograph(id: i64) -> i64 {
96 if id == SI_OXYTOCIN { return 1 }
97 return 0
98}
99
100// Prong 3: on FDA's 503A bulk drug substances list.
101// BPC-157 was placed in CATEGORY 2 in 2023 -- reviewed and NOT eligible.
102// Being considered and rejected is a stronger no than never being examined.
103func ch_on_503a_bulks_list(id: i64) -> i64 {
104 return 0
105}
106
107func ch_is_503a_category2(id: i64) -> i64 {
108 if id == SI_BPC157 { return 1 }
109 return 0
110}
111
112// Compoundable iff at least one prong is satisfied AND it has not been
113// affirmatively excluded.
114func ch_compoundable(id: i64) -> i64 {
115 if si_valid_id(id) != 1 { return 0 }
116 if ch_is_503a_category2(id) == 1 { return 0 }
117 if ch_is_approved_drug_substance(id) == 1 { return 1 }
118 if ch_has_usp_monograph(id) == 1 { return 1 }
119 if ch_on_503a_bulks_list(id) == 1 { return 1 }
120 return 0
121}
122
123// How many prongs a substance passes -- what a pharmacy must document.
124func ch_prongs_passed(id: i64) -> i64 {
125 let a: i64 = ch_is_approved_drug_substance(id)
126 let b: i64 = ch_has_usp_monograph(id)
127 let c: i64 = ch_on_503a_bulks_list(id)
128 return a + b + c
129}
130
131// ===== Channel availability ===========================================
132
133func ch_open(id: i64, channel: i64) -> i64 {
134 if si_valid_id(id) != 1 { return 0 }
135 if channel == CH_SUPPLEMENT { return si_is_lawful_dietary(id) }
136 if channel == CH_APPROVED_DRUG { return ch_is_approved_drug_substance(id) }
137 if channel == CH_RX_COMPOUNDED { return ch_compoundable(id) }
138 if channel == CH_RX_OUTSOURCING { return ch_compoundable(id) }
139 return 0
140}
141
142func ch_count_open(id: i64) -> i64 {
143 var c: i64 = 1
144 var n: i64 = 0
145 while c <= CH_APPROVED_DRUG {
146 let o: i64 = ch_open(id, c)
147 n = n + o
148 c = c + 1
149 }
150 return n
151}
152
153// The lowest-friction lawful channel: retail beats OTC beats compounded
154// beats outsourcing beats a full approval. CH_NONE when there is no route.
155func ch_best(id: i64) -> i64 {
156 var c: i64 = 1
157 var best: i64 = CH_NONE
158 while c <= CH_APPROVED_DRUG {
159 let o: i64 = ch_open(id, c)
160 if o == 1 { if best == CH_NONE { best = c } }
161 c = c + 1
162 }
163 return best
164}
165
166func ch_has_any_route(id: i64) -> i64 {
167 let b: i64 = ch_best(id)
168 if b == CH_NONE { return 0 }
169 return 1
170}
171
172// ===== The offshore question ==========================================
173//
174// Always 0. FDA jurisdiction attaches at import and to marketing aimed at US
175// buyers, so no foreign manufacturing arrangement converts an unapproved drug
176// into something lawfully sellable to a US consumer. Encoded as a function
177// rather than a comment so a downstream planner cannot route around it.
178func ch_offshore_manufacture_opens_us_retail() -> i64 {
179 return 0
180}
181
182// A permissive foreign regime governs its OWN market only.
183func ch_foreign_approval_covers_us_sale() -> i64 {
184 return 0
185}