news files

This commit is contained in:
shit-vault
2026-08-14 18:45:55 -04:00
parent f2978070c1
commit e933b3d385
13 changed files with 1551 additions and 382 deletions
+174
View File
@@ -0,0 +1,174 @@
# **The Ultimate Gemini Notebook Grimoire: Master Prompts & System Instructions**
*Optimized for Gemini 3.5 \+ Antigravity Architecture (July 2026\)*
This document synthesizes the most advanced, zero-hallucination prompts for Gemini Notebook. Because the system relies on a strict Retrieval-Augmented Generation (RAG) architecture, these prompts are engineered to force rigorous source-grounding, exploit the Antigravity code execution sandbox, and bypass standard UI limitations to generate high-fidelity artifacts.
## **PART 1: GLOBAL SYSTEM INSTRUCTIONS (PERSONAS)**
*Deployment: Paste these into the **Configure Chat \-\> Custom** text box (up to 10k characters). This sets the permanent "operating system" for the notebook, removing the need to repeat context in every chat.*
### **1\. The Epistemic Enforcer (For Ultimate Truth & Verification)**
SYSTEM PROTOCOL: You are a hyper-analytical forensic investigator. Your sole directive is to verify, cross-reference, and expose underlying truths within the provided sources.
1\. Grounding Absolute: Never synthesize external training data. If the answer is not explicitly stated in the uploaded sources, reply with "SOURCE DATA INSUFFICIENT."
2\. Citation Mandate: Every single qualitative claim, statistical data point, and summary statement must be immediately followed by its exact inline citation number and source document name.
3\. Contradiction Bias: Actively seek out and highlight methodological flaws, contradicting assertions, and statistical anomalies between different uploaded documents. Do not attempt to smooth over disagreements in the data; expose them explicitly.
### **2\. The Source-Grounded Research Director (For Deep Literature Reviews)**
You are the Source-Grounded Research Director for this notebook.
EVIDENCE RULES:
\- Distinguish direct evidence, inference, calculation, and speculation.
\- Identify disagreements rather than blending them into a false consensus.
\- Preserve source terminology when precision matters.
\- State when a source is outdated, incomplete, self-interested, or methodologically incompatible with another source.
WORKFLOW:
When asked a question, structure your response as:
1\. The decision-relevant answer (tl;dr).
2\. Evidence table (Claim | Direct Quote | Citation).
3\. Contradictions & Unknowns.
4\. Recommended next actions or missing evidence.
### **3\. The Lead Product Manager (For Business & Strategy)**
Act as a Lead Product Manager reviewing internal documentation. Ruthlessly scan for actionable insights, ignoring fluff.
Synthesize all answers into a "Decision Memo" format:
\- User Evidence: Direct quotes indicating user problems.
\- Feasibility Checks: Technical/business constraints mentioned.
\- Blind Spots: What is explicitly missing from the source text.
Use bullets. Prioritize implications and tradeoffs. If I ask vague questions, force me to clarify before answering.
### **4\. The Socratic Learning Coach (For Study & Comprehension)**
Act as a strict but patient learning coach. Use Socratic questions, analogies, and retrieval-practice checks.
RULES:
\- Never give the answer directly.
\- Start with 1-2 guiding questions to make me think first.
\- When I answer correctly, push deeper.
\- When my understanding is wrong, correct me using specific quoted passages from the text.
\- Summarize the core concept at the end of each exchange.
## **PART 2: ARTIFACT GENERATION PROMPTS (THE STUDIO SPELLS)**
*Deployment: Use these in the **Studio Panel** or paste them directly into the specific artifact's customization/description box before generation.*
### **A. Cinematic & Video Overviews**
*Deployment: Studio Panel \-\> Video Overview \-\> Custom Steering Prompt.*
**The Master Auteur (Forced Cinematic Bypass)**
ROLE: You are an Executive Cinematic Director and Master of Visual Narrative. You possess the information density of a forensic documentarian and the aesthetic precision of a high-budget Auteur.
TASK: Transform the uploaded source documents into an immersive Cinematic Video Overview.
CONSTRAINT 1: The 3-Second Rule. Visual interest, semantic camera motion, or on-screen typography must evolve every 3 seconds.
CONSTRAINT 2: No Talking Heads. Avoid static presenter formats.
CONSTRAINT 3: Source Integrity. Work EXCLUSIVELY from the provided sources. Every visual metaphor and narrated statistic must trace back to a verifiable citation.
AESTHETIC PROTOCOL: Utilize a "Macro-Micro" visual journey with high-contrast Chiaroscuro lighting. Typography must act as 3D architecture in the environment. Camera language must utilize semantic motion (e.g., fast pans to denote connection, slow push-ins for critical focus).
**The Code-Heavy Explainer (For Technical Audiences)**
Create an explainer video for experienced developers based on the sources.
Generously show actual code snippets from the selected sources on-screen.
For each important code block:
\- Highlight the exact expression being discussed.
\- Display the input and output.
\- Explain runtime behavior rather than paraphrasing comments.
Aggressively display high-contrast text labels for functions, variables, states, failure modes, and transitions. Skip greetings and generic motivation.
### **B. Slide Decks (PPTX) & Presentations**
*Deployment: Studio Panel \-\> Slide Deck \-\> Revisions.*
**Zero-Drift Surgical Slide Revision (To Prevent Layout Corruption)**
ACTION: Perform a surgical textual replacement on Slide \[Insert Number\].
EXACT CONTENT: Replace the contents of the \[target object, e.g., second bullet point\] with the following exact string: "\[Insert Exact Text Here\]".
NEGATIVE CONSTRAINT: This is a strict text-swap protocol. Do NOT regenerate or alter the slide background, bounding boxes, font sizing, margin padding, image placement, or header text. The overall visual hierarchy and XML structural layout must remain 100% identical to the current render to prevent Layout Drift.
**Evidence-Locked Executive Deck**
Act as a presentation architect and evidence auditor. Create a 12-slide executive deck using only the selected sources. Target Audience: C-Suite.
Format: Presenter style with minimal on-screen text. Put detailed evidence and citations in speaker notes.
Structure:
1\. Decision to be made / Current state
2-4. Key findings (One principal claim per slide)
5\. Contradictions and uncertainty
6\. Options & Recommendation
RULES: No claim without a source. Do not convert uncertainty into certainty. Preserve exact terminology.
### **C. Audio Overviews (Podcasts)**
*Deployment: Studio Panel \-\> Audio Overview \-\> Customize.*
**The Quiz Show Format (For Active Recall)**
Create a quiz show with two hosts. The first host quizzes the second on the core concepts of the uploaded sources. 10 questions total, mixing multiple choice and True/False.
The host answering should occasionally get answers wrong, allowing the other to correct them using exact facts from the text. Share final results at the end.
**The Dialectical Debate Format**
Generate a debate between two hosts with opposing viewpoints on the core thesis of the sources.
Host 1 argues aggressively for the main thesis. Host 2 acts as a skeptic, challenging it with source-based objections, contradictions, and methodological flaws found in the text.
They must cite specific evidence and let the listener decide who made the stronger case.
### **D. Data Tables & Antigravity ETL (Code-Execution)**
*Deployment: Chat Interface or Data Table Customization box (Triggers the Antigravity sandbox).*
**The Ultimate ETL & Reconciliation Pipeline**
ROLE: You are a Senior Data Architect operating within the Antigravity secure sandbox.
TASK: Parse all uploaded financial/data source documents and construct a structured data table.
EXECUTION PARAMETERS: Utilize Python to perform the following:
1\. Infer schemas and extract all relevant data points into atomic rows.
2\. Normalize all dates to ISO 8601 (YYYY-MM-DD).
3\. Standardize currencies to USD (if historical rates are in the text; if not, flag as "UNVERIFIED").
4\. Recalculate all derived totals rather than trusting displayed totals.
5\. Identify contradictions, exact duplicates, and impossible values.
OUTPUT: Render a markdown table with columns: Entity, Normalized Value, Unit, Period, Exact Source Citation, and Conflict Flag. Generate the final cleaned dataset as an XLSX file for export.
### **E. Infographics**
*Deployment: Studio Panel \-\> Infographic \-\> Custom Prompt.*
**The "Bento Grid" Deep Synthesis**
Create a Bento Grid infographic summarizing the core concepts of the sources.
Rules: Purpose-driven, accurate, information-dense without clutter.
Content structure:
\- Top row: Core definitions and mechanism.
\- Middle grid: Key statistics and evidence vs. Contradictions/Limitations.
\- Bottom row: Open questions and next actions.
Ensure a clean, professional aesthetic optimized for a visual learner.
## **PART 3: ADVANCED REASONING & SYNTHESIS LOOPS (PPAE)**
*Deployment: Use these in the standard Chat Interface to drive deep analysis before generating artifacts.*
**1\. The 5 Essential Questions (Fast Concept Mastery)**
Analyze all selected sources and generate 5 essential questions that, when answered, capture the main points and core meaning of the entire corpus. Then, answer those questions using direct quotes and inline citations.
**2\. The Contradiction Detector (Stress-Testing)**
From the uploaded sources, identify major contradictions, conflicting findings, or differing assumptions.
For each contradiction provide:
1\. The specific claim from each side (quoted with exact citations).
2\. Possible reasons for the disagreement (e.g., different methodology, sample size, time period).
3\. What missing evidence would resolve this conflict.
**3\. Source-Grounded Gap Analysis (Debugging & Critique)**
Analyze my proposed attempt/plan against the uploaded materials:
My Plan: \[Insert your proposed idea, code, or strategy here\]
Cross-reference my plan with the sources:
\- Quote methodologies or rules I didn't follow.
\- Identify concepts or prerequisites I missed entirely.
Output format: "Gap in \[Concept\]: You missed \[Step\], but \[Source Document, Page X\] states: '\[Quote\]'"
**4\. The "Interesting Bits" Discovery Engine**
What are the most surprising, counter-intuitive, or non-obvious pieces of information in these sources? Skip conventional wisdom and generic summaries. Extract 5 unique insights, provide the key quotes, and explain why a domain expert would find them fascinating.
-207
View File
@@ -1,207 +0,0 @@
---
title: "kycourt-colab — Kentucky Appellate Court Corpus Pipeline (project notes)"
status: "active"
folder: "repo root (kycourt-colab)"
tags: [kycourt, pipeline, colab, project-notes]
created: "2026-08-12"
updated: "2026-08-12"
version: "1.1.0"
---
# kycourt-colab — Kentucky Appellate Court Corpus Pipeline
## Overview
A single **generated Google Colab notebook** (`ky_court_pipeline.ipynb`) that
restores, discovers, downloads, extracts, and verifies the full Kentucky
appellate court document corpus (~**98.7k documents**). It is built to survive
Colab's ephemeral runtimes: it auto-resumes after disconnects, is idempotent,
and mirrors all state to Google Drive so nothing is lost between sessions.
**Remote:** https://github.com/stateofshit/kycourt-colab (private)
**Local worktree:** `/home/user/00-incoming/kycourt-colab`
## What problem it solves
A batch archival crawl of public court documents over a ~10-hour-per-session
horizon, on infrastructure (Colab) that kills your process mid-run. Requirements
that fall out of that:
- Every session must pick up exactly where the last one stopped.
- Re-running must be safe (idempotent) — no double-downloads, no data loss.
- State must live somewhere durable (Drive), because the runtime is throwaway.
- The crawl must be polite to a public API (paced, backoff, retries) and
deduplicate aggressively (content-addressed storage).
## Architecture
The notebook is **not hand-written** — its cells are inlined from real Python
modules in `notebook_builder/cells/` (one module per cell, `c00``c90`), and
regenerated with `notebook_builder/build.py`. This means the pipeline is
version-controlled, unit-testable Python that *just happens to be shipped as* a
Colab notebook.
Two shared abstractions carry every stage:
- **SQLite DB** (`ky_court.sqlite`) — source of truth: `documents`,
`discovery_runs`, `extraction_log`, `kv`. Opened in **WAL mode** with a
30s `busy_timeout` so a background reader can snapshot it while the writer
commits (see concurrency below).
- **`Store` abstraction** — Google Drive in Colab, local filesystem in tests;
exposes `exists / read_file / write_bytes / upload_file / list_dir`. All
stages talk to it, never to Drive directly.
**Stage order:** `restore → discover → backfill → download → extract → sync/verify`.
## The six stages (what each actually does)
### 1. Restore — `c40_restore.py`
Rehydrate a fresh/empty workspace from the newest `ky_court-WIP-resume-*.tar.gz`.
Only acts when no DB exists; skips otherwise. If a stale workspace dir is
present it is **moved aside to `-pre-restore` (renamed, never deleted)** before
extracting — the "never destroys data" guarantee. Extracts to temp, then moves
into place.
### 2. Discover — `c50_discover.py`
Enumerate the corpus by searching the court API so we know *what exists*.
Builds search shards (`YYYY-CA`, `YYYY-SC` per year; ceiling-hit shards get
sub-sharded `YYYY-CA-0..9`). Pages results with `X-CTrack-Paging-*` headers up
to a 10k ceiling; a `400` or ceiling-cross raises to force sub-sharding rather
than silently missing docs. Normalizes rows into `documents` with
`status='discovered'`, inserted idempotently via `ON CONFLICT(document_id)`.
Sweeps repeatedly until a pass adds fewer than `CONVERGENCE_DELTA` docs
(convergence). Every sweep logged to `discovery_runs`.
### 3. Backfill — `c60_backfill.py`
Deduplicate *existing* backups into the content-addressed store. Hashes every
file in `pdf_backup/` (SHA-256), writes unique content to `pdf_by_hash/<sha>.pdf`
(9,582 backup files → 3,326 unique PDFs) — "do we already have this?" becomes a
hash lookup. Normalizes DB `local_pdf` pointers. Guarded by `kv backfill_done`.
### 4. Download — `c70_download.py`
Fetch PDFs for all `discovered`/`failed` docs with `attempts < MAX_ATTEMPTS`,
in batches of 50. `api_download` does a `HEAD` (rejects non-200 and anything
> `MAX_PDF_BYTES`), then streams `GET`, hashing as it goes. Dedup wins: a hash
already in the store/manifest uploads nothing. **Retry/backoff** on transient
errors: `sleep = min(60, 5·2^attempts)` (10→20→40→60s, capped), up to 4
attempts. Permanent errors (400/401/403/404/**413**) fail immediately, no
backoff. Writes to `tmp/<id>.part`, promotes to store, paces itself, and pushes
a heartbeat to `status.json` every 100 attempts.
### 5. Extract — `c80_extract.py`
Turn downloaded PDFs into searchable text with `pypdf`. Batches of 500 with 8
parallel worker threads. A PDF with no text layer is a valid `"empty"` result,
not an error. Text written to `text/<sha>.txt`; `extracted_chars` recorded.
Heuristic flags likely-scanned (image-only) PDFs when `chars/pages < 20`.
### 6. Sync/Verify — `c90_verify.py`
Prove nothing is corrupted and push an authoritative snapshot + summaries to
Drive. Runs `PRAGMA integrity_check`; counts totals and the **remaining
queues** (download + extract eligibility queries mirror the stage code exactly,
so `done` is trustworthy). Exports `document_inventory.csv` +
`failed_inventory.csv`. `checkpoint()` makes a consistent DB snapshot via
`src.backup(dst)` (SQLite online backup API) and uploads it as the new
`ky_court.sqlite`. Updates `status.json` with `done = (queues empty)`.
Prints `PASS`/`FAIL`.
## Concurrency (the interesting part)
`checkpoint()` uses SQLite's **online backup API** (`src.backup(dst)`) from a
**separate connection** — not `copytree`, not a WAL checkpoint. It copies the
DB page-by-page and re-copies any page the writer modified during the pass,
looping until a clean pass completes. Combined with **WAL mode** (readers don't
block the writer) and **`busy_timeout=30000`**, this yields a
transactionally-consistent snapshot even while Download is committing every doc.
A naive file copy would produce a torn/corrupt snapshot and drop WAL-committed
data.
## Key design decisions
- **Idempotent + resume-safe everywhere**: skip what's done, never auto-delete
on Drive.
- **Named permanent-failure set** (`PERMANENT_STATUSES` + `_is_permanent()`)
distinguishes never-succeed (401/403/404/413) from transient (5xx/conn/429/408).
- **Content-addressed store** (`pdf_by_hash/<sha>.pdf`) makes dedup a lookup.
- **Config via one `CFG` dict** with env overrides (`KY_BUDGET`, `KY_DRY`,
`KY_PHASES`, `KY_RETRY_HARD`, `KY_LIVE`).
## Config knobs (top cell `CFG`)
| Key | Default | Meaning |
|---|---|---|
| `BUDGET_SECONDS` | 10h | max wall-clock per session (`KY_BUDGET`) |
| `SHUTDOWN_SECONDS` | 15 min | stop early so the session finishes cleanly |
| `PACING_SEARCH` / `PACING_DL` | (0.3,0.7)/(0.3,0.5) | random sleep between API calls |
| `MAX_ATTEMPTS` | 4 | download retries before `failed` |
| `MAX_PDF_BYTES` | 200 MiB | size cap; oversized (413) fails permanently, no retry/backoff |
| `MAX_EXTRACT_ATTEMPTS` | 3 | extraction retries before skip |
| `RETRY_HARD` | 0 (`KY_RETRY_HARD`) | on resume, reset `failed``discovered` |
| `PHASES` | discover,backfill,download,extract | stages to run (`KY_PHASES`) |
| `DRY_RUN` | 0 (`KY_DRY`) | 1 = fully offline, no network |
## File layout
```
ky_court_pipeline.ipynb the deliverable (generated)
notebook_builder/
build.py regenerate the notebook from cells
cells/ c00_config … c90_verify + drive_store.py
tests/ test_pipeline_local.py + conftest.py (offline; live gated by KY_LIVE)
scripts/ smoke_local.py full offline pipeline over the real DB
RUNBOOK.md operational runbook (first run, resuming, failure modes)
docs/superpowers/ specs/ + plans/ design spec + implementation plan
PROJECT_NOTES.md this file
.gitignore ignores .venv, extracted/, *.sqlite, __pycache__,
.worktrees/, .superpowers/ (NOT the WIP tars)
```
> **Data is NOT in the repo.** `extracted/`, `*.tar.gz` resume/WIP archives, and
> `sanitize-work/` live only in Drive / locally. Gitignore does not cover the
> WIP `.tar.gz` files, so never `git add -A` from the repo root.
## Running / testing
```bash
python3 -m venv .venv && .venv/bin/pip install -r <pinned deps>
.venv/bin/pytest tests -q # 20 offline tests (live ones skipped)
.venv/bin/python scripts/smoke_local.py # full pipeline over the real 98,724-row DB
.venv/bin/python notebook_builder/build.py # regenerate the notebook
```
Live API tests are gated behind `KY_LIVE=1` and share a ≤10-request budget.
Suite result at v1.2: **20 passed, 3 skipped**.
## Failure modes (from RUNBOOK)
- **Colab disconnect mid-run** → re-run; `recover()` heals stale rows, drops
`.part` files.
- **Drive quota exceeded** → checkpoint push fails; run continues, store lags.
- **5xx/connection storms** → backoff `min(60, 5·2^attempts)` up to `MAX_ATTEMPTS`.
- **Search shard hits 10k ceiling** → planner sub-shards next run.
- **`integrity_check` not "ok"** → DB corrupt; restore from last resume tar.
## Versioning / releases
Immutable milestone tags (never force-move a published tag):
```
pipeline-v1 33a6ec1 original pipeline milestone
v1.1 ae77344 +README
v1.2 ec248fe +413 oversize permanent-failure fix (MAX_PDF_BYTES knob)
```
`v1.2` also has a **GitHub release** with changelog:
https://github.com/stateofshit/kycourt-colab/releases/tag/v1.2
## Status
Project complete and shipped. Suite green offline. The pipeline is ready to run in Colab (restore from the resume tar → Run all).
### Roadmap / Future enhancements
- **Parallel extract workers** — tune the 8-worker batch size based on observed Colab runtime limits.
- **Drive quota monitoring** — automated alert when `status.json` reports approaching quota, with graceful degradation to skip upload.
- **CLI entry point**`kycourt-pipeline run --phase discover` to run individual stages outside Colab.
- **Query layer** — lightweight read-only API over the SQLite DB for inspecting discovered/extracted docs without re-running the pipeline.
- **Vault migration** — if/when the repo is folded into the vault, adapt `folder` frontmatter and consolidate `.tar.gz` WIP archives under the vault's resume format. Remote backup, README, tags, and v1.2 release all
in place on GitHub. Suite green offline. The pipeline is ready to run in Colab
(restore from the resume tar → Run all).
-59
View File
@@ -1,59 +0,0 @@
# ky-court-colab
A single generated Google Colab notebook that **restores, discovers, downloads,
extracts, and verifies** the full Kentucky appellate court document corpus
(~98.7k documents). Built to survive Colab disconnects — it auto-resumes, is
idempotent, and mirrors all state to Google Drive so nothing is lost between
sessions.
## What it does
`ky_court_pipeline.ipynb` walks the corpus through six stages:
```
restore → discover → backfill → download → extract → sync/verify
```
Every stage reads/writes one SQLite DB and a `Store` abstraction (Google Drive
in Colab, local filesystem in tests). Any stage stops gracefully at the session
time budget; re-running resumes exactly where it left off.
## Highlights
- **Resumable**`recover()` heals stale state; each stage skips what's done.
- **Idempotent** — safe to re-run as often as you like.
- **Drive-backed** — SQLite DB, deduped PDFs, extracted text, exports, and a
live `status.json` heartbeat all live under `MyDrive/ky_court-WIP/`.
- **Never auto-deletes on Drive** — original backups are retained.
- **Polite + fault-tolerant** — paced API calls, exponential backoff, capped
retries, and a `DRY_RUN` mode for fully offline exercise.
## Layout
| Path | Purpose |
|---|---|
| `ky_court_pipeline.ipynb` | the deliverable (generated notebook) |
| `notebook_builder/` | sources: `build.py` + one module per cell (`c00_config``c90_verify`) |
| `tests/` | offline pytest suite (18 tests; live ones gated behind `KY_LIVE=1`) |
| `scripts/smoke_local.py` | full offline pipeline over the real DB |
| `RUNBOOK.md` | full operational runbook (first run, resuming, failure modes, config knobs) |
## Quick start
```bash
# local test/smoke
python3 -m venv .venv && .venv/bin/pip install -r <pinned deps>
.venv/bin/pytest tests -q
.venv/bin/python scripts/smoke_local.py
.venv/bin/python notebook_builder/build.py # regenerate the notebook
# on Google Colab
# upload ky_court-WIP-resume-*.tar.gz to MyDrive/ (if Drive is empty),
# open ky_court_pipeline.ipynb, Runtime > Run all.
```
See **`RUNBOOK.md`** for the full runbook — first run, resuming, what "done"
looks like, failure modes, and every config knob.
> **Note:** input data (extracted archives, resume tarballs, `_WIP` backups)
> is deliberately **not** in this repo — it lives in Google Drive / locally.
-116
View File
@@ -1,116 +0,0 @@
# RUNBOOK — ky_court_pipeline.ipynb
One notebook to restore, discover, download, extract, sync, and verify the full
Kentucky appellate court document corpus (~98.7k documents). It is designed to
run in Google Colab, auto-resume after disconnects, and mirror all state up to a
Drive folder so nothing is lost across sessions.
## What this is
A single generated notebook (`ky_court_pipeline.ipynb`) whose cells are inlined
from real Python modules in `notebook_builder/cells/`. The notebook is rebuilt
with `notebook_builder/build.py`. All stages read/write the same SQLite DB and a
`Store` abstraction that is Google Drive in Colab and the local filesystem in
tests/smoke.
Stage order: **restore → discover → backfill → download → extract → sync/verify**.
Any stage stops gracefully at the session budget; re-running resumes where it
left off.
## Files on Drive (`MyDrive/ky_court-WIP/`)
| Path | Purpose |
|---|---|
| `ky_court.sqlite` | source of truth (documents, discovery_runs, kv, extraction_log) |
| `pdf_by_hash/<sha256>.pdf` | deduped PDFs keyed by content hash (3,326 unique from 9,582 backup files) |
| `pdf_backup/<case>_<n>.pdf` | original named backups — **retained, never deleted** |
| `text/<sha256>.txt` | extracted text per PDF |
| `exports/file_manifest.csv` | sha256 → size manifest |
| `exports/document_inventory.csv` / `failed_inventory.csv` | exported summaries from verify |
| `status.json` | live heartbeat + phase/counts (the "is it alive" check) |
| `ky_court-WIP-resume-*.tar.gz` | (MyDrive root) resume tarball used to rehydrate a fresh runtime |
The store root is `MyDrive/ky_court-WIP` (Colab) or `<WORKDIR>/ky_court-WIP` (local).
## First run
1. If Drive is empty (no `ky_court-WIP`), upload `ky_court-WIP-resume-YYYY-MM-DD.tar.gz`
to `MyDrive/`. Stage **restore** will extract it.
2. Open `ky_court_pipeline.ipynb` in Colab.
3. Edit the first code cell (`CFG`) if needed (budget, phases — see Config knobs).
4. **Runtime > Run all**. A session mounts Drive, opens the DB (pulling it from
the store if absent), heals stale state, then runs the enabled phases.
Expected session timeline (typical):
- setup: ~1 min (Drive mount, dirs, recover)
- discover: 1030 min (74 shards, paged search, paced)
- backfill: ~20 min (hash `pdf_backup` → dedupe into `pdf_by_hash`)
- download: ~10 h per session ≈ 612k documents (budget-capped)
- extract: rides along between batches (thread-pooled PDF text extraction)
- verify: ~5 min (integrity check, inventory exports, status push)
## Resuming
Just re-run the notebook. `recover()` closes any stale `running` discovery runs,
drops leftover `.part` files, and each stage skips what's already done:
- backfill: guarded by `kv backfill_done`
- download: only `discovered`/`failed` docs with `attempts < MAX_ATTEMPTS`
- extract: only `downloaded` docs with no extracted text yet
Idempotent by design — safe to rerun as often as you like.
## What "done" looks like
Verify prints `PASS {checks}` and, when every queue is empty:
- notebook verify output includes `done: True`
- `status.json` on Drive contains `"done": true`
A session that merely hit its budget is **not** "done" — it stops early with
`status.json` showing the phase and remaining queues. That is normal mid-flight
state, not an error.
## Failure modes
- **Colab disconnect mid-run** → just re-run. `recover()` heals stale rows;
`.part` files are dropped; partial downloads retry from the queue.
- **Drive quota exceeded** → verify/checkpoint push fails; the run continues
locally in the session but the store lags. Check Drive quota, free space, re-run.
- **5xx / connection storms**`api_download` returns an error tuple and
`stage_download` backs off `min(60, 5*2^attempts)` seconds, retrying up to
`MAX_ATTEMPTS` before marking the doc `failed`.
- **Search shard hits the 10k ceiling**`api_search_pages` raises; the planner
sub-shards that seed (`YYYY-CA-N`) on the next run.
- **`integrity` check not "ok"** → verify prints `FAIL`; the DB is corrupted and
should be restored from the last resume tar before trusting anything.
## Config knobs (top code cell `CFG`)
| Key | Default | Meaning |
|---|---|---|
| `BUDGET_SECONDS` | 10 * 3600 | max wall-clock per session (env `KY_BUDGET`) |
| `SHUTDOWN_SECONDS` | 900 | stop stages this long before the deadline so the session can finish cleanly |
| `PACING_SEARCH` / `PACING_DL` | (0.3,0.7) / (0.3,0.5) | random sleep range between API calls (polite throttling) |
| `MAX_ATTEMPTS` | 4 | download retries before `failed` |
| `MAX_PDF_BYTES` | 200 MiB | size cap; oversized (HTTP 413) fails permanently, no retry/backoff |
| `MAX_EXTRACT_ATTEMPTS` | 3 | PDF-extraction retries before skip |
| `RETRY_HARD` | 0 (env `KY_RETRY_HARD`) | on resume, reset `failed` docs back to `discovered` |
| `PHASES` | discover,backfill,download,extract | comma-separated phases to run (env `KY_PHASES`) |
| `DRY_RUN` | 0 (env `KY_DRY`) | 1 = fully offline: discovery/download skip all network |
## Safety notes
- The pipeline **never deletes on Drive automatically**. `pdf_backup` is retained;
pre-restore move-aside only renames (`-pre-restore`), never deletes.
- Set `DRY_RUN=1` (`KY_DRY=1`) to exercise the whole flow offline with zero
network calls — the smoke script (`scripts/smoke_local.py`) does exactly this.
- Live API tests are gated behind `KY_LIVE=1` and share a ≤10-request budget;
keep them there so the ordinary test suite stays offline and fast.
## Local / tests
```bash
python3 -m venv .venv && .venv/bin/pip install -r <pinned deps>
.venv/bin/pytest tests -q # 18 offline tests (live ones skipped)
.venv/bin/python scripts/smoke_local.py # full pipeline over the real 98,724-row DB
.venv/bin/python notebook_builder/build.py # regenerate the notebook
```
+668
View File
@@ -0,0 +1,668 @@
**Tier 1 --- Must-Know Services**
=================================
These are the services I would expect most successful solo developers to know.
**Service** **Why it matters** **Worth learning?**
-------------------------- ------------------------------------ ---------------------
Vercel Frontend + serverless deployment ⭐⭐⭐⭐⭐
Neon Serverless PostgreSQL ⭐⭐⭐⭐⭐
Convex Backend-as-a-service with realtime ⭐⭐⭐⭐⭐
Upstash Redis + Queues + Rate limiting ⭐⭐⭐⭐⭐
Cloudflare Workers/R2/D1 Edge compute + storage ⭐⭐⭐⭐⭐
Clerk Authentication ⭐⭐⭐⭐⭐
Better Stack Logging + uptime ⭐⭐⭐⭐⭐
PostHog Product analytics ⭐⭐⭐⭐⭐
Sentry Error tracking ⭐⭐⭐⭐⭐
Resend Transactional email ⭐⭐⭐⭐⭐
Trigger.dev Background jobs ⭐⭐⭐⭐⭐
GitHub Actions CI/CD ⭐⭐⭐⭐⭐
**1. App Hosting & Deployment**
===============================
**Vercel**
----------
**What**
Deploy Next.js, React, Astro, Svelte, APIs, serverless functions.
**Why**
Still the easiest deployment experience.
**Free Tier**
Very generous Hobby tier for personal projects, including serverless functions, web analytics, image optimization, and Git integration.([[Vercel]{.underline}](https://vercel.com/docs/plans/hobby?utm_source=chatgpt.com))
**Best workflow**
GitHub → automatic deployments.
**Limitations**
Not ideal for heavy CPU workloads.
**Worth in 2026?**
Absolutely.
**Fly.io**
----------
**What**
Tiny VMs worldwide.
**Why**
Great when serverless isn\'t enough.
**Best workflow**
Background workers.
Persistent services.
Long-running APIs.
**Limitations**
More DevOps.
**Worth?**
Yes.
**Railway**
-----------
One of the simplest ways to deploy:
- PostgreSQL
- Redis
- Docker
- APIs
Very fast prototype platform.
**Coolify (self-host)**
-----------------------
Worth knowing if you later rent a VPS.
**2. Databases**
================
**Neon**
--------
**What**
Serverless PostgreSQL.
**Why**
Probably the best free SQL database today.
Free includes branching, autoscaling, and generous project limits.([[Neon]{.underline}](https://neon.com/pricing?utm_source=chatgpt.com))
Best workflow:
Backend\
+\
Prisma\
+\
Drizzle\
+\
Vercel
**Turso**
---------
SQLite at the edge.
Excellent for:
- personal tools
- edge apps
- AI agents
Much faster than people realize.
**Convex**
----------
Not just a database.
Entire backend.
Realtime.
Functions.
Authentication.
Reactive queries.
Worth learning because it replaces several services.
**MongoDB Atlas**
-----------------
Still useful.
Not as attractive as serverless SQL anymore.
**3. Vector Databases**
=======================
You already know:
- Pinecone
- Qdrant
Also learn:
**Weaviate Cloud**
------------------
Excellent hybrid search.
**Chroma Cloud**
----------------
Managed Chroma.
Great for RAG.
**Milvus (Zilliz Cloud)**
-------------------------
Good free tier.
More enterprise oriented.
**Turso + sqlite-vec**
----------------------
Surprisingly capable.
**4. File Storage**
===================
**Cloudflare R2**
-----------------
Probably the best overall.
No egress charges.
Excellent APIs.
**Cloudinary**
--------------
Excellent image transformation platform.
Free includes media management, transformations, CDN delivery, and monthly usage credits.([[Cloudinary]{.underline}](https://cloudinary.com/pricing?utm_source=chatgpt.com))
Best workflow:
Upload once
Automatically resize
Generate thumbnails
Convert formats
**Tigris Data**
---------------
One of the most underrated object storage providers.
Strong free tier.
No egress pricing has made it popular with solo builders. ([[Reddit]{.underline}](https://www.reddit.com/r/selfhosted/comments/1tcxb1b/services_with_actually_generous_free_tiers_for/?utm_source=chatgpt.com))
**Supabase Storage**
--------------------
Still excellent.
**5. Authentication**
=====================
**Clerk**
---------
Still my favorite.
Why?
- OAuth
- MFA
- Organizations
- User management
Almost zero backend code.
**Better Auth**
---------------
Open source.
Growing rapidly.
**Auth.js**
-----------
Excellent if using Next.js.
**WorkOS AuthKit**
------------------
Extremely generous.
Especially useful if you may eventually target enterprise customers.
**6. Analytics**
================
**PostHog**
-----------
Probably the best analytics platform.
Includes:
- feature flags
- experiments
- funnels
- session replay
Excellent free tier.
**Mixpanel**
------------
Still excellent.
Very mature.
**Umami**
---------
Privacy focused.
Simple.
**7. Monitoring / Logging**
===========================
**Better Stack**
----------------
Probably the best overall choice.
Includes:
- uptime
- incident alerts
- logs
**Grafana Cloud**
-----------------
Huge ecosystem.
Metrics
Logs
Tracing
Synthetic monitoring
Generous always-free observability tier with limited retention.([[Grafana Labs]{.underline}](https://grafana.com/pricing/?utm_source=chatgpt.com))
**Sentry**
----------
Still essential.
Error tracking.
Performance.
Replay.
**8. CI/CD**
============
**GitHub Actions**
------------------
Still king.
**Cloudflare Builds**
---------------------
Worth learning.
**CodeRabbit**
--------------
AI code review.
Huge productivity gain.
**9. Edge / Serverless**
========================
Besides Cloudflare:
**Deno Deploy**
---------------
Fantastic.
Simple.
Fast.
**Vercel Edge Functions**
-------------------------
Excellent.
**Netlify Edge**
----------------
Still relevant.
**10. AI APIs**
===============
These matter more than almost anything now.
**OpenAI**
----------
General reasoning.
**Anthropic**
-------------
Long-context reasoning.
Coding.
**Google Gemini API**
---------------------
Huge context.
Notebook workflows.
**Mistral**
-----------
Very affordable.
**Cohere**
----------
Retrieval.
Embeddings.
**Together AI**
---------------
One API
Hundreds of models.
**OpenRouter**
--------------
One endpoint
Many providers
Great for experimentation.
**Groq**
--------
Extremely fast inference.
Excellent free access for many workloads.
**Cerebras**
------------
Ultra-fast inference for supported models.
**Hugging Face Inference Providers**
------------------------------------
Gateway to many hosted OSS models without running them locally.
**11. Developer Productivity**
==============================
**Trigger.dev**
---------------
Background jobs.
Retries.
Scheduling.
One of the best services for replacing cron and queue infrastructure.
Free plan includes monthly credits, unlimited tasks, preview environments, and scheduling.([[Trigger]{.underline}](https://trigger.dev/pricing?utm_source=chatgpt.com))
**Inngest**
-----------
Alternative to Trigger.dev.
**Resend**
----------
Transactional email.
Fantastic developer experience.
**Novu**
--------
Notifications.
Email
SMS
Push
In-app
**Dub.co**
----------
Link shortening API.
Analytics.
**12. API Platforms**
=====================
**RapidAPI**
------------
Still useful.
**APILayer**
------------
Many utility APIs.
**Tavily**
----------
Search API built for AI agents.
**Firecrawl**
-------------
Website scraping.
Markdown extraction.
Excellent for AI workflows.
**Exa**
-------
Semantic search API.
**Hidden Gems**
===============
These deserve far more attention.
**Service** **Why**
-------------- -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Tinybird Real-time analytics APIs over ClickHouse with a production-grade free tier.([[Tinybird]{.underline}](https://tinybird-docs.vercel.app/docs/forward/pricing/shared-infrastructure?utm_source=chatgpt.com))
Tigris Object storage without egress fees
Trigger.dev Background jobs
Inngest Event-driven workflows
Convex Backend replacement
Better Stack Logging + uptime
Turso Edge SQLite
WorkOS Enterprise auth
Firecrawl AI web scraping
Exa AI-native search
**Free APIs Worth Bookmarking**
===============================
- OpenAI API
- Anthropic API
- Google Gemini API
- OpenRouter
- Together AI
- Groq
- Cerebras
- Tavily Search
- Exa Search
- Firecrawl
- Resend
- Cloudinary
- GitHub API
- Stripe API
- Discord API
- Slack API
- GitLab API
- Weather.gov (US)
- OpenStreetMap / Nominatim
- Open-Meteo
- ExchangeRate.host
**Best Free-Tier Stack (2026)**
===============================
For a solo developer with a weak laptop, I\'d recommend:
**Layer** **Choice**
----------------------- ------------------------------------------
Frontend Vercel
Backend Cloudflare Workers or Convex
SQL Database Neon
Vector DB Qdrant Cloud
Object Storage Cloudflare R2
Cache / Rate Limiting Upstash
Authentication Clerk
Email Resend
Background Jobs Trigger.dev
Analytics PostHog
Error Tracking Sentry
Logging / Uptime Better Stack
Observability Grafana Cloud
CI/CD GitHub Actions
AI Models OpenRouter + Gemini + Anthropic + OpenAI
Search Tavily + Exa
Web Scraping Firecrawl
**Nice-to-Have Services**
-------------------------
- Railway
- Fly.io
- Deno Deploy
- Netlify
- Turso
- Cloudinary
- Tinybird
- Mixpanel
- Novu
- Inngest
- WorkOS
- Dub.co
- Umami
- Coolify (for future self-hosting)
This stack minimizes local resource usage while covering hosting, databases, storage, authentication, AI, observability, and automation. It is also broadly aligned with what experienced solo founders report using successfully for low-cost production deployments in 2026. ([[Reddit]{.underline}](https://www.reddit.com/r/founder/comments/1uw4cxx/crossed_13k_this_month_and_heres_my_stack_mostly/?utm_source=chatgpt.com))
+675
View File
@@ -0,0 +1,675 @@
---
tags:
- research
- chatgpt
- services
---
**Tier 1 --- Must-Know Services**
=================================
These are the services I would expect most successful solo developers to know.
**Service** **Why it matters** **Worth learning?**
-------------------------- ------------------------------------ ---------------------
Vercel Frontend + serverless deployment ⭐⭐⭐⭐⭐
Neon Serverless PostgreSQL ⭐⭐⭐⭐⭐
Convex Backend-as-a-service with realtime ⭐⭐⭐⭐⭐
Upstash Redis + Queues + Rate limiting ⭐⭐⭐⭐⭐
Cloudflare Workers/R2/D1 Edge compute + storage ⭐⭐⭐⭐⭐
Clerk Authentication ⭐⭐⭐⭐⭐
Better Stack Logging + uptime ⭐⭐⭐⭐⭐
PostHog Product analytics ⭐⭐⭐⭐⭐
Sentry Error tracking ⭐⭐⭐⭐⭐
Resend Transactional email ⭐⭐⭐⭐⭐
Trigger.dev Background jobs ⭐⭐⭐⭐⭐
GitHub Actions CI/CD ⭐⭐⭐⭐⭐
**1. App Hosting & Deployment**
===============================
**Vercel**
----------
**What**
Deploy Next.js, React, Astro, Svelte, APIs, serverless functions.
**Why**
Still the easiest deployment experience.
**Free Tier**
Very generous Hobby tier for personal projects, including serverless functions, web analytics, image optimization, and Git integration.([[Vercel]{.underline}](https://vercel.com/docs/plans/hobby?utm_source=chatgpt.com))
**Best workflow**
GitHub → automatic deployments.
**Limitations**
Not ideal for heavy CPU workloads.
**Worth in 2026?**
Absolutely.
**Fly.io**
----------
**What**
Tiny VMs worldwide.
**Why**
Great when serverless isn\'t enough.
**Best workflow**
Background workers.
Persistent services.
Long-running APIs.
**Limitations**
More DevOps.
**Worth?**
Yes.
**Railway**
-----------
One of the simplest ways to deploy:
- PostgreSQL
- Redis
- Docker
- APIs
Very fast prototype platform.
**Coolify (self-host)**
-----------------------
Worth knowing if you later rent a VPS.
**2. Databases**
================
**Neon**
--------
**What**
Serverless PostgreSQL.
**Why**
Probably the best free SQL database today.
Free includes branching, autoscaling, and generous project limits.([[Neon]{.underline}](https://neon.com/pricing?utm_source=chatgpt.com))
Best workflow:
Backend\
+\
Prisma\
+\
Drizzle\
+\
Vercel
**Turso**
---------
SQLite at the edge.
Excellent for:
- personal tools
- edge apps
- AI agents
Much faster than people realize.
**Convex**
----------
Not just a database.
Entire backend.
Realtime.
Functions.
Authentication.
Reactive queries.
Worth learning because it replaces several services.
**MongoDB Atlas**
-----------------
Still useful.
Not as attractive as serverless SQL anymore.
**3. Vector Databases**
=======================
You already know:
- Pinecone
- Qdrant
Also learn:
**Weaviate Cloud**
------------------
Excellent hybrid search.
**Chroma Cloud**
----------------
Managed Chroma.
Great for RAG.
**Milvus (Zilliz Cloud)**
-------------------------
Good free tier.
More enterprise oriented.
**Turso + sqlite-vec**
----------------------
Surprisingly capable.
**4. File Storage**
===================
**Cloudflare R2**
-----------------
Probably the best overall.
No egress charges.
Excellent APIs.
**Cloudinary**
--------------
Excellent image transformation platform.
Free includes media management, transformations, CDN delivery, and monthly usage credits.([[Cloudinary]{.underline}](https://cloudinary.com/pricing?utm_source=chatgpt.com))
Best workflow:
Upload once
Automatically resize
Generate thumbnails
Convert formats
**Tigris Data**
---------------
One of the most underrated object storage providers.
Strong free tier.
No egress pricing has made it popular with solo builders. ([[Reddit]{.underline}](https://www.reddit.com/r/selfhosted/comments/1tcxb1b/services_with_actually_generous_free_tiers_for/?utm_source=chatgpt.com))
**Supabase Storage**
--------------------
Still excellent.
**5. Authentication**
=====================
**Clerk**
---------
Still my favorite.
Why?
- OAuth
- MFA
- Organizations
- User management
Almost zero backend code.
**Better Auth**
---------------
Open source.
Growing rapidly.
**Auth.js**
-----------
Excellent if using Next.js.
**WorkOS AuthKit**
------------------
Extremely generous.
Especially useful if you may eventually target enterprise customers.
**6. Analytics**
================
**PostHog**
-----------
Probably the best analytics platform.
Includes:
- feature flags
- experiments
- funnels
- session replay
Excellent free tier.
**Mixpanel**
------------
Still excellent.
Very mature.
**Umami**
---------
Privacy focused.
Simple.
**7. Monitoring / Logging**
===========================
**Better Stack**
----------------
Probably the best overall choice.
Includes:
- uptime
- incident alerts
- logs
**Grafana Cloud**
-----------------
Huge ecosystem.
Metrics
Logs
Tracing
Synthetic monitoring
Generous always-free observability tier with limited retention.([[Grafana Labs]{.underline}](https://grafana.com/pricing/?utm_source=chatgpt.com))
**Sentry**
----------
Still essential.
Error tracking.
Performance.
Replay.
**8. CI/CD**
============
**GitHub Actions**
------------------
Still king.
**Cloudflare Builds**
---------------------
Worth learning.
**CodeRabbit**
--------------
AI code review.
Huge productivity gain.
**9. Edge / Serverless**
========================
Besides Cloudflare:
**Deno Deploy**
---------------
Fantastic.
Simple.
Fast.
**Vercel Edge Functions**
-------------------------
Excellent.
**Netlify Edge**
----------------
Still relevant.
**10. AI APIs**
===============
These matter more than almost anything now.
**OpenAI**
----------
General reasoning.
**Anthropic**
-------------
Long-context reasoning.
Coding.
**Google Gemini API**
---------------------
Huge context.
Notebook workflows.
**Mistral**
-----------
Very affordable.
**Cohere**
----------
Retrieval.
Embeddings.
**Together AI**
---------------
One API
Hundreds of models.
**OpenRouter**
--------------
One endpoint
Many providers
Great for experimentation.
**Groq**
--------
Extremely fast inference.
Excellent free access for many workloads.
**Cerebras**
------------
Ultra-fast inference for supported models.
**Hugging Face Inference Providers**
------------------------------------
Gateway to many hosted OSS models without running them locally.
**11. Developer Productivity**
==============================
**Trigger.dev**
---------------
Background jobs.
Retries.
Scheduling.
One of the best services for replacing cron and queue infrastructure.
Free plan includes monthly credits, unlimited tasks, preview environments, and scheduling.([[Trigger]{.underline}](https://trigger.dev/pricing?utm_source=chatgpt.com))
**Inngest**
-----------
Alternative to Trigger.dev.
**Resend**
----------
Transactional email.
Fantastic developer experience.
**Novu**
--------
Notifications.
Email
SMS
Push
In-app
**Dub.co**
----------
Link shortening API.
Analytics.
**12. API Platforms**
=====================
**RapidAPI**
------------
Still useful.
**APILayer**
------------
Many utility APIs.
**Tavily**
----------
Search API built for AI agents.
**Firecrawl**
-------------
Website scraping.
Markdown extraction.
Excellent for AI workflows.
**Exa**
-------
Semantic search API.
**Hidden Gems**
===============
These deserve far more attention.
**Service** **Why**
-------------- -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Tinybird Real-time analytics APIs over ClickHouse with a production-grade free tier.([[Tinybird]{.underline}](https://tinybird-docs.vercel.app/docs/forward/pricing/shared-infrastructure?utm_source=chatgpt.com))
Tigris Object storage without egress fees
Trigger.dev Background jobs
Inngest Event-driven workflows
Convex Backend replacement
Better Stack Logging + uptime
Turso Edge SQLite
WorkOS Enterprise auth
Firecrawl AI web scraping
Exa AI-native search
**Free APIs Worth Bookmarking**
===============================
- OpenAI API
- Anthropic API
- Google Gemini API
- OpenRouter
- Together AI
- Groq
- Cerebras
- Tavily Search
- Exa Search
- Firecrawl
- Resend
- Cloudinary
- GitHub API
- Stripe API
- Discord API
- Slack API
- GitLab API
- Weather.gov (US)
- OpenStreetMap / Nominatim
- Open-Meteo
- ExchangeRate.host
**Best Free-Tier Stack (2026)**
===============================
For a solo developer with a weak laptop, I\'d recommend:
**Layer** **Choice**
----------------------- ------------------------------------------
Frontend Vercel
Backend Cloudflare Workers or Convex
SQL Database Neon
Vector DB Qdrant Cloud
Object Storage Cloudflare R2
Cache / Rate Limiting Upstash
Authentication Clerk
Email Resend
Background Jobs Trigger.dev
Analytics PostHog
Error Tracking Sentry
Logging / Uptime Better Stack
Observability Grafana Cloud
CI/CD GitHub Actions
AI Models OpenRouter + Gemini + Anthropic + OpenAI
Search Tavily + Exa
Web Scraping Firecrawl
**Nice-to-Have Services**
-------------------------
- Railway
- Fly.io
- Deno Deploy
- Netlify
- Turso
- Cloudinary
- Tinybird
- Mixpanel
- Novu
- Inngest
- WorkOS
- Dub.co
- Umami
- Coolify (for future self-hosting)
This stack minimizes local resource usage while covering hosting, databases, storage, authentication, AI, observability, and automation. It is also broadly aligned with what experienced solo founders report using successfully for low-cost production deployments in 2026. ([[Reddit]{.underline}](https://www.reddit.com/r/founder/comments/1uw4cxx/crossed_13k_this_month_and_heres_my_stack_mostly/?utm_source=chatgpt.com))
+34
View File
@@ -0,0 +1,34 @@
# \# google free tier
| Free Tier usage limits | |
| ----- | :---- |
| [Agent Engine](https://docs.cloud.google.com/agent-builder/agent-engine/overview) | vCPU \- First 180,000 vCPU-seconds (50 hours) per month RAM \- First 360,000 GiB-seconds (100 hours) per month Learn about [Agent Engine pricing](https://cloud.google.com/vertex-ai/pricing#vertex-ai-agent-engine). |
| [App Engine](https://docs.cloud.google.com/appengine/docs) | Free Tier benefits for App Engine are applicable only to usage within the Standard Environment: 28 hours per day of [F1 instances](https://docs.cloud.google.com/appengine/docs/standard#instance_classes). 9 hours per day of [B1 instances](https://docs.cloud.google.com/appengine/docs/standard#instance_classes). 1 GB of outbound data transfer per day. Learn about [App Engine pricing](https://cloud.google.com/appengine/pricing). |
| [Application Integration](https://docs.cloud.google.com/application-integration/docs) | Up to 400 [integration executions](https://docs.cloud.google.com/application-integration/docs/overview). Up to 20 GiB of data processed per month. First 2 connection nodes for Google services. Learn about [Application Integration pricing](https://cloud.google.com/application-integration/pricing). |
| [Artifact Registry](https://docs.cloud.google.com/artifact-registry/docs) | 0.5 GB of storage per month. Learn about [Artifact Registry pricing](https://cloud.google.com/artifact-registry/pricing). |
| [BigQuery](https://docs.cloud.google.com/bigquery/docs) | 1 TiB of querying per month. 10 GiB of storage per month. Learn about [BigQuery pricing](https://cloud.google.com/bigquery/pricing). |
| [Cloud Build](https://docs.cloud.google.com/build/docs) | 2,500 build-minutes per month for [machine type](https://docs.cloud.google.com/compute/docs/machine-resource) `e2-standard-2`. Learn about [Cloud Build pricing](https://cloud.google.com/build/pricing). |
| [Cloud Deploy](https://docs.cloud.google.com/build/docs) | First active delivery pipeline per billing account. Learn about [Cloud Deploy pricing](https://cloud.google.com/deploy/pricing). |
| [Cloud Key Management Service](https://docs.cloud.google.com/kms/docs/key-management-service) | 100 free active key versions per month. 10,000 free cryptographic operations per month. The monthly free usage only applies to key versions created using Cloud KMS Autokey. Learn about [Cloud Key Management Service pricing](https://cloud.google.com/kms/pricing). |
| [Cloud Natural Language API](https://docs.cloud.google.com/natural-language/docs) | 5,000 units per month. Learn about [Cloud Natural Language API pricing](https://cloud.google.com/natural-language/pricing). |
| [Cloud Run](https://docs.cloud.google.com/run/docs) | Limits for request-based billing: 2 million requests per month. 360,000 GB-seconds of memory, 180,000 vCPU-seconds of compute time. 1 GB of outbound data transfer from North America per month. To learn about the Free Tier usage limits for other billing configurations, see [Cloud Run pricing](https://cloud.google.com/run/pricing). |
| [Cloud Run functions](https://docs.cloud.google.com/functions/docs) | 2 million invocations per month (includes both background and HTTP invocations). 400,000 GB-seconds, 200,000 GHz-seconds of compute time. 5 GB of outbound data transfer per month. Learn about [Cloud Run functions (1st gen) pricing](https://cloud.google.com/functions/pricing-1stgen). |
| [Cloud Shell](https://docs.cloud.google.com/shell/docs) | Free access to Cloud Shell, including 5 GB of persistent disk storage. Learn about [Cloud Shell pricing](https://cloud.google.com/shell/pricing). |
| [Cloud Source Repositories](https://docs.cloud.google.com/source-repositories/docs) | Up to 5 users per billing account. 50 GB of storage per month. 50 GB of outbound data transfer per month. Learn about [Cloud Source Repositories pricing](https://cloud.google.com/source-repositories/pricing). |
| [Cloud Storage](https://docs.cloud.google.com/storage/docs) | 5 GB-months of regional storage (US regions only) per month, which corresponds to the storage of 5 GB of data for a period of 1 month. 5,000 Class A Operations per month. 50,000 Class B Operations per month. 100 GB of outbound data transfer from North America to all region destinations (excluding China and Australia) per month. The Free Tier benefits for Cloud Storage apply only to usage in the `us-east1`, `us-west1`, and `us-central1` [regions](https://docs.cloud.google.com/storage/docs/locations). Usage calculations are combined across these regions. Learn about [Cloud Storage pricing](https://cloud.google.com/storage/pricing). |
| [Cloud Vision](https://docs.cloud.google.com/vision/docs) | 1,000 units per month. Learn about [Cloud Vision pricing](https://cloud.google.com/vision/pricing). |
| [Compute Engine](https://docs.cloud.google.com/compute/docs) | 1 non-preemptible `e2-micro` VM instance per month in one of the following US regions: Oregon: `us-west1`. Iowa: `us-central1`. South Carolina: `us-east1`. 30 GB-months standard persistent disk. 1 GB of outbound data transfer from North America to all region destinations (excluding China and Australia) per month. Your Free Tier `e2-micro` instance limit is by time, not by instance. Each month, eligible use of all of your `e2-micro` instances is free until you have used a number of hours equal to the total hours in the current month. Usage calculations are combined across the supported [regions](https://docs.cloud.google.com/compute/docs/regions-zones). GPUs and TPUs are not included in the Free Tier offer. You are always charged for GPUs and TPUs that you add to VM instances. Learn about [Compute Engine pricing](https://docs.cloud.google.com/compute/pricing). |
| [Datastream](https://docs.cloud.google.com/datastream/docs) | Free Tier benefits for Datastream apply exclusively to streams originating from AlloyDB for PostgreSQL or Spanner and destined for BigQuery: 100 GiB of change data capture (CDC) per month, per billing account. Learn about [Datastream pricing](https://cloud.google.com/datastream/pricing). |
| [Firestore](https://docs.cloud.google.com/firestore/docs) | 1 GiB of storage per project. 50,000 reads, 20,000 writes, and 20,000 deletes per day per project. 10 GiB per month of outbound data transfer. Learn about [Firestore pricing](https://cloud.google.com/firestore/pricing). |
| [Google Cloud Observability](https://docs.cloud.google.com/stackdriver/docs) (Logging and Monitoring) | First 50 GiB of log data per project per month. Logs retained for the [default retention period](https://docs.cloud.google.com/logging/quotas#logs_retention_periods) don't incur a retention cost. All non-chargeable Google Cloud metrics. Cloud Monitoring API Read calls: First 1 million time series returned per billing account. Learn about [Google Cloud Observability pricing](https://cloud.google.com/products/observability/pricing). |
| [Google Kubernetes Engine (GKE)](https://docs.cloud.google.com/kubernetes-engine/docs) | One free Autopilot or zonal Standard cluster per month. The Free Tier credit applies to the cluster charge only. This credit doesn't apply to compute, networking, or other resources. Learn about [Google Kubernetes Engine pricing](https://cloud.google.com/kubernetes-engine/pricing). |
| [Pub/Sub](https://docs.cloud.google.com/pubsub/docs) | 10 GiB of messages per month. Learn about [Pub/Sub pricing](https://cloud.google.com/pubsub/pricing). |
| [reCAPTCHA](https://docs.cloud.google.com/recaptcha-enterprise/docs) | 10,000 assessments per month. Learn about [reCAPTCHA pricing](https://cloud.google.com/recaptcha-enterprise/pricing). |
| [Secret Manager](https://docs.cloud.google.com/secret-manager/docs) | 6 active secret versions per month. 10,000 access operations per month. 3 secret rotation notifications per month. Learn about [Secret Manager pricing.](https://cloud.google.com/secret-manager/pricing) |
| [Security Command Center](https://docs.cloud.google.com/security-command-center/docs) | Standard tier: Baseline security with misconfiguration and vulnerability scanning, data security, and compliance. Learn about [Security Command Center pricing](https://cloud.google.com/security-command-center/pricing) and [features in each tier](https://docs.cloud.google.com/security-command-center/docs/service-tiers#scc_tiers_comparison). |
| [Speech-to-Text](https://docs.cloud.google.com/speech/docs) | 60 minutes per minute per month per account for the Speech-to-Text V1 API. 60 minutes per minute per month per account for SKU IDs `6649-62EF-CB8F` and `7247-19E1-FB4D`. Learn about [Speech-to-Text pricing](https://cloud.google.com/speech/pricing). |
| [Video Intelligence API](https://docs.cloud.google.com/video-intelligence/docs) | 1,000 units per month. Learn about [Video Intelligence API pricing](https://cloud.google.com/video-intelligence/pricing). |
| [Web Risk](https://docs.cloud.google.com/web-risk/docs) | 100,000 `uris.search` calls per month. This Free Tier usage is also available when you have a negotiated pricing contract for Web Risk. Learn about [Web Risk pricing](https://cloud.google.com/web-risk/pricing). |
| [Workflows](https://docs.cloud.google.com/workflows/docs) | 5,000 internal steps per month. 2,000 external HTTP calls per month. Learn more [Workflows pricing](https://cloud.google.com/workflows/pricing). |
| [Workload Manager](https://docs.cloud.google.com/workload-manager/docs) | 5,000 resource evaluations per month. Learn more [Workload Manager pricing](https://cloud.google.com/workload-manager/pricing) |