@viberaven/cli 1.6.3 → 1.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/cli.js +6 -5
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -8484,8 +8484,9 @@ function readFunctionAttributes(tokens) {
8484
8484
  if (t.value === "security" && next?.kind === "word" && (next.value === "definer" || next.value === "invoker")) {
8485
8485
  out.definer = next.value === "definer";
8486
8486
  }
8487
- if (t.value === "returns" && next?.kind === "word") {
8488
- out.returnsTrigger = next.value === "trigger" || next.value === "event_trigger";
8487
+ if (t.value === "returns" && (next?.kind === "word" || next?.kind === "ident")) {
8488
+ const type = next.value;
8489
+ out.returnsTrigger = type === "trigger" || type === "event_trigger";
8489
8490
  }
8490
8491
  }
8491
8492
  return out;
@@ -8613,7 +8614,7 @@ function analyzeRls(replay) {
8613
8614
  }
8614
8615
  if (!table2.rls && (table2.created || table2.disabledLoc)) {
8615
8616
  const where = table2.disabledLoc ?? table2.arrivedLoc ?? table2.created;
8616
- const risk = "Anyone holding the anon key your frontend ships can read and change every row through the Data API (unless the table's grants were revoked).";
8617
+ const risk = "Without RLS, the Data API does not enforce row restrictions for roles and operations allowed by the table's grants. Verify those grants to determine who can read or change rows.";
8617
8618
  const message = table2.disabledLoc ? `${table2.display} has row level security turned off at ${at(table2.disabledLoc)}. ${risk}` : table2.arrivedLoc ? `${table2.display} is moved into public at ${at(table2.arrivedLoc)} without row level security, and no later migration enables it. ${risk}` : `${table2.display} is created at ${at(table2.created)} and no migration enables row level security on it. ${risk}`;
8618
8619
  missingRls.push({
8619
8620
  id: "rls_disabled",
@@ -9439,7 +9440,7 @@ function buildRlsCheck(replay) {
9439
9440
  id: "supabase-rls-policy-proof",
9440
9441
  title: "Supabase RLS policy proof",
9441
9442
  status: "needs_work",
9442
- summary: `${plural(analysis.missingRls.length, "public table")} without row level security: ${names}. Anyone holding the anon key your frontend ships can read and change those rows through the Data API.`,
9443
+ summary: `${plural(analysis.missingRls.length, "public table")} without row level security: ${names}. The Data API does not enforce row restrictions for roles and operations allowed by the table's grants. Verify those grants to determine who can read or change rows.`,
9443
9444
  evidence: findingEvidence(analysis.missingRls),
9444
9445
  findings
9445
9446
  };
@@ -15022,7 +15023,7 @@ var VERSION;
15022
15023
  var init_version = __esm({
15023
15024
  "src/version.ts"() {
15024
15025
  "use strict";
15025
- VERSION = "1.6.3";
15026
+ VERSION = "1.6.4";
15026
15027
  }
15027
15028
  });
15028
15029
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viberaven/cli",
3
- "version": "1.6.3",
3
+ "version": "1.6.4",
4
4
  "description": "VibeRaven CLI and local Studio: Supabase RLS and security check for AI-built Vercel + Supabase apps, with an agent task list and fix prompts.",
5
5
  "license": "MIT",
6
6
  "author": "VibeRaven",