Section 1
What Is PAMELAi™?
PAMELAi™ is an enterprise SaaS platform purpose-built for the US and Canadian investor-owned utility (IOU) sector. It combines regulatory docket intelligence, rate case precedent analysis, return-on-equity (ROE) benchmarking, and AI-powered regulatory data collection into a single, unified interface designed for utility executives, rate case teams, and regulatory law firms.
The platform targets the approximately 197 investor-owned utilities across the US and Canada — the electric, natural gas, and water utilities that operate under state and provincial regulatory oversight and must file for rate increases, capital recovery, and earnings authorizations through formal regulatory proceedings (rate cases) before public utility commissions.
💡
Who uses PAMELAi™?
Regulatory affairs managers, rate case attorneys, CFOs, financial analysts at electric and gas utilities, and the law firms that represent them before state and federal utility commissions. Also useful for intervenors, consumer advocates, and energy consultants.
197
Investor-Owned Utilities Served
Electric, gas, and water IOUs across all 50 states + Canadian provinces
58
Regulatory Commissions Indexed
All 50 state PUCs + FERC + 7 Canadian provincial commissions
6
Live Scraper Sources
FERC, CPUC (CA), FPSC (FL), ICC (IL), NYPSC (NY), PUCT (TX)
3
Core Intelligence Modules
Docket Tracker · Precedent DB · ROE Workbench
The Three Pillars
⚖️
Law Firm Regulatory Intelligence Suite
Tools built specifically for utility law firms and in-house regulatory counsel: docket tracking, precedent research, and ROE benchmarking in one place.
- Docket Tracker — monitor active rate cases
- Precedent Database — research prior commission decisions
- ROE Workbench — analyze authorized returns
- PDF benchmark reports for filings
Live
🤖
AI Self-Configuring Scraper Engine
Uses GPT-4o to auto-discover commission URLs and build scrapers for any of the 58 registered commissions — automatically, without writing code.
- 58-commission registry (all US states + Canada)
- 6 built-in production scrapers
- AI auto-builds scrapers for the remaining 52
- Daily refresh at 07:00 UTC (2am ET)
AI-Powered
🛡️
Admin Intelligence & Data Quality
Full admin panel with RBAC, data integrity scanning, automated test orchestration, and data quality enforcement across all platform data.
- 10-check automated data integrity scanner
- 29-test automated test suite (6 suites)
- Weekly scheduled test runs
- Scraper health monitoring
New
Section 2
The Problem PAMELAi™ Solves
Regulatory proceedings for US investor-owned utilities involve thousands of dockets across 50+ commissions, spanning decades of rate case decisions. Lawyers, analysts, and utility executives face a fragmented, time-consuming research landscape:
Before PAMELAi™
- Manually searching each commission's website for docket filings
- No centralized ROE precedent database — attorneys build custom Excel files
- Rate case research takes days; competitive ROE benchmarks require expensive consultants
- No automated alerts when a rate case is filed or decided in a target jurisdiction (now solved — see Alerts & Watchlists below)
- Law firms maintain bespoke databases that become siloed and stale
- No single source of truth for authorized ROE by state, year, utility type, or capital structure
- PDF-based regulatory orders require manual extraction of financial data
- Data quality across internal tools is unchecked and drift-prone
After PAMELAi™
- All 58 commissions tracked in one portal — active dockets surface automatically
- Centralized precedent database with searchable ROE history across all jurisdictions
- ROE Workbench surfaces benchmark data in seconds, not days
- AI scraper engine auto-discovers new commission URLs — no manual configuration needed
- One platform for the entire law firm rate case team — dockets, research, and analysis
- Exportable PDF benchmark reports ready for regulatory filings
- Automated data integrity scanner catches bad state codes, nulls, and duplicates daily
- 29-test automated suite validates platform integrity on every change
📊
Market Context
The US utility regulatory proceedings market involves over $1.2 trillion in rate base across 197 investor-owned utilities. Each major rate case involves hundreds of thousands of dollars in legal and consulting fees — much of it spent on manual research that PAMELAi™ can automate.
Section 3
Platform Architecture
PAMELAi™ is a modern full-stack TypeScript application with a React frontend, Express backend, and PostgreSQL database. The entire platform runs as a single deployable unit on Replit cloud infrastructure.
Frontend
React + TypeScript
Vite · TanStack Query · Shadcn/ui · Tailwind CSS · Wouter routing
→
Backend
Node.js + Express
TypeScript · Drizzle ORM · Zod validation · Cron schedulers · PDF generation
→
Database
PostgreSQL
Replit-managed · Drizzle schema · Auto-migrate · Row-level type safety
→
AI Layer
GPT-4o
OpenAI API · Auto-scraper discovery · Commission URL inference
Key Files & Their Roles
Project Structure
PAMELAi/
├── client/src/
│ ├── pages/
│ │ ├── admin.tsx ← Full admin panel (RBAC, scrapers, testing, quality)
│ │ ├── law-firm.tsx ← Docket Tracker, ROE Workbench, Precedent DB
│ │ └── home.tsx ← Public landing page
│ └── App.tsx ← Routing + auth guard
├── server/
│ ├── index.ts ← Express app entry, middleware, scheduler wiring
│ ├── routes.ts ← Main API routes (dockets, utilities, ROE history)
│ ├── law-firm-routes.ts ← Law firm module API (precedents, benchmarks, PDF)
│ ├── scrapers.ts ← AI scraper engine (58-commission registry + GPT-4o)
│ ├── test-suite.ts ← 42-test automated test suite (8 suites)
│ ├── precedent-pipeline.ts ← Seed + normalize precedent records from ROE history
│ └── storage.ts ← Database interface (IStorage) — all CRUD operations
├── shared/
│ └── schema.ts ← Drizzle ORM schema (all tables + types)
└── client/public/
└── PAMELAi-Platform-Guide.html ← This document
Database Schema
Core Tables
utilities — IOU company registry (name, state, type)
dockets — Rate case filings with status, jurisdiction
roe_history — Historical authorized ROE records by state/year
precedent_records — Derived precedent database from ROE history
Platform Tables
scraper_configs — AI-generated dynamic scraper configurations
scraper_runs — Per-source scraper execution history
test_runs — Automated test suite run history
data_quality_scans — Data integrity scan results history
Authentication & Authorization
🔐
Two Auth Layers
User auth: Replit OIDC (OAuth) — users sign in with their Replit account. Session-based. Protects /api/auth/user, /api/utilities, and the law firm module.
Admin auth: Bearer token (SESSION_SECRET env var) — protects all /api/admin/* endpoints. Set by deployment environment. Enables programmatic admin access for scripts and CI.
Section 4
Feature-by-Feature Breakdown
🔍 Docket Tracker
The Docket Tracker is the operational hub for monitoring active rate cases. It ingests docket filings from the built-in scrapers and lets users filter, search, and track proceedings by utility, state, docket type, and status.
pamelai.replit.app / law-firm → Docket Tracker
- Filter by state, utility type (Electric/Gas/Water), status (Active/Filed/Closed), and jurisdiction
- Search by docket number or utility name — instant results across the full database
- Add dockets manually — with utility name, docket number, jurisdiction, commission, type, and status
- Auto-populated from scrapers — built-in scrapers add new dockets daily from FERC, CPUC, FPSC, ICC, NYPSC, PUCT
- Export to PDF — benchmark report generation for regulatory filings
📚 Precedent Database
The Precedent Database stores historical rate case decisions with their authorized ROE, capital structure, and jurisdiction. It is the research backbone for rate case attorneys preparing testimony on peer utility comparisons.
pamelai.replit.app / law-firm → Precedent Database
Utility / CaseStateYearAuth. ROEEquity %
FPL Group (NextEra)
FPSC Docket 20250112
FL
2025
10.50%
52.0%
Consolidated Edison
NYPSC Case 24-E-0380
NY
2024
8.80%
48.5%
Entergy Texas
PUCT Docket 55312
TX
2024
9.25%
51.0%
📈 ROE Expert Witness Workbench
The ROE Expert Witness Workbench is PAMELAi™'s flagship analysis tool — a full in-platform financial modeling suite designed for rate case expert witnesses and regulatory analysts. It combines peer group benchmarking with three independent cost-of-equity estimation models and generates ready-to-file exhibit language.
Peer Group Builder — PAMELAi™ IOU Database Integration:
- Browse PAMELAi™ IOUs dialog — sector-tabbed (Electric/Gas/Water) searchable list of all US/Canadian utilities in the database
- Multi-select with checkboxes — build a peer group from the IOU registry; count banner shows selections
- Removable peer chips — each selected IOU appears as a dismissible chip; manual name entry also supported
- Save / Load / Delete peer groups — named peer groups persist to PostgreSQL for reuse across sessions
Three-Model Cost-of-Equity Engine (DCF · CAPM · BYRP):
- DCF (Discounted Cash Flow) — multi-stage dividend discount model; configurable growth rates (near/long-term) and analyst consensus dividend yield
- CAPM (Capital Asset Pricing Model) — real-time 10-year Treasury yield anchor, configurable beta, market risk premium, and size/company-specific adjustments
- Bond Yield Plus Risk Premium (BYRP) — utility-bond yield basis plus configurable equity risk premium spread
- Composite ROE — weighted average of all three models; hero display with peer group range bar showing where composite falls vs. min/max precedents
- Model contribution breakdown table — per-model ROE, weight, and weighted contribution in a single readable exhibit
Expert Witness Exhibit Generator (5 Sections):
- Methodology Statement — boilerplate witness qualification paragraph auto-populated with workbench settings
- Peer Group Identification — formal list of selected comparables with utility name, state, type
- Model Results Table — formatted DCF/CAPM/BYRP results with weights and composite; copy-to-clipboard
- Precedent Benchmarking — composite ROE positioned against the peer precedent range with percentage spreads
- ROE Recommendation — one-paragraph conclusion text; copy-to-clipboard for insertion into direct testimony
🤖 AI Scraper Engine
The most technically distinctive feature of PAMELAi™. Rather than requiring manual configuration for each of the 58 regulatory commission websites (all with different URL structures, search forms, and formats), the AI Scraper Engine uses GPT-4o to:
- Look up each commission in the registry by name, state, and known URL
- Infer the correct API endpoint or search URL for docket listings
- Generate a scraper configuration including selectors, pagination strategy, and data field mappings
- Save the config to the database for reuse on every daily scrape cycle
pamelai.replit.app / admin → Scraper Automation
Coverage: 6 of 58 commissions
52 available for AI auto-discovery
Built-in: FERC · CPUC · FPSC · ICC · NYPSC · PUCT | Dynamic: 0 AI-configured
FERC
Built-in
Federal Energy Regulatory Commission
✓ Last run: 2h ago · 24 dockets
CPUC
Built-in
California Public Utilities Commission
✓ Last run: 2h ago · 31 dockets
CO_PUC
AI Ready
Colorado Public Utilities Commission
△ Not yet configured — click Discover
Section 5
What PAMELAi™ Can and Cannot Do
The following is an honest, complete inventory of platform capabilities as of March 2026 (Beta). Features marked with △ Planned are on the roadmap.
✅ Regulatory Docket Intelligence
✅
Track active, filed, and closed rate cases across 6 live commission sources
✅
Filter dockets by state, utility type, status, jurisdiction, and docket number
✅
Manually add dockets for any commission not yet scraped
✅
Daily automated scraping at 07:00 UTC from all configured sources
⚠️
Currently 6 of 58 commissions have live scrapers — AI auto-discovery can build the remaining 52, but each config must be triggered via the admin panel and verified before activation
❌
Does not yet parse or extract data from PDF regulatory orders (text extraction planned)
✅
Daily fact-only email digest at 9:00 AM Eastern when watched dockets change — every change cites the underlying source URL or order ID
✅
Per-watchlist preview surface on the Alerts page lets users see exactly what would land in their next digest before it sends
✅
"Send a digest now" button (rate-limited to 1/hour) for ad-hoc check-ins; deterministic bundle-hash makes the digest reproducible
✅ ROE & Precedent Research
✅
Centralized precedent database across multiple states and years
✅
ROE Workbench with peer group filtering by state, year, type, and capital structure
✅
PDF benchmark report generation — export-ready for regulatory filings
✅
ROE stored as decimal, displayed as percentage — consistent throughout
✅
Full in-platform DCF, CAPM, and Bond Yield Plus Risk Premium (BYRP) cost-of-equity models — Expert Witness Workbench
✅
IOU peer group picker sourced from PAMELAi™ utility database — multi-select with sector tabs (Electric/Gas/Water)
✅
Named peer group save/load/delete — workbench configurations persist to database across sessions
✅
Expert witness exhibit generator — auto-drafts testimony sections (methodology, peer group, model results, recommendation)
⚠️
Precedent database is seeded from ROE history — does not yet auto-populate from scraped orders
❌
Does not yet integrate FERC Form 1 or FERC Order No. 1000 cost-of-capital data automatically
✅ AI Scraper Automation
✅
58-commission registry covering all 50 US states + FERC + 7 Canadian provinces
✅
GPT-4o auto-discovers commission URLs and generates scraper configs
✅
Dynamic configs stored in DB and merged with built-in scrapers at runtime
✅
Per-scraper enable/disable/delete control in admin panel
⚠️
AI-generated configs require admin review before being marked production-ready — the AI can infer URLs but cannot guarantee they are stable
❌
Does not yet handle commission websites that require browser JavaScript (single-page app portals) — these need Playwright/Puppeteer (roadmap)
❌
No CAPTCHA bypass — commissions with CAPTCHA protection cannot be auto-scraped
✅ Admin & Data Quality
✅
Full admin panel with Bearer-token RBAC
✅
10-check automated data integrity scanner across all tables
✅
42-test automated test suite (8 suites) — runs in ~112ms
✅
Weekly scheduled test runs (Sundays 08:00 UTC) with history log
✅
Test Registry tab auto-discovers new tests — no manual registration required
⚠️
Admin panel is single-admin today — multi-seat RBAC with roles (viewer/analyst/admin) is planned
❌
No audit log for admin actions (add/edit/delete) — planned for enterprise tier
✅ Infrastructure
✅
Stripe billing integration (Analyst / Professional / Enterprise tiers)
✅
Replit OIDC authentication — sign in with Replit account
✅
PostgreSQL database with full schema type safety (Drizzle ORM)
⚠️
Auth is Replit-native — no SSO/SAML yet (enterprise SSO planned)
❌
No multi-tenant data isolation yet — all users share the same database
❌
No SOC 2 Type II certification — not yet suitable for highly regulated data environments
Section 6
Industry Comparison
PAMELAi™ occupies a specific niche: utility regulatory intelligence for rate case teams. It is not a general legal research tool, not a financial data terminal, and not a document management system. The following compares it to the tools that teams currently cobble together to solve the same problems.
| Capability |
PAMELAi™ |
S&P / SNL Energy |
RRA (S&P) |
Bloomberg Law |
Westlaw |
Manual (Excel/Word) |
| Purpose-built for utility rate cases |
✓ Yes |
Partial |
✓ Yes |
✗ No |
✗ No |
✗ No |
| ROE precedent database |
✓ Included |
✓ Yes |
✓ Yes |
✗ No |
✗ No |
Manual build |
| Live docket tracking (6+ sources) |
✓ Yes |
Limited |
Some |
✗ No |
✗ No |
✗ No |
| AI auto-configure scrapers |
✓ GPT-4o |
✗ No |
✗ No |
✗ No |
✗ No |
✗ No |
| 58-commission registry |
✓ Built-in |
Partial |
US only |
✗ No |
✗ No |
✗ No |
| PDF benchmark report generation |
✓ Yes |
Export only |
✗ No |
✗ No |
✗ No |
Manual Word |
| Data integrity scanner |
✓ 10 checks |
✗ No |
✗ No |
✗ No |
✗ No |
✗ No |
| Automated test suite |
✓ 42 tests |
✗ No |
✗ No |
✗ No |
✗ No |
✗ No |
| Annual cost (base) |
Free (Beta) / $25K |
$50K–$200K+ |
$15K–$40K |
$20K–$80K |
$10K–$50K |
Staff time only |
| General legal research |
Limited |
✗ No |
✗ No |
✓ Full |
✓ Full |
✗ No |
| Financial modeling (DCF, CAPM, BYRP) |
✓ DCF+CAPM+BYRP |
✓ Full |
Some |
✗ No |
✗ No |
Manual Excel |
| Self-serve SaaS (no sales process) |
✓ Yes |
✗ Enterprise sales |
✗ Subscription |
✗ Enterprise sales |
✗ Enterprise sales |
✓ N/A |
| SOC 2 / Enterprise security |
✗ Planned |
✓ Yes |
✓ Yes |
✓ Yes |
✓ Yes |
✗ No |
| Multi-tenant / SSO |
✗ Planned |
✓ Yes |
✓ Yes |
✓ Yes |
✓ Yes |
✗ No |
Narrative Summary
🏆
Where PAMELAi™ Leads
AI scraper automation is genuinely unique — no competitor auto-configures scrapers for 58 commissions using GPT-4o. The combination of docket tracking + ROE precedents + PDF benchmarks in a single, self-serve tool at $25K/yr undercuts the market significantly. The automated data quality scanner and test suite are also absent from every competitor.
⚠️
Where PAMELAi™ Lags
S&P Global / SNL Energy has a 20+ year head start on data depth and financial modeling. RRA (now S&P) has comprehensive rate case archives. Neither requires AI-generated scraper configs because they have dedicated data teams. PAMELAi™ is early-stage and lacks SOC 2, SSO, multi-tenancy, and the breadth of historical data that established vendors have accumulated.
Best-in-Class Score by Category
Historical Data Breadth40%
Platform Test Coverage92%
Section 7
Complete Tutorial — Using PAMELAi™
👤
Who this is for
This tutorial walks through the platform from sign-in to generating a PDF benchmark report, as a regulatory attorney or rate case analyst would use it. No technical knowledge required.
Part A — Getting Started
1
Access the Platform
Navigate to your PAMELAi™ URL (e.g., https://pamelai.replit.app). You will see the landing page with pricing tiers and a prominent "Sign In" button.
💡 During beta, all tiers are free. Click any plan to sign in.
PAMELAi™
Regulatory Capital Intelligence for Investor-Owned Utilities
✓ All tiers FREE during Beta
2
Sign In with Replit
Click "Get Started" or "Sign In". You will be redirected to Replit's OAuth login. Sign in with your Replit account credentials. First-time users are automatically provisioned.
🔐 Your account is tied to your Replit identity. No separate password needed.
3
Navigate to the Law Firm Intelligence Suite
After sign-in, click "Law Firm Suite" in the navigation bar. This opens the three-tab interface: Docket Tracker, Precedent Database, and ROE Workbench.
Part B — Tracking Dockets
4
View Active Dockets
The Docket Tracker tab loads automatically. You will see a table of rate case dockets sorted by most recent activity. Each row shows: Utility Name, Docket Number, State, Utility Type, Status, and Commission.
5
Filter to Your Target State
Use the State dropdown at the top of the docket table to filter to a specific state (e.g., "TX" for Texas). Combine with the Status filter (Active / Filed / Closed) to narrow to open proceedings. Use the Type filter for Electric, Gas, or Water.
💡 For law firm work, filter to the state where you have an active case, then sort by filing date to see the most recent activity.
6
Add a New Docket Manually
If a proceeding is not yet in the system (common for recent filings from commissions without live scrapers), click "+ Add Docket". Fill in:
- Utility Name — e.g., "Southwestern Public Service Company"
- Docket Number — e.g., "NMPRC Case 24-00218-UT"
- Jurisdiction — the commission name
- State — 2-letter code (e.g., "NM")
- Type — Electric / Gas / Water
- Status — Active / Filed / Closed
⚠️ State must be a valid 2-letter code. The platform validates this automatically.
Part C — Researching ROE Precedents
7
Open the Precedent Database
Click the "Precedent Database" tab. You will see a searchable table of rate case precedents with authorized ROE, equity ratio, utility type, state, and year.
8
Search by State, Utility, or Year
Type in the Search box to filter by state abbreviation (e.g., "TX"), utility name, or any text in the record. Results update in real time.
💡 For peer group analysis, search for your utility's state first, then expand to neighboring states.
9
Open the ROE Expert Witness Workbench
Click the "ROE Workbench" tab. This is the full expert witness analysis engine. You will see two panels:
- Left panel — Peer Group & Inputs: Click "Browse PAMELAi™ IOUs" to open the IOU picker dialog. Select sector (Electric/Gas/Water), search by name, and check boxes to add utilities to your peer group. Each selected IOU appears as a chip below. Set your model inputs: DCF dividend yield and growth rates, CAPM beta and risk premium, BYRP bond yield and spread, and model weights (must sum to 100).
- Right panel — Results: After clicking "Run Analysis", the composite ROE hero shows your blended estimate with a range bar positioning it against peer min/max precedents. The model breakdown table shows each model's individual result and weighted contribution.
💡 Save your peer group using the "Save Group" button before running — named groups can be reloaded in future sessions without re-selecting IOUs.
10
Generate Expert Witness Exhibit Language
After running the analysis, scroll to the Exhibit Generator panel below the results. It produces five ready-to-use testimony sections:
- Methodology Statement — witness qualification and approach, pre-filled from your model inputs
- Peer Group Identification — formal list of your selected comparables
- Model Results Table — formatted DCF/CAPM/BYRP output with composite
- Precedent Benchmarking — positions your composite against peer precedents
- ROE Recommendation — one-paragraph conclusion; copy with the clipboard button and paste directly into your direct testimony document
📋 Each section has a "Copy" button. Paste the generated text into your Microsoft Word testimony draft and customize as needed for jurisdiction-specific language.
11
Export the Benchmark as a PDF
For a formatted PDF of the peer precedent comparables, click "Export PDF Report". The platform generates a formatted document showing:
- Report title with filter parameters
- Summary statistics (mean, median, range, count)
- Complete comparable precedent table
- PAMELAi™ watermark and generation timestamp
📄 The PDF is formatted for attachment to regulatory filings as a benchmark exhibit alongside your direct testimony.
Section 8
Admin Panel — Complete Guide
🔐
Admin Access Required
The admin panel is protected by Bearer token authentication. You must set the SESSION_SECRET environment variable. The admin URL is /admin. Unauthorized access returns 401.
Admin Panel Tabs
📊
Overview Tab
Platform-wide statistics: total utilities, dockets, precedents, ROE records, scraper health, and recent activity log.
🏢
Utilities Tab
CRUD management for the utility registry. Add, edit, or deactivate utility records. Filter by state and type.
📋
Dockets Tab
Full admin view of all dockets. Edit status, correct docket numbers, bulk operations.
📈
ROE History Tab
Manage authorized ROE historical records. Add or correct ROE values, years, states, and capital structure data.
Scraper Automation Tab — Step by Step
1
View Coverage Dashboard
Navigate to Admin → Scrapers. The top card shows the coverage bar: currently 6 of 58 commissions have active scrapers (10.3% coverage). Below it shows all built-in scrapers with last-run status.
2
Run AI Auto-Discovery
Click the "🔍 AI Auto-Discover" button. This triggers POST /api/admin/scrapers/discover. GPT-4o processes all 52 unconfigured commissions, infers their docket search URLs, and saves new scraper configs to the database.
⚡ This takes 30–120 seconds depending on how many commissions need to be processed. Progress is shown in the console.
⚠️ Review all AI-generated configs before enabling them for production — verify the URLs are correct by clicking "Test" on each config.
3
Manage Dynamic Configs
The "Dynamic Configs" tab lists all AI-generated scraper configurations. For each:
- Click Enable/Disable to toggle a config on or off
- Click Delete to remove a bad config
- Click Run to manually trigger a scrape for that source
4
View Commission Registry
The "Registry" tab shows all 58 commissions — state name, abbreviation, type (state/federal/provincial), known URL, and whether a scraper exists (built-in or AI-generated). Use the search box to find a specific commission.
5
Monitor Run History
The "Run History" tab shows the last N scraper runs per source — start time, duration, dockets collected, and status (success / empty / error / ai_recovery).
Section 9
Testing & Data Quality
PAMELAi™ is one of the only vertical SaaS platforms in the utility regulatory space to ship with a built-in automated test suite and data integrity scanner. This reflects the high-stakes nature of regulatory data — a wrong ROE value or corrupted state code in a regulatory filing can have legal consequences.
The 42-Test Automated Suite
The test suite runs in ~112ms and covers 8 suites:
| Suite | Tests | What It Checks |
| Data Presence | 5 | Verifies utilities, dockets, ROE history, precedents, and scraper configs exist in the database |
| Filter Logic | 9 | Validates all filter combinations for state, type, status, year, and search return correct subsets |
| API Contract | 5 | Confirms response shapes match the expected schema for each endpoint (correct fields, types) |
| Auth Gates | 3 | Verifies admin endpoints reject unauthenticated requests and accept valid Bearer tokens |
| Regression | 4 | Guards against known past bugs (state code normalization, ROE decimal conversion, duplicate detection) |
| Scrapers | 3 | Validates scraper registry endpoint, built-in source count, and config DB integration |
| PDF Generation | 8 | Confirms PDF benchmark reports generate correctly — title, filters, statistics, comparable table, and PAMELAi™ watermark |
| Output Quality | 5 | Validates ROE Workbench outputs — composite ROE calculation accuracy, model weighting, peer group range positioning, exhibit text generation |
✅
Current Status: 42/42 Tests Passing (0 failures, ~112ms)
Last run: triggered by admin-bearer. Weekly scheduled runs every Sunday at 08:00 UTC automatically log results to the test run history. New tests added since the last run are highlighted with a "NEW" badge in the Test Registry.
Running the Test Suite
1
Navigate to Admin → Testing
Open the Testing tab in the admin panel. You will see the latest run summary card at the top — pass count, fail count, duration, and progress bar.
2
Click "Run All Tests"
The green "Run All Tests" button triggers POST /api/admin/testing/run. The button shows a spinning indicator while running. Results appear in the summary card within seconds.
3
Drill Into Failures
If any test fails, click "View Latest Run Details" in the Run Results tab. Tests are grouped by suite. Failed tests are highlighted in red with a detail message explaining the failure.
4
Browse the Test Registry
Click the "Test Registry" tab. This shows all 42 tests pre-listed without running them. Use the suite filter chips (8 suites) to view a single suite. Tests added since the last scheduled run are tagged with a "NEW" badge. Any new test added to the codebase auto-appears here — no manual registration needed.
Data Quality Scanner — 10 Automated Checks
| Check | Severity | What It Flags |
| Dockets: missing utility name | Critical | Any docket row with a null or blank utility name |
| Dockets: missing docket number | Critical | Any docket without a docket number identifier |
| Dockets: missing jurisdiction | Warning | Dockets with no commission/jurisdiction specified |
| Precedents: invalid state codes | Critical | State values not matching the 2-letter US/CA abbreviation standard |
| Precedents: null authorized ROE | Warning | Precedent records missing an authorized ROE value |
| ROE history: invalid state codes | Warning | ROE history rows with malformed state codes |
| Dockets: duplicate docket numbers | Warning | Docket numbers appearing more than once in the same jurisdiction |
| ROE history: null ROE values | Critical | ROE history rows with null authorized ROE |
| Scrapers: disabled configurations | Info | Scraper configs that exist in DB but are disabled |
| Precedents: state coverage breadth | Info | Count of distinct states with precedent records (target: 50) |
🛡️
Current Status: 10/10 Checks Passed, 0 Issues
24 distinct states have precedent records. All state codes are valid 2-letter abbreviations. No duplicates. No null ROE values. No disabled scraper configs.
Section 10
Best-in-Class Verdict
This is an honest assessment. PAMELAi™ is early-stage. Here is where it leads the market and where it needs to grow.
✅ Genuinely Best-in-Class Today
- AI-powered self-configuring scraper engine — no competitor has this
- 58-commission registry in one tool (50 states + FERC + Canada)
- Docket tracking + ROE precedents + PDF benchmarks in one self-serve SaaS
- Full in-platform DCF, CAPM, and BYRP cost-of-equity models — unique at this price point
- IOU-sourced peer group picker with named group save/load — eliminates manual Excel peer lists
- Expert witness exhibit generator — drafts testimony sections from workbench inputs
- Built-in automated test suite (42 tests, 8 suites, ~112ms) — unique in the vertical
- 10-check data integrity scanner with severity classification
- Transparent auto-discovery test registry with NEW badge for recently added tests
- Price point ($25K/yr, $0 beta) vs. $50K–$200K for S&P/Bloomberg
- Self-serve — no enterprise sales process, immediate access
- Modern UI — significantly better than legacy tools
△ Not Yet Best-in-Class (Roadmap)
- Only 6 of 58 live scrapers (10% coverage) — AI can build more, but each needs review
- Historical data depth: S&P/RRA have 20+ years of rate case archives
- No SOC 2 / enterprise security certification
- No SSO/SAML — only Replit OIDC auth
- No multi-tenant data isolation
- No audit log for admin actions
- No PDF order parsing / text extraction
- Cannot scrape JavaScript-heavy commission portals
🎯
Bottom Line
For a team that needs docket tracking + ROE benchmarks + AI-assisted commission coverage at a fraction of legacy vendor cost, PAMELAi™ is best-in-class for its target use case. It is not yet a replacement for S&P Global's full data platform — but it is a better product for the specific job of utility rate case intelligence, and it will get there faster because it's designed specifically for that problem.
When to Choose PAMELAi™
- You are a law firm or utility regulatory team needing a centralized docket + ROE tool
- You want self-serve access without a months-long enterprise sales process
- You need AI-powered scraper coverage across many commissions without a dedicated data engineering team
- You are tired of maintaining manual Excel-based ROE comparables spreadsheets
- Cost matters — you cannot justify $100K+/yr for S&P Global
When to Choose a Competitor Instead
- You need decades of historical rate case archives (S&P/RRA is better)
- You need SOC 2 certified data handling (use an established vendor)
- You need general legal research beyond utility regulatory (Bloomberg Law or Westlaw)
- You need enterprise SSO + multi-tenant data isolation today (roadmap, not yet live)
Section 11
Pricing & Access
🎉 All tiers are FREE during Beta. Sign up now — pricing takes effect post-Beta launch.
Analyst
$25K
per year
- Docket Tracker (read + add)
- Precedent Database access
- ROE Workbench — 50 queries/mo
- PDF benchmark reports — 10/mo
- 5 commission scraper sources
- Email support
MOST POPULAR
Professional
$50K
per year
- Everything in Analyst
- Unlimited ROE Workbench queries
- Unlimited PDF reports
- AI scraper auto-discovery
- All 58 commission registry
- Data Quality Scanner access
- Priority support (24h SLA)
Enterprise
$100K+
per year · custom
- Everything in Professional
- Multi-user RBAC (admin/analyst/viewer)
- SSO/SAML integration
- Multi-tenant data isolation
- Audit log & compliance exports
- Dedicated scraper team support
- Custom data integrations
- Dedicated SLA (4h response)
📧
Contact for Enterprise Pricing
Email ymolner@yahoo.com for multi-seat enterprise agreements, custom data packages, and white-label options for law firm practice groups.
Section 12
Product Roadmap
✅
Completed (v2.0 — March 2026)
DCF, CAPM, and BYRP cost-of-equity models (Expert Witness Workbench) · IOU peer group picker from PAMELAi™ database · Named peer group save/load/delete · Composite ROE hero with range bar · Expert witness exhibit generator (5 sections) · 42-test automated suite (8 suites) · PDF Generation and Output Quality test suites · "NEW" badge in Test Registry · Weekly scheduled test runs (Sun 08:00 UTC) · AI auto-discovery for all 58 commissions · Data integrity scanner (10 checks)
Q2 2026 — Data Depth
- Expand live scrapers to 20+ commissions (from current 6)
- AI scraper config auto-verification (URL health checks)
- ROE history seeded to 50 states (from current 24)
- PDF order text extraction (OCR + AI parsing)
- FERC Form 1 financial data auto-import
Q3 2026 — Enterprise Readiness
- Multi-tenant data isolation (per-firm database partitioning)
- SSO/SAML via Okta/Azure AD
- Role-based access control (admin / analyst / viewer roles)
- Audit log for all admin actions
- SOC 2 Type I readiness assessment
Q4 2026 — Intelligence Layer
- AI-summarized regulatory order key points (PDF ingestion + GPT-4o extraction)
- Docket activity trend analytics and filing frequency charts
- Playwright/Puppeteer browser-based scraping for JS-heavy portals
- Rate case timeline tracker (milestone tracking per docket)
- Collaborative workspaces — multi-user notes and annotations per docket
- API access tier for enterprise customers (REST API, programmatic data pulls)
2027 — Platform Expansion
- Canadian provincial commission deep coverage (OEB, AUC, BCUC, NSUARB)
- Natural language query interface ("Show me TX electric ROE precedents 2022–2025")
- Mobile app (iOS/Android) optimized for courtroom / hearing room use
- Document management — attach and full-text search regulatory orders by case
- AI regulatory assistant — NLP Q&A over precedent database
Section 13 — Technical Reference
API Reference
All endpoints use JSON. Admin endpoints require Authorization: Bearer <SESSION_SECRET>. User endpoints require a valid Replit OIDC session cookie.
Law Firm Module (Session Auth)
GET /api/law-firm/dockets → List dockets (filter: state, type, status, search)
POST /api/law-firm/dockets → Create docket
GET /api/law-firm/precedents → List precedents (filter: state, type, year, search)
POST /api/law-firm/precedents → Create precedent
GET /api/law-firm/roe-history → ROE history (filter: state, year, type)
POST /api/law-firm/roe-history → Add ROE history entry
POST /api/pdf/benchmark → Generate PDF benchmark report
Scraper Engine (Bearer Auth)
GET /api/admin/scrapers/configs → List dynamic scraper configs
POST /api/admin/scrapers/configs → Create new config
PATCH /api/admin/scrapers/configs/:id → Update config (enable/disable/edit)
DELETE /api/admin/scrapers/configs/:id → Delete config
GET /api/admin/scrapers/registry → All 58 commissions with coverage status
POST /api/admin/scrapers/discover → AI auto-build configs for missing commissions
POST /api/admin/scrapers/run/:source → Manually run a specific scraper
GET /api/admin/scrapers/runs → Scraper run history
ROE Workbench & Peer Groups (Session Auth)
GET /api/law-firm/peer-groups → List all saved peer groups
POST /api/law-firm/peer-groups → Save a named peer group (members + workbench_params)
DELETE /api/law-firm/peer-groups/:id → Delete a peer group
GET /api/utilities → Full IOU utility registry (filter: sector=electric|gas|water)
Testing & Data Quality (Bearer Auth)
POST /api/admin/testing/run → Run all 42 tests (8 suites), save results
GET /api/admin/testing/runs → Test run history (latest first)
GET /api/admin/testing/runs/:id → Single run with full per-test results
GET /api/admin/testing/tests → All 42 tests listed (no execution)
POST /api/admin/testing/scan-data-quality → Run 10-check data integrity scan
Auth & User (Session Auth)
GET /api/auth/user → Current user (or 401 if not signed in)
GET /api/login → Redirect to Replit OIDC login
GET /api/logout → Clear session, redirect to home