@helyx/module-account-gate 1.1.3 → 2.0.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [00d33b3]
8
+ - @helyx/module-manifest@0.10.0
9
+ - @helyx/sdk@0.12.0
10
+
11
+ ## 2.0.1
12
+
13
+ ### Patch Changes
14
+
15
+ - Refresh public package artifacts for the current dependency graph and ship the updated self-host catalogue.
16
+
17
+ ## 2.0.0
18
+
19
+ ### Major Changes
20
+
21
+ - Replace the accumulated development migration chains with independently owned
22
+ day-zero baselines for the Clean Sweep release. Existing installations must use
23
+ the documented backup-and-reset protocol before installing this release.
24
+
3
25
  ## 1.1.3
4
26
 
5
27
  ### Patch Changes
@@ -2,7 +2,7 @@ export declare const ACCOUNT_GATE_IDENTITY: {
2
2
  readonly packageName: "@helyx/module-account-gate";
3
3
  readonly moduleId: "helyx.account-gate";
4
4
  readonly name: "Access Control";
5
- readonly version: "1.1.3";
5
+ readonly version: "2.0.2";
6
6
  readonly releaseStatus: "live";
7
7
  readonly category: "safety";
8
8
  readonly icon: "shield-check";
package/dist/contracts.js CHANGED
@@ -2,7 +2,7 @@ export const ACCOUNT_GATE_IDENTITY = {
2
2
  packageName: "@helyx/module-account-gate",
3
3
  moduleId: "helyx.account-gate",
4
4
  name: "Access Control",
5
- version: "1.1.3",
5
+ version: "2.0.2",
6
6
  releaseStatus: "live",
7
7
  category: "safety",
8
8
  icon: "shield-check",
package/manifest.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "healthExposure": "direct",
11
11
  "id": "helyx.account-gate",
12
12
  "name": "Access Control",
13
- "version": "1.1.3",
13
+ "version": "2.0.2",
14
14
  "description": "Require new members to complete configurable Discord interaction checks before gaining access.",
15
15
  "entry": "./dist/index.js",
16
16
  "framework": "^0.1.0",
@@ -434,3 +434,39 @@ BEGIN
434
434
  RETURN OLD;
435
435
  END;
436
436
  $$;
437
+
438
+ -- Clean Sweep baseline source: 0002_panel_mutation_claims.sql
439
+ ALTER TABLE account_gate_gate_panels
440
+ ADD COLUMN IF NOT EXISTS status TEXT NOT NULL DEFAULT 'posted';
441
+
442
+ DO $$
443
+ BEGIN
444
+ IF NOT EXISTS (
445
+ SELECT 1
446
+ FROM pg_constraint
447
+ WHERE conname = 'account_gate_gate_panels_status'
448
+ AND conrelid = 'account_gate_gate_panels'::regclass
449
+ ) THEN
450
+ ALTER TABLE account_gate_gate_panels
451
+ ADD CONSTRAINT account_gate_gate_panels_status
452
+ CHECK (status IN ('posted', 'missing'));
453
+ END IF;
454
+ END;
455
+ $$;
456
+
457
+ CREATE TABLE IF NOT EXISTS account_gate_panel_message_cleanup (
458
+ cleanup_id TEXT PRIMARY KEY,
459
+ guild_id TEXT NOT NULL,
460
+ panel_id TEXT NOT NULL,
461
+ channel_id TEXT NOT NULL,
462
+ message_id TEXT NOT NULL,
463
+ attempts INTEGER NOT NULL DEFAULT 0 CHECK (attempts >= 0),
464
+ next_attempt_at TIMESTAMPTZ NOT NULL,
465
+ completed_at TIMESTAMPTZ,
466
+ created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
467
+ UNIQUE (guild_id, channel_id, message_id)
468
+ );
469
+
470
+ CREATE INDEX IF NOT EXISTS account_gate_panel_cleanup_pending_idx
471
+ ON account_gate_panel_message_cleanup (next_attempt_at, cleanup_id)
472
+ WHERE completed_at IS NULL;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helyx/module-account-gate",
3
- "version": "1.1.3",
3
+ "version": "2.0.2",
4
4
  "description": "Require configurable Discord interaction checks before new members gain access.",
5
5
  "keywords": [
6
6
  "helyx",
@@ -49,7 +49,7 @@
49
49
  "test": "vitest run --root ../.. modules/account-gate/tests"
50
50
  },
51
51
  "dependencies": {
52
- "@helyx/module-manifest": ">=0.9.0 <0.10.0",
53
- "@helyx/sdk": ">=0.11.0 <0.12.0"
52
+ "@helyx/module-manifest": ">=0.10.0 <0.11.0",
53
+ "@helyx/sdk": ">=0.12.0 <0.13.0"
54
54
  }
55
55
  }
@@ -1,34 +0,0 @@
1
- ALTER TABLE account_gate_gate_panels
2
- ADD COLUMN IF NOT EXISTS status TEXT NOT NULL DEFAULT 'posted';
3
-
4
- DO $$
5
- BEGIN
6
- IF NOT EXISTS (
7
- SELECT 1
8
- FROM pg_constraint
9
- WHERE conname = 'account_gate_gate_panels_status'
10
- AND conrelid = 'account_gate_gate_panels'::regclass
11
- ) THEN
12
- ALTER TABLE account_gate_gate_panels
13
- ADD CONSTRAINT account_gate_gate_panels_status
14
- CHECK (status IN ('posted', 'missing'));
15
- END IF;
16
- END;
17
- $$;
18
-
19
- CREATE TABLE IF NOT EXISTS account_gate_panel_message_cleanup (
20
- cleanup_id TEXT PRIMARY KEY,
21
- guild_id TEXT NOT NULL,
22
- panel_id TEXT NOT NULL,
23
- channel_id TEXT NOT NULL,
24
- message_id TEXT NOT NULL,
25
- attempts INTEGER NOT NULL DEFAULT 0 CHECK (attempts >= 0),
26
- next_attempt_at TIMESTAMPTZ NOT NULL,
27
- completed_at TIMESTAMPTZ,
28
- created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
29
- UNIQUE (guild_id, channel_id, message_id)
30
- );
31
-
32
- CREATE INDEX IF NOT EXISTS account_gate_panel_cleanup_pending_idx
33
- ON account_gate_panel_message_cleanup (next_attempt_at, cleanup_id)
34
- WHERE completed_at IS NULL;