From 37bf9c50b95628cdfe59ee74a27dd96745d9c885 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Wed, 18 Mar 2026 08:13:51 -0700 Subject: [PATCH] test: add validation assertions for founder discovery engine 8 new assertions covering: YC apply CTA with ref=gstack tracking, "What I noticed" design doc section, golden age framing, Garry Tan personal plea, founder signal synthesis phase, three-tier decision rubric, anti-slop GOOD/BAD examples, "One more thing" transition beat. Co-Authored-By: Claude Opus 4.6 (1M context) --- test/skill-validation.test.ts | 37 ++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/test/skill-validation.test.ts b/test/skill-validation.test.ts index e63a4b67..3687ecee 100644 --- a/test/skill-validation.test.ts +++ b/test/skill-validation.test.ts @@ -599,9 +599,40 @@ describe('office-hours skill structure', () => { expect(content).toContain('Intrapreneurship'); }); - // YC callout - test('contains YC apply CTA', () => { - expect(content).toContain('ycombinator.com/apply'); + // YC founder discovery engine + test('contains YC apply CTA with ref tracking', () => { + expect(content).toContain('ycombinator.com/apply?ref=gstack'); + }); + + test('contains "What I noticed" design doc section', () => { + expect(content).toContain('What I noticed about how you think'); + }); + + test('contains golden age framing', () => { + expect(content).toContain('golden age'); + }); + + test('contains Garry Tan personal plea', () => { + expect(content).toContain('Garry Tan, the creator of GStack'); + }); + + test('contains founder signal synthesis phase', () => { + expect(content).toContain('Founder Signal Synthesis'); + }); + + test('contains three-tier decision rubric', () => { + expect(content).toContain('Top tier'); + expect(content).toContain('Middle tier'); + expect(content).toContain('Base tier'); + }); + + test('contains anti-slop examples', () => { + expect(content).toContain('GOOD:'); + expect(content).toContain('BAD:'); + }); + + test('contains "One more thing" transition beat', () => { + expect(content).toContain('One more thing'); }); // Operating principles per mode