Mission: Give humanity and its AIs a memory of medicine that can't be quietly rewritten.
Who builds ORION, why, and how fast.
I'm Jiwoo Seong (Woo). I am a student at Dong-A University in Korea, and I trade biotech stocks with my own money. I build ORION, the Biotech Catalyst Calendar, alone, directing several AI assistants, and I compare every published row with the original filing myself.
Formerly ORION Biotech Observatory.
Last updated
You asked, we changed
“The site is hard to read”
Anonymous · friend
Updated colour, typography and contrast; added light and dark themes.
I'm Jiwoo Seong (Woo), a student at Dong-A University in Korea. I trade biotech stocks with my own money, and since 2026-09-22 I have sealed a daily ledger for a quant paper-trading account whose rules were fixed before its first order (founder log; the ledger itself is private).
Why I am building this
On August 19, 2026, Moderna more than doubled in a day on one clinical readout (Forbes). I wanted to find the next Moderna, and that day I decided to go all in on this.
I built detectors first. They flagged 2 of 16 companies. Taking the failure apart, I found something else. When companies move a readout, they don't issue a press release. One line in a quarterly filing quietly changes from "third quarter" to "fourth quarter." And I couldn't find one public place that kept those changes together.
So I built ORION. It records the earliest statement we found from a company, every change since, and what was actually disclosed, with the original filings and dates. No scores, no forecasts. Readers judge for themselves.
My claim is simple: a company's past promises are the best evidence for how much to trust its next one. Catalyst calendars tell you the next date. ORION keeps the verified history of every promise.
As the record grows, it shows how often each company kept its word and which programs were quietly abandoned. That list is where a researcher looking to revive a drug could start. Further out, I want this verified record to be what AIs learn medicine from, a memory that people and machines can both trust.
How I build it
Alone. Several AI assistants write code and prepare sources under my direction: collecting filings, extracting candidate sentences and drafting pages. I decide what gets published, and I compare each published row with the original filing myself. The date of that comparison is shown on the record.
Unfinished review stays unfinished on the page. A candidate without my comparison is not published. When a reader reports an error, the correction is added with its date and reason; the earlier version is not deleted.
Build timeline
Date
What happened
Evidence
Website code started.
Private repository, commit e1a788f (shown on request)
Moderna more than doubled in a day on one clinical readout; that day I decided to go all in on this.
13 rows in date order, as of . Rows for records, corrections and daily hashes are generated from the site's data files.
What went wrong, in public
What
The retained ICCC source has a separate Re-Tain study and data-analysis completion objective for Q1 2026.
Why
The earlier ICCC rows retained financial reporting, general studies and field feedback, but omitted this literal quarter-bound analysis objective.
Fix
Append the source-bound Study and data analysis completion row. Keep its elapsed quarter under Window ended with no completion/results judgment; preserve all existing rows, quotations, sources and human-review labels.
The SEC acceptance time shown for avexitide (AMLX) on its program page was 2026-08-06T15:04:23Z, four hours later than the time in SEC's own header for the filing (10-Q, accession 0001193125-26-336682, filed 2026-08-06). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260806070423, which is 2026-08-06 07:04:23 New York time, 2026-08-06T11:04:23Z UTC.
Fix
Replaced with the header time, 2026-08-06T11:04:23Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
The SEC acceptance time shown for Intismeran autogene (MRNA) on its program page was 2026-08-01T00:17:41Z, four hours later than the time in SEC's own header for the filing (10-Q, accession 0001682852-26-000150, filed 2026-07-31). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260731161741, which is 2026-07-31 16:17:41 New York time, 2026-07-31T20:17:41Z UTC.
Fix
Replaced with the header time, 2026-07-31T20:17:41Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
The SEC acceptance time shown for mRNA-3927 (MRNA) on its program page was 2026-08-01T00:17:41Z, four hours later than the time in SEC's own header for the filing (10-Q, accession 0001682852-26-000150, filed 2026-07-31). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260731161741, which is 2026-07-31 16:17:41 New York time, 2026-07-31T20:17:41Z UTC.
Fix
Replaced with the header time, 2026-07-31T20:17:41Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
The SEC acceptance time shown for ALN-6400 (ALNY) on its program page was 2026-07-30T16:11:02Z, four hours later than the time in SEC's own header for the filing (10-Q, accession 0001178670-26-000062, filed 2026-07-30). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260730081102, which is 2026-07-30 08:11:02 New York time, 2026-07-30T12:11:02Z UTC.
Fix
Replaced with the header time, 2026-07-30T12:11:02Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
The SEC acceptance time shown for selinexor (KPTI) on its program page was 2026-08-13T15:40:35Z, four hours later than the time in SEC's own header for the filing (10-Q, accession 0001193125-26-347906, filed 2026-08-13). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260813074035, which is 2026-08-13 07:40:35 New York time, 2026-08-13T11:40:35Z UTC.
Fix
Replaced with the header time, 2026-08-13T11:40:35Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
The SEC acceptance time shown for Cobenfy (BMY) on its program page was 2026-07-30T15:05:39Z, four hours later than the time in SEC's own header for the filing (8-K, accession 0000014272-26-000018, filed 2026-07-30). It was shown from 2026-10-12, when the program file was published.
Why
The time had been copied from SEC's submissions API (acceptanceDateTime). For this filing that value adds the New York offset (4 hours, EDT) a second time. The filing's SEC header reads <ACCEPTANCE-DATETIME>20260730070539, which is 2026-07-30 07:05:39 New York time, 2026-07-30T11:05:39Z UTC.
Fix
Replaced with the header time, 2026-07-30T11:05:39Z. Checked on 2026-10-12 by reading the filing's SEC header; the other 14 program files matched. The review label is unchanged: the acceptance time is metadata, and the quoted wording and its source are unchanged. Earlier daily hashes and records are not changed; this correction is a new record.
ORION-01 (Daily record · Start publishing a daily hash of the full watch list): Wording clarified; the commitment and its date are unchanged. Earlier wording: “From 2026-10-11, ORION publishes a hash of its full watch list every day so that no record can be quietly rewritten later.”
Why
The earlier sentence claimed more than a daily hash of the watch list can show. A hash shows that the list changed; it does not by itself stop a change.
Fix
The promise now says any later change to the watch list can be detected. The commitment and its date are unchanged, and the earlier wording stays visible on the promise.
Display rule corrected — equivalent timing phrases (e.g., 'H2 2026' / 'second half of 2026') are now shown as Statement retained. Source quotes and status unchanged.
Why
Equivalent timing notation is compared after normalization.
Fix
Shown in the record's Corrections section with its date; the earlier version is kept.
Corrections on records and on ORION's own promises are read from the record and promise data; mistakes the founder stated are read from the founder log. Earlier versions are kept.
What exists today (updated )
Stale Clock report (observation of ): 377 of 3,762 active Phase 3 trials still listed a passed estimated completion date. Our Stale Clock report measures registry dates; ORION's records track what companies said.
Counts use the dates beside their retained data scopes. Page-edit dates are separate. A zero is shown as zero.
What ORION does
Keeps, for one program and one action, the earliest statement we found about timing, every later restatement, and what was actually disclosed, each with the SEC filing it came from and its filing date.
Shows the exact company wording and the time window as written. Changes are shown beside the earlier wording; earlier records are kept when a correction is made.
States for each record which filings and company releases were read and on what date, and labels the status with one of seven defined words. Read the status definitions.
Publishes a record only after I have compared every displayed row with the original filing. Each page states how many rows are shown out of how many rows exist.
What ORION does not do
No scores, rankings, forecasts, recommendations, price targets or expected returns.
No judgement words. A changed window is recorded as a changed window; a missing later statement is recorded as not found in the filings read, not as a stopped program.
No inferred dates. A registry completion estimate is not a promised announcement date, and a filing date is not an event date. Missing values are shown as unavailable.
No AI comparison counted as a human check. An assistant may prepare a candidate; a row is published only after my own comparison with the original.
Contact
It's small today. If something is wrong, write to hello@orionbiotechai.com and I'll correct it in public. Questions about a company and a trial go to the same address.
Each published row carries one of two labels: Checked by founder — compared by hand with the SEC original by ORION's founder, Jiwoo Seong (Woo); or Quote matched to filing (not yet reviewed by founder) — the quote matches the original filing character for character, and the founder has not reviewed the row. The two are shown separately. How rows are checked.
Earlier materials — the Alnylam (ALNY) past case, the company finder and worked notes — are kept on the Archive page.
Public float (as of ): $22M (SEC filing) · Under $500M
Company-stated periodOctober 17-20, 2026
Original SEC wording +
Preclinical data for SL-846, including safety, pharmacokinetics, and receptor occupancy from the ongoing GLP toxicology study are expected to be presented in a poster at UEG Week, to be held October 17-20, 2026.