Skip to content

Phase 6: Second Town Onboarding #28

@kpeatt

Description

@kpeatt

Overview

Onboard Esquimalt (Legistar) and RDOS (static HTML) as the first additional municipalities to validate the multi-town architecture end-to-end.

Tasks

  • Configure Esquimalt municipality in database with OCD IDs and Legistar source_config
  • Run Legistar scraper to populate data (structured ingestion path)
  • Verify web app renders Esquimalt data correctly, including document viewer
  • Verify OCD API returns correct Esquimalt data
  • Configure RDOS municipality in database with static HTML source_config
  • Run static HTML scraper for RDOS
  • End-to-end validation across all three municipalities, both custom and OCD APIs
  • Validate cross-municipality RAG queries
  • Verify municipality index page displays all three towns with stats

Source Configurations

Esquimalt (Legistar):

{
  "type": "legistar",
  "client_id": "esquimalt",
  "timezone": "America/Vancouver",
  "video_source": {"type": "legistar_inline"}
}

RDOS (Static HTML):

{
  "type": "custom",
  "scraper_class": "RDOSScraper",
  "base_url": "https://www.rdos.bc.ca",
  "video_source": {"type": "youtube", "channel": "RDOS"}
}

Validation Checklist

  • Municipality index page shows all 3 towns with meeting counts
  • Each town's meetings page loads with correct data
  • Document viewer works for each source type
  • RAG search returns results scoped to the correct municipality
  • OCD API returns valid OCD JSON for each town
  • Custom API pagination, filtering, and search all work per municipality
  • Speaker identification works for Esquimalt (new fingerprint pool)
  • Custom vocabulary is municipality-scoped

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions