Skip to content

Commit c3e5f79

Browse files
gmoonclaude
andcommitted
Add post-deploy smoke tests, CI summaries, and positioning Lattice nodes
CI/CD: - Run smoke tests after deploy (site + subscribe API security) - Add test summary markdown to GitHub Step Summary in both workflows Smoke tests: - Subscribe API: Origin check, wrong origin, oversized body, invalid email, honeypot discard, valid subscription, duplicate handling, CORS headers Lattice: - SRC-AGENT-MEMORY-ANALOGY: Agent memory lacks traceability and drift detection - THX-BEYOND-CODE: Lattice applies beyond codebases to any knowledge system Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 86c9d7d commit c3e5f79

11 files changed

Lines changed: 199 additions & 0 deletions

.github/workflows/ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,11 @@ jobs:
4545
- name: Test with coverage
4646
run: npm test
4747

48+
- name: Test summary
49+
if: always()
50+
run: |
51+
node scripts/test-summary.mjs --md >> $GITHUB_STEP_SUMMARY || true
52+
4853
validate-lattice:
4954
name: Validate Lattice Structure
5055
runs-on: ubuntu-latest

.github/workflows/deploy.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,3 +66,14 @@ jobs:
6666
aws cloudfront create-invalidation \
6767
--distribution-id ${{ secrets.CF_DISTRIBUTION_ID }} \
6868
--paths "/*"
69+
70+
- name: Wait for CloudFront propagation
71+
run: sleep 30
72+
73+
- name: Smoke tests
74+
run: npm run test:smoke
75+
76+
- name: Test summary
77+
if: always()
78+
run: |
79+
node scripts/test-summary.mjs --md >> $GITHUB_STEP_SUMMARY || true
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
id: SRC-COPY-REWRITE-001
2+
type: source
3+
title: Copywriting analysis and rewrite for forkzero.ai
4+
body: 'Internal analysis and full rewrite of forkzero.ai homepage copy. Original findings: Hero was generic, value props described features not pain points, no audience targeting. Rewrite (2026-03-21): Pain-first hero headline, Problem section, Before/After comparison table, trimmed value props, rewrote Who Its For, moved email capture up, removed What Makes It Different section, updated all meta tags.'
5+
status: active
6+
version: 1.1.1
7+
created_at: 2026-03-01T23:30:00.000000+00:00
8+
created_by: agent:claude-2026-03-01
9+
meta: {}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
id: SRC-AGENT-MEMORY-ANALOGY
2+
type: source
3+
title: Agent memory systems are flat knowledge stores lacking traceability and drift detection
4+
body: 'Observed while building Claude Code memory for forkzero.ai: AI agent memory systems (Claude memory, Cursor rules, etc.) store preferences and project context as flat files with no relationships. When upstream context changes, downstream memories are not flagged for review. This is the same problem Lattice solves for codebases. Lattice applies to any knowledge system where decisions accumulate over time and need to stay current.'
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-04-02T13:05:45.738941+00:00
8+
created_by: human:george
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
reliability: blog
12+
retrieved_at: 2026-04-02

.lattice/sources/cf-functions.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
id: SRC-CF-FUNCTIONS
2+
type: source
3+
title: AWS CloudFront Functions documentation
4+
body: Reference for CloudFront Functions (viewer-request event type, cloudfront-js-2.0 runtime). Used to implement clean URL rewriting for S3 REST API origin, which does not natively resolve /path to /path/index.html.
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-03-01T19:29:13.112009+00:00
8+
created_by: agent:claude-2026-03-01
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
url: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-functions.html
12+
reliability: industry
13+
retrieved_at: 2026-03-01
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
id: SRC-GOOGLE-SEARCH-STRUCTURED
2+
type: source
3+
title: 'Google Search Central: structured data guidelines'
4+
body: Google's requirements for structured data markup including JSON-LD format preference, required fields for BlogPosting (headline, image, datePublished, author), and rich result eligibility criteria.
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-03-01T19:29:08.143376+00:00
8+
created_by: agent:claude-2026-03-01
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
url: https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data
12+
reliability: industry
13+
retrieved_at: 2026-03-01
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
id: SRC-OWASP-HEADERS
2+
type: source
3+
title: OWASP Secure Headers Project
4+
body: 'Security header recommendations: Strict-Transport-Security with preload, X-Frame-Options DENY, X-Content-Type-Options nosniff, Referrer-Policy strict-origin-when-cross-origin, Permissions-Policy. CSP deferred due to inline styles and third-party dependencies.'
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-03-01T19:29:18.158186+00:00
8+
created_by: agent:claude-2026-03-01
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
url: https://owasp.org/www-project-secure-headers/
12+
reliability: industry
13+
retrieved_at: 2026-03-01

.lattice/sources/schema-org.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
id: SRC-SCHEMA-ORG
2+
type: source
3+
title: Schema.org structured data documentation
4+
body: 'Reference for JSON-LD schema types used in pre-rendering: Organization, WebSite, SoftwareApplication, BlogPosting, WebPage, BreadcrumbList. Defines required and recommended properties for Google rich result eligibility.'
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-03-01T19:29:03.269356+00:00
8+
created_by: agent:claude-2026-03-01
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
url: https://schema.org
12+
reliability: industry
13+
retrieved_at: 2026-03-01
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
id: SRC-SEO-AUDIT-001
2+
type: source
3+
title: SEO audit findings for forkzero.ai (2026-03-21)
4+
body: 'Full SEO audit covering technical, on-page, content quality, and AI search readiness. Critical findings: OG image SVG not rendered by social platforms, pre-rendered meta tags mismatched React components, no privacy policy, soft 404s returning HTTP 200, trailing slash duplicate content. High findings: no About page, no llms.txt, thin content (2 blog posts), no documentation section, missing dateModified in BlogPosting schema.'
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-03-21T18:08:09.832050+00:00
8+
created_by: unknown
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
reliability: unverified
12+
retrieved_at: 2026-03-21

.lattice/theses/beyond-code.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
id: THX-BEYOND-CODE
2+
type: thesis
3+
title: Lattice applies beyond codebases to any knowledge system where decisions trace back to evidence
4+
body: The core value of Lattice — versioned edges between decisions with drift detection — is not specific to software development. Any domain where knowledge accumulates, decisions reference prior evidence, and upstream changes should flag downstream work for review benefits from the same graph model. Agent memory, research workflows, compliance documentation, and product strategy all share this pattern.
5+
status: active
6+
version: 1.0.0
7+
created_at: 2026-04-02T13:05:53.437456+00:00
8+
created_by: human:george
9+
requested_by: George Moon <george.moon@gmail.com>
10+
meta:
11+
category: value_prop
12+
confidence: 0.8
13+
edges:
14+
supported_by:
15+
- target: SRC-AGENT-MEMORY-ANALOGY
16+
version: 1.0.0

0 commit comments

Comments
 (0)