[docs] Add .env.example files to extensions and dashboard#81
[docs] Add .env.example files to extensions and dashboard#81matthallett1 merged 3 commits intomainfrom
Conversation
Closes #17. Each extension gets an .env.example documenting the 3 required env vars (SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, MCP_ACCESS_KEY). Dashboard gets its own with the 4 vars needed for local dev. Also hardens .gitignore: adds .env.local, .env.*.local, and deno.lock. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
OB1 Automated ReviewThis PR modifies docs or repo governance files. Contribution checks skipped. ✅ No issues found. |
justfinethanku
left a comment
There was a problem hiding this comment.
Code Review: PR #81
Summary: This PR makes significant changes beyond what the title and description indicate. While the stated goal (adding .env.example files) is valuable, the PR also includes:
- ✅ Added .env.example files to all extensions and dashboard (as stated)
- ✅ Hardened .gitignore with .env.local and .env.*.local patterns (as stated)
⚠️ Removed DEFAULT_USER_ID requirement from all extensions - making user_id an explicit tool parameter instead (NOT mentioned in description)⚠️ Removed visual formatting requirements from CONTRIBUTING.md - deleted the entire "Visual Formatting Requirements" section including step badges, verification checkpoints, collapsible SQL blocks, numbered commands, and GRANT step requirements (NOT mentioned in description)⚠️ Large changes to life-engine and life-engine-video recipes - appears to be a complete rewrite/restructuring (NOT mentioned in description)⚠️ Changes to multiple other files - README.md, docs/01-getting-started.md, extensions/_template/README.md, and all extension code/schemas (NOT mentioned in description)
What's Good
- The .env.example files are well-structured with clear placeholder values
- No credentials or secrets detected - all values are properly placeholder text
- The .gitignore changes are sensible and safe
- PR title format follows the [category] pattern correctly
Issues
1. Scope Mismatch (Critical)
The PR title says "Add .env.example files to extensions and dashboard" but the diff shows 36 changed files including major architectural changes to extensions (removing DEFAULT_USER_ID), documentation standards (removing formatting requirements), and recipe content (life-engine rewrite). This violates the principle of focused, reviewable PRs.
2. Missing Context in Description
The PR description makes no mention of:
- Why DEFAULT_USER_ID is being removed from extensions
- Why visual formatting requirements are being removed from CONTRIBUTING.md
- What changed in the life-engine recipes and why
- The impact on existing extension users who may have DEFAULT_USER_ID configured
3. Potential Breaking Changes
Removing DEFAULT_USER_ID from extensions appears to be a breaking change. Users with existing setups may have this configured via supabase secrets set. The new approach requires user_id to be passed as a tool parameter, which changes the user interface of all extension tools.
4. Documentation Standards Removal
The deleted "Visual Formatting Requirements" section from CONTRIBUTING.md was substantial (60+ lines) and included important patterns like:
- GRANT step requirements (critical for Supabase permissions)
- Step badges and verification checkpoints (user experience)
- Numbered commands and collapsible SQL blocks (readability)
If these are intentionally being removed, the PR should explain why and ensure existing extensions that follow these patterns are still acceptable.
Recommendations
Option 1: Split into focused PRs
- PR #81a: Add .env.example files and .gitignore hardening (ready to merge as-is)
- PR #81b: Remove DEFAULT_USER_ID from extensions (needs discussion about breaking changes and migration path)
- PR #81c: Update CONTRIBUTING.md formatting requirements (needs explanation for why these are being removed)
- PR #81d: Life Engine recipe updates (separate from infrastructure changes)
Option 2: Update this PR with full context
Expand the PR description to explain:
- The rationale for removing DEFAULT_USER_ID
- Migration path for existing users
- Why formatting requirements are being relaxed
- What changed in life-engine and why it's bundled here
- Add a breaking changes section
Notes
- This is Matt Hallett's PR (#81) - he's a trusted collaborator, so the code quality is not in question
- The .env.example files themselves are excellent and solve issue #17 cleanly
- The .gitignore changes are sensible
- No SQL safety issues (no DROP/TRUNCATE/unqualified DELETE)
- No binary blobs or large files
Verdict: Significant changes needed
The .env.example additions are ready to merge, but the PR needs to either be split into focused changes or have its description substantially expanded to explain the scope and rationale for all changes. The DEFAULT_USER_ID removal in particular needs migration guidance.
Made-with: Cursor
|
@claude review this PR |
|
Claude finished @matthallett1's task in 2m 30s —— View job PR Review: [docs] Add .env.example files to extensions and dashboard
SummaryThis PR is exactly what it says: 8 files, 49 additions, 0 deletions —
What's GoodExtension The comment is excellent — it accurately reflects Supabase Edge Function behavior and prevents the common mistake of manually setting all three vars. The env var names match what the extension code actually reads ( Dashboard The
No secrets. No destructive SQL. No binary blobs. No core schema modifications. No local MCP server patterns. Minor Notes
VerdictThis PR is ready to merge. It's a clean, focused, well-executed documentation improvement that closes #17. The |
Merged main into env-examples branch. Combined both sides: - .gitignore: kept "Build artifacts" heading from main - .env.example: merged detailed comments from main with symlink tip from this branch Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Claude finished @matthallett1's task in 2m 14s —— View job PR Review: [docs] Add .env.example files to extensions and dashboard
SummaryThis PR has two distinct changes bundled together: a clean, ready-to-merge docs improvement and an unmentioned functional change to The .env.example Files — Ready to Merge ✅All 6 extension files and the dashboard update are correct and well-executed: Extension files (e.g. The comment is the best part — it prevents the common mistake of manually setting all three vars when Supabase injects two of them automatically. The var names match what the extension code actually reads. Dashboard addition — the symlink tip at
No credentials. No destructive SQL. No core schema modifications. No local MCP server patterns. server/index.ts — Needs Discussion
|
Summary
Closes #17.
.env.exampleto all 6 extensions documenting the 3 required env vars.env.exampleto the dashboard with its 4 vars + symlink tip.gitignore: added.env.local,.env.*.local, anddeno.lockWhat's in each .env.example
Extensions (all identical):
Dashboard:
Test plan
.env.examplefiles are tracked (not gitignored).env.localanddeno.lockare gitignored🤖 Generated with Claude Code