NHDOJ: parser rebuilt for the real 8-column registry layout (Reg. No. | Charity Name | Address | City | State | Zip | Status | Report Due) with single-letter G/X/S statuses; Reg. No. is the stable upsert key (new orgs.registration_number column + partial unique index, enum gains 'suspended' via idempotent ADD VALUE); out-of-state registrants keep their real state. Akamai-safe fetch headers + NHDOJ_REGISTRY_PDF_PATH local-file override. ProPublica: zero-hit state-scoped searches return 404, not an empty list — map to no-candidates instead of failure (tripped the systemic- failure breaker at 60/200 on first contact). Enrichment queue now prioritizes NH good-standing orgs over the out-of-state tail. PND: feed retired upstream (HTML shell on every historical path) — documented as rework candidate, low priority. run-once.ts: supervised one-off runner through the durable DBOS handles (workflow modules now export run*Now accessors); drop the double pool.end() after DBOS.shutdown(). First supervised run: 200 Grants.gov opportunities (1 auto-expired), 13,632 orgs from the 427-page registry, enrichment at failed=0 with 121/200 EIN resolution in the NH-priority batch. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
27 lines
1.4 KiB
Plaintext
27 lines
1.4 KiB
Plaintext
# Postgres connection string shared by the DBOS system schema, the pg Pool,
|
|
# and the Drizzle client over the outreach schema. Required — main.ts throws
|
|
# on boot if this is unset.
|
|
# For the dockerized DB (docker compose up -d postgres) use port 54341:
|
|
DATABASE_URL=postgresql://postgres:password@localhost:54341/helmdocs_outreach
|
|
|
|
# Path to a GCP service account key JSON used by ingestion/scoring steps that
|
|
# call Google-hosted APIs (e.g. @google/genai subscoring, Drive-backed org
|
|
# profile lookups). Not read directly by main.ts yet; present here so it's
|
|
# provisioned alongside DATABASE_URL for the workflows that will need it.
|
|
GCP_SERVICE_ACCOUNT_KEY_PATH=./secrets/gcp-service-account.json
|
|
|
|
# Optional: cap the pg Pool size (defaults to 20 — see main.ts).
|
|
# PG_POOL_MAX=20
|
|
|
|
# NHDOJ Charitable Trusts registry PDF — the URL changes whenever NHDOJ
|
|
# republishes (roughly monthly). When unset, the monthly ingestNhdojOrgs
|
|
# workflow logs a warning and no-ops instead of failing.
|
|
# Local-file override for supervised runs / Akamai outages (takes
|
|
# precedence over the URL):
|
|
# NHDOJ_REGISTRY_PDF_PATH=./secrets/registered-charities.pdf
|
|
# NHDOJ_REGISTRY_PDF_URL=https://www.doj.nh.gov/.../charitable-trusts-registry.pdf
|
|
|
|
# Optional override for the Philanthropy News Digest RFP feed (defaults to
|
|
# the public feed URL baked into src/sources/pnd-rss/client.ts).
|
|
# PND_RFP_FEED_URL=https://philanthropynewsdigest.org/feeds/rfps.rss
|