Blueprint · domain

JobCache App and Core seam

The product edge owns opaque session state; the shared Core owns public role and ad truth.

Cell 2.2 · product · runtime · privacy · data
  • UI · API · MCP to JobCache App API: public contract
  • JobCache App API to D1 session state: session-local
  • JobCache App API to Authenticated Core seam: stateless or reduced
public contractsession-localstateless or reduced
perspectivemixed

UI · API · MCP

Distinct human and agent perspectives over one App contract.

JobCache App
serviceas-built

JobCache App API

Stateless reads or exactly one opaque session per capability request.

JobCache App
storeas-built

D1 session state

Views, grants, immutable snapshots, reductions, and erasure outbox.

JobCache App D1
boundaryas-built

Authenticated Core seam

Product-local session identifiers stop here.

JobCache App and Core
product interactionverified result / pending statehealth and named controlssearch and immutable delivery
  1. 01 · perspective · mixed UI · API · MCP

    Distinct human and agent perspectives over one App contract.

    JobCache App
  2. 02 · service · as-built JobCache App API

    Stateless reads or exactly one opaque session per capability request.

    JobCache App
  3. 03 · store · as-built D1 session state

    Views, grants, immutable snapshots, reductions, and erasure outbox.

    JobCache App D1
  4. 04 · boundary · as-built Authenticated Core seam

    Product-local session identifiers stop here.

    JobCache App and Core

Flows

  • UI · API · MCP JobCache App API public contract
  • JobCache App API D1 session state session-local
  • JobCache App API Authenticated Core seam stateless or reduced
as built target / open Boundary arrows open the neighbouring module; ports stay machine-only

JobCache

Product outcome

JobCache lets people and organizations interrogate a current, evidence-backed model of the job market. Its value comes from roles and their supporting ads over time, not from a pile of unrelated URLs.

Runtime boundary

  • JobCache App owns sessions, saved views, immutable snapshots, sharing, and product UX.
  • JobCache Core owns public roles, ads, evidence, facts, embeddings, and shared search.
  • Internals is the blueprint label for Core and its processing neighborhood, not another product or package.

Invariants

  • Session identity remains in JobCache App.
  • Stateless search does not create a session.
  • Product-local preferences do not mutate canonical corpus evidence.
  • A role-level result remains traceable to its ads and observations.
  • Absence, unknown, disagreement, and explicit empty values remain distinct.

Current state

The App API, MCP, UI shell, privacy seam, saved-view and snapshot primitives, Core facade, and CrateDB corpus are live. The complete search experience, recommendation mode, map, commercial workflows, and some aggregate reducers remain target work.

Completion evidence

  • Role search and evidence journeys across UI, API, and MCP.
  • Session privacy and erasure journeys.
  • Corpus lineage from role facts to ads and raw observations.
  • Honest freshness and uncertainty presentation.
Source: architecture/modules/jobcache.md