Appeal Watch operating picture

Launch command dashboard.

A brutally honest view of what works, what is proven, what is blocked, and what must happen before Appeal Watch can be called a fully launched automated product.

Private launch 68%

Site, intake, operator console, packet flow, and source pipeline exist.

Automation proof 59%

Blocked county jobs can now produce capture-packet artifacts and sweep completed packet returns into guarded draft delivery.

Revenue readiness 18%

Payments intentionally parked until source automation is proven.

Trust posture 74%

Privacy, disclaimers, refund stance, and no-guarantee language are in place.

Standing update

Latest pass: address-analysis gaps now auto-create capture queues.

This panel is now the standing source of truth. Every build pass must update the latest pass, the next unlock, and the launch-readiness posture before code is committed.

Last updated
May 21, 2026
Latest QA
`scripts/run-address-analysis-capture-queue.ps1` now converts address-analysis results that still need public county facts into launch-grade capture targets, rejects private identifiers, skips already analysis-ready rows, and can build the exact subject-plus-comps capture packet.
Current unlock
The next unlock is running `scripts/run-address-analysis-capture-queue.ps1 -AddressCsvPath <addresses.csv> -RunHostedAnalysis -BuildCapturePacket`, filling only the queued public-facts CSVs with real non-sensitive county subject/comparable rows, then running `scripts/run-launch-grade-public-facts-return-conveyor.ps1 -RunAddressProofBatch -RunLiveAddressProof -BuildLaunchProofPack` without `-AllowQaFixtures`.
New tool
New queue artifact `appeal_watch_address_analysis_capture_queue_v1` records which address-only leads need public facts before payment. Target artifact `appeal_watch_launch_grade_address_capture_targets_v1` feeds `scripts/build-launch-grade-public-facts-capture-packet.ps1` and `appeal_watch_launch_grade_public_facts_capture_packet_v1`; completed CSVs still pass through `scripts/build-launch-grade-runner-result-from-public-facts.ps1`, `scripts/run-launch-grade-address-proof-conveyor.ps1`, `scripts/run-launch-grade-address-proof-batch.ps1`, `appeal_watch_launch_grade_public_facts_return_conveyor_v1`, `appeal_watch_launch_grade_address_proof_batch_v1`, `appeal_watch_launch_proof_blocker_diagnostics_v1`, and launch proof pack review.

Automation proof ledger

Guardrail tokens kept visible for preflight.

This compact ledger keeps the launch dashboard tied to the real automation surfaces QA expects, while the standing update stays readable.

Live worker and launch gate
Browser Worker launch sequence through `scripts/deploy-browser-worker.ps1`, `scripts/run-browser-worker-launch-sequence.ps1`, `CLOUDFLARE_API_TOKEN`, `validate-cloudflare-token.ps1`, Cloudflare token validation, `SOURCE_BROWSER_WORKER`, `worker runtime`, `automation status rollup`, `/api/automation-status`, `/api/launch-gate`, `appeal_watch_browser_worker_launch_sequence_v1`, `appeal_watch_live_automation_smoke_v1`, `test-live-automation.ps1`, `test-live-address-analysis.ps1`, `appeal_watch_live_address_analysis_proof_v1`, `appeal_watch_launch_gate_v1`, `build-launch-proof-pack.ps1`, `appeal_watch_launch_proof_pack_v1`, `build-launch-proof-gap-queue.ps1`, `appeal_watch_launch_proof_gap_queue_v1`, `invoke-launch-proof-gap-queue.ps1`, `appeal_watch_launch_proof_gap_execution_v1`, `run-launch-proof-gap-repair-conveyor.ps1`, `appeal_watch_launch_proof_gap_repair_conveyor_v1`, and required packet-return launch proof for `appeal_watch_public_facts_capture_packet_return_v1`.
County proof surfaces
`appeal_watch_county_automation_matrix_v1`, `appeal_watch_county_automation_loop_v1`, `appeal_watch_source_monitor_targets_v1`, `appeal_watch_source_monitor_target_seed_v1`, `appeal_watch_scheduled_source_monitor_v1`, dry-run scheduled monitor, `appeal_watch_scheduled_county_validation_v1`, `appeal_watch_public_target_template_import_v1`, `appeal_watch_public_source_proof_capture_v1`, `appeal_watch_public_parcel_proof_conveyor_v1`, `appeal_watch_live_public_parcel_proof_suite_v1`, `appeal_watch_live_parcel_promotion_handoff_v1`, `appeal_watch_live_parcel_promotion_unlock_v1`, `appeal_watch_live_parcel_automation_conveyor_v1`, and `appeal_watch_live_parcel_automation_batch_v1`.
Alternate-source automation
`appeal_watch_hosted_alternate_source_delivery_conveyor_v1`, `appeal_watch_alternate_source_automation_conveyor_v1`, `appeal_watch_alternate_source_packet_readiness_verification_v1`, `appeal_watch_alternate_source_ready_delivery_proof_v1`, `appeal_watch_alternate_source_result_promotion_unlock_v1`, `appeal_watch_alternate_source_live_delivery_conveyor_v1`, `appeal_watch_alternate_source_live_delivery_batch_v1`, auto-save to `appeal_watch_public_facts_index_save_v1`, `.github/workflows/public-facts-csv-template.yml`, `appeal_watch_public_facts_csv_template_workflow_skip_v1`, `appeal_watch_alternate_source_public_facts_csv_template_v1`, `.github/workflows/public-facts-capture-packet.yml`, `appeal_watch_public_facts_capture_packet_workflow_skip_v1`, `appeal_watch_public_facts_capture_packet_v1`, `public-facts-work-order.csv`, `CAPTURE_INSTRUCTIONS.md`, `.github/workflows/public-facts-capture-packet-return.yml`, `appeal_watch_public_facts_capture_packet_return_workflow_skip_v1`, `appeal_watch_public_facts_capture_packet_return_v1`, `appeal_watch_alternate_source_public_facts_csv_import_v1`, and `appeal_watch_alternate_source_public_facts_csv_batch_v1`.
Customer and outcome proof
`proof ledger`, automation proof console, Direct Parcel Proof, `Operator Status`, `/api/operator-status`, `appeal_watch_operator_work_queue_v1`, `/api/public-facts-index`, `appeal_watch_public_facts_index_record_v1`, `/api/address-analysis`, `appeal_watch_address_analysis_v1`, `appeal_watch_case_readiness_v1`, `test-live-evidence-storage.ps1`, `appeal_watch_live_evidence_storage_smoke_v1`, `/api/customer-evidence-file`, `APPEALWATCH_EVIDENCE_R2`, Outcome Ledger Console, `/api/outcomes`, and `appeal_watch_outcome_followup_v1`.

Final launch gate

Actual full launch requires live county proof, not prettier pages.

The product becomes launchable when a customer can enter an address, Appeal Watch can pull or honestly reject county source data, generate a verified packet, deliver it in a case room, and track the outcome.

Site + brandBuilt and deployed through GitHub/Cloudflare Pages.
Lead intakeCloudflare KV capture and operator console working.
County automationAll 159 Georgia counties route through payment-guarded source mapping, browser-flow contracts, validation queue status, public discovery-save-validation, and promotion review bundling; real county proof still required.
Case roomToken-gated status delivery works; full customer account UX still pending.
Paid launchBlocked on live source proof by design.

Priority board

What matters, in order.

01

Prove Columbia County automation live

Browser worker is deployed and bound; live Columbia qPublic proof now proves the portal blocks automation with bot verification, so the next lane is alternate-source acquisition.

Active build 62% Browser worker, parser, health probe, corrected direct parcel path, public source proof capture runner, public parcel proof conveyor, live proof suite, promotion handoff/unlock, automation conveyor, packet-readiness verifier, batch runner, official source-access blocker classification, alternate-source job queue, runner-result ingest, scheduled public facts CSV template export, public facts capture packet workflow, public facts capture packet return conveyor, public facts CSV import, scheduled public facts CSV batch conveyor, address-analysis capture queue, launch-grade public facts capture packet, launch-grade public facts return conveyor, launch-grade public facts runner-result bridge, launch-grade address proof conveyor, launch-grade address proof batch, alternate-source promotion review, alternate-source packet job seeding, alternate-source facts-to-packet-job proof application, packet-unlock chain, ready packet draft delivery proof, sanitized case-room load, and launch proof gate exist.
Next: run `scripts/run-address-analysis-capture-queue.ps1 -AddressCsvPath <addresses.csv> -RunHostedAnalysis -BuildCapturePacket`, fill queued subject plus comparable rows, place completed files in `ops\launch-grade-public-facts-drop`, then run `scripts/run-launch-grade-public-facts-return-conveyor.ps1 -RunAddressProofBatch -RunLiveAddressProof -BuildLaunchProofPack`.
02

Make address-first intake useful

Return candidate strength, source availability, payment guard, and exactly what customer evidence is still needed.

Functional, proof-fed next 86% Decision gate, public fit check, `/api/public-facts-index`, `/api/address-analysis`, comp scoring, source-blocked honesty, automatic source jobs, source-job runner, public request-page address-analysis rendering, hosted address-only verdict proof, runner-result proof input, address-analysis capture queue, launch-grade public facts capture packet, launch-grade public facts return conveyor, launch-grade public facts runner-result bridge, launch-grade address proof conveyor, launch-grade address proof batch, live runner-result candidate verdict proof, and launch-grade comp verification are wired.
Next: feed real address rows through `scripts/run-address-analysis-capture-queue.ps1`, generate capture packets only for addresses that still need public county facts, fill real non-sensitive subject/comps rows, and run the return conveyor without fixture mode.
03

Turn source data into packet output

Promote county facts, tax fields, exemptions, comps, and source URLs into the packet without manual retyping.

Functional 79% Source facts/comps generate review-only packet drafts only after source review is ready; ready jobs queue-save customer draft deliveries, leave active packet work, and stay visible in the draft delivery ledger.
Next: feed it with live browser-worker facts, approve the matching county promotion with packet unlock enabled, then review the draft delivery ledger and case-room handoff.
04

Build customer-facing case room

Account login, evidence uploads, case status, deliverables, and secure ownership.

Private delivery ready 72% Token-gated status, evidence notes/files, operator file review, outcome reports, and packet draft summary delivery exist; account UX still pending.
Next: bind production R2 storage, verify operator downloads on Cloudflare, and build the authenticated account dashboard.
05

Expand county automation deliberately

All 159 Georgia counties now route through the automation matrix, browser-flow contract, and validation queue; promote counties from source-mapping queue only after proof patterns repeat.

Mapped 56% All 159 Georgia counties have payment-guarded source-routing profiles, candidate browser flows, validation queue status, and a discovery-to-reviewed-decision conveyor; live proof is still county-by-county.
Next: run `scripts/run-county-automation-loop.ps1 -AutoCompleteTargetsFromDiscovery -BuildLaunchProofPack` after live discovery; provide `-CompletedTargetTemplatePath` only when discovery cannot safely auto-complete targets.
06

Outcome tracking

Track original value, requested value, final value, customer result, savings, refunds, and proof standards.

Scaffolded 68% Outcome exports, hosted import, live Cloudflare KV import, private outcome console, operator outcome verification workQueue, verification action endpoint, resolved-queue handling, and follow-up draft generation exist.
Next: run county/tax verification for customer-reported outcomes before any ROI or marketing claim.
07

Operator console polish

Run automation, see blockers, export case JSON, generate briefs, stage facts, and manage the queue.

Usable 64% Lead console works, but needs a calmer production dashboard.
Next: visual case queue and one-click source proof actions.
08

Public site trust and conversion

Explain what we automate, what is assisted, what is not guaranteed, and why this beats a plain LLM chat.

Strong 78% Core trust, FAQ, coverage, outcomes, and guide pages exist.
Next: add proof screenshots once real Columbia run exists.
09

Legal, trust, and privacy hardening

No legal advice claims, no guaranteed savings, careful data handling, private addresses, and refund posture.

Strong 74% Privacy QA, disclaimer, terms, trust center, and anonymized demo data are in place.
Next: attorney/CPA review before paid public launch.
10

Payment after automation proof

Payments stay parked until the product can pull source data and generate useful verified packets.

Parked 18% Intentionally blocked. This is discipline, not a missing feature.
Next: enable only after Columbia proof and private launch checklist pass.

Competitor intelligence

What we adapt, then make harder to copy.

We do not copy assets, claims, or protected work. We study the best conversion and workflow patterns, then build a more useful version around verified county automation.

AppealPilot / LocalPropertyTaxAppeals

Address-first Georgia savings check

Strongest direct threat. It promises public-record lookup, comps, DIY kit, full-service representation, no-upfront option, and Georgia-only focus.

Our counter

Show the source-run proof chain, staged facts, payment guard, and packet provenance so users see exactly what was pulled and what still needs evidence.

Ownwell

Trust-heavy managed appeals

Big credibility stack: savings estimate, pay-only-if-saved framing, local tax experts, reviews, markets, exemptions, and broader bill-reduction services.

Our counter

Start narrower and more transparent: county-by-county automation status, source screenshots/artifacts, condition evidence, veteran/homestead explainers, and outcome ledger.

TurboTenant

Workflow OS, not a tax competitor

The lesson is product depth: calculators, AI tools, lead management, messaging, document storage, condition reports, e-sign, reminders, and one dashboard.

Our counter

Make Appeal Watch feel like a case command center instead of a form: intake, evidence upload, automation run, packet delivery, hearing prep, and result tracking.

SavingsAgent.ai

AI-first savings positioning

The risk is a simple promise that feels easier than a county-heavy workflow. Users will expect instant assessment and low effort.

Our counter

Use AI as the assistant, but lead with verifiable public-record pulls and a candid fit verdict before payment.

PropertyTaxHero

Simple low-cost packet angle

The pricing signal is dangerous: buyers may compare us to a cheap appeal-packet generator unless our automation is visibly better.

Our counter

Compete on evidence depth, verified source URLs, condition-damage packaging, and county-specific filing guidance.

SmartAppealTool

Self-service appeal tool lane

The likely buyer expectation is speed: enter data, get appeal output. That pressures our product to minimize manual work.

Our counter

Make the free fit gate brutally honest and reserve paid work for cases where automation plus customer evidence can produce a stronger packet.

10x product betAddress in, source proof out, payment only after candid fit classification.
Hard-to-copy proofCounty source-worker artifacts, source URLs, staged fact audit trail, and packet provenance.
Needed nextLive Columbia proof artifact and then repeatable county expansion playbook.

Current verdict

We have a credible private-launch build path. We do not yet have a full launch.

The single biggest unlock is now feeding real public county facts into the alternate-source lane at scale. Columbia is wired and tested, qPublic/GovernmentWindow block the Cloudflare server-side lane, address-analysis gaps now auto-create launch-grade capture queues, completed packet CSVs feed the public facts return conveyor and scheduled batch lane, captured alternate-source proof can enter the same county promotion ledger as normal validation proof, and the reviewed chain can invoke packet-source unlock and draft delivery. The launch proof gap queue, executor, and repair conveyor now convert any missing or failed proof artifact into a safe local execution handoff, a clearly skipped workflow/deploy blocker, and a before/after launch-readiness delta.