Skip to content
cccskills
FreePublished on GitHub

inf-lens

Activate for any ticket that adds or changes a Supabase migration, environment variable, edge function deployment, or runtime configuration. Ensures infrastructure is live in the target QA environment before state:ready-for-qa.

The English summary is being prepared. Showing the original description.

Works withVercelSupabase
See how to install

Files included (1)

  • SKILL.md4.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

INF — Infrastructure Readiness Lens

Activate this lens when a ticket makes a change that must be applied to the running environment — not just to source files on disk. Infrastructure gaps are the most common reason Tester returns BLOCKED rather than PASS or FAIL. BLOCKED means testing cannot start at all, which wastes the full QA cycle.

When to Activate

Load this lens when the ticket:

  • Adds or modifies a Supabase migration (supabase/migrations/)
  • Adds or changes an environment variable consumed by the app (.env.local, Supabase project secrets, Vercel environment settings)
  • Deploys or updates a Supabase edge function (supabase/functions/)
  • Changes a Supabase storage bucket policy, RLS policy, or auth provider setting
  • Changes runtime configuration that takes effect on deploy (CORS rules, webhook endpoints, redirect URLs)

The Infrastructure Checklist

Verify each applicable surface before claiming state:ready-for-qa. Tick off only what the ticket actually touches.

Migrations

CheckWhat to verify
Applied to QA environmentMigration has been pushed to the target Supabase project, not only run locally via supabase db push --local
Correct project linkedsupabase status or the Supabase dashboard confirms the correct project is the target — not a stale local or dev link
No dependency gapThe migration's dependencies (functions, tables, or types it references) were applied in earlier migrations that are already present
Rollback path documentedIf the migration drops a column, renames a table, or deletes data, a revert migration exists or the impact is explicitly documented on the ticket

Environment variables

CheckWhat to verify
Set in target environmentThe variable is configured in Supabase project secrets (supabase secrets set) or Vercel environment settings for the QA deployment — not only in the local .env.local
Exact name matchVariable name matches exactly what the code reads: process.env.NEXT_PUBLIC_X, process.env.X, or Deno.env.get('X') — no case or prefix mismatch
Not committed to sourceThe secret value is not in any committed file, .env.local included in git, or source comment
App can read itIf the variable is new, the app has been restarted or redeployed so the running process has the value available

Edge functions

CheckWhat to verify
Deployedsupabase functions deploy <name> --project-ref <ref> has been run against the target project after the latest code change
ReachableA smoke request to the function endpoint (/functions/v1/<name>) returns an expected status — not 404 (not deployed) or 500 (deployed but broken)
Secrets availableAny secrets the function reads via Deno.env.get() are set in Supabase secrets for the target project, not just locally

Auth and platform settings

CheckWhat to verify
Redirect URLsAny new OAuth or email redirect URLs are added to the allowed list in Supabase Auth settings for the target project
CORSIf a new edge function or API endpoint is called from the browser, the origin is in the allowed CORS list

Naming the Infrastructure Surface

Before implementation, name each surface this ticket requires:

Infrastructure surfaces:
- Migration:    [filename or 'none']
- Env vars:     [VAR_NAME list or 'none']
- Edge function: [function name or 'none']
- Platform settings: [what or 'none']

Pre-Handoff Gate

Before moving the ticket to state:ready-for-qa, post the following confirmation on the GitHub issue:

INF verified:
- Migration [name]:        applied to [project/environment] ✓
- Env var [NAME]:          set in [target] ✓
- Edge function [name]:    deployed, smoke test ✓
- Platform settings:       [what was changed and confirmed] ✓

Omit lines that do not apply to this ticket, but list at least one line. An empty INF confirmation means the lens was declared active but the gate was never checked — Tester will return BLOCKED.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Universal guardrails loaded by every agent. Defines Verify Before Reporting (VBR), Write-Ahead Log (WAL), and the security baseline. Always-on, role-independent.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

Use when: architecture mode, architect this, ADR, C4, PlantUML, system boundary, design decision, PRD gap, high ambiguity, multiple technical approaches, security architecture, data architecture, integration risk, implementability gap, story ticket, or epic ticket.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

Use when: assumptions audit, audit assumptions, check for hidden assumptions, plan/ticket has ambiguous scope edges, pre-flight before finalizing a ticket, unstated assumptions, or 'what am I assuming'. Surfaces unstated assumptions, ambiguous scope edges, and untested preconditions in a finished plan/ticket/ADR before it is handed to Builder. Optional pass — Architect judges when to apply it; not a mandatory gate on every ticket.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

Use when: Tester needs UI state evidence for VBR, or Builder needs to verify an integration wire is observable end-to-end. Powered by agent-browser MCP — token-efficient browser automation (200–400 tokens/page).

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

Use when drafting a bug or defect ticket, reviewing one someone else wrote, or deciding whether a reported problem is ready to file. Keeps what the reporter actually saw separate from what the agent later found out, so a reader can tell which lines are testimony and which are collected proof. Trigger phrases: 'file a bug', 'write up this defect', 'triage this report', 'is this ticket ready to file', 'what did the reporter actually see'.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch.

The English summary is being prepared. Showing the original description.

Agistra/agistra.dev5Updated Oct 21, 2026

See all skills by Agistra

Report a problem with this skill