Brushworks
Brief us

Political strategy and data, at human resolution

Elections are decided by people, not demographics. We work at that scale.

Brushworks is a political intelligence firm. We model how individual voters behave, determine what would move each of them, and put persuasion into the field with a standard of proof — across the United States and in the harder theaters abroad.

  1. 1. The file
  2. 2. Signals resolve
  3. 3. Deciders surface
  4. 4. A program in field
Plate IFour thousand people as the voter file sees them: identical rows, nothing to tell one from another.
500+contests, from presidential to school board, over a decade
96%won, across every level and both parties
$5B+approved in more than a hundred bond and levy measures
270M+American adults and households, resolved and behaviorally scored
12countries of institutional and diaspora work
7offices on a single 24-hour desk
The premise

Most campaigns still buy the electorate the way television networks sold it in 1985: by age, sex, county and party file. Those labels are easy to purchase and easy to defend in a budget meeting. They are also the reason two neighbors with identical demographics receive identical mail and vote in opposite directions.

People do not decide as categories. They decide as individuals, under pressure, with whatever they happened to pay attention to that month. That attention leaves traces — what someone reads, buys, searches, cancels, renews, drives past on the way to work. Read carefully and modeled properly, those traces describe a person far better than the file does: what they are anxious about, what they take pride in, whom they trust, and what they have quietly stopped believing.

Brushworks was built to work at that resolution. We do the research, the modeling, the message architecture and the delivery ourselves, through our own media seats, and we measure every program against a held-out control — so that what we report at the end is what actually happened.

What we doThe method, in five movements

Terrain, audience, message, delivery, proof.

The order matters. Nothing is built before the race is mapped; nothing is written before the deciders are named; nothing is reported that was not measured against a control.

Capabilities in full

  1. I

    Terrain

    Where the race will actually be decided: the precincts, the margin, the money coming against you, and the clock.

  2. II

    Audience

    Deciders identified by what they do rather than by label, and grouped by what would move them.

  3. III

    Message

    A narrative track for each group, built from the anxieties and hopes it already holds and sequenced for the persuasion arc.

  4. IV

    Delivery

    Three registers: precision paid media, organic advocacy, and the ambient campaign. All of it disclosed, all of it through our own seats.

  5. V

    Proof

    Randomized holdouts, daily measurement, and a publish gate no model passes without beating the baseline.

The human layerExhibit 1

One person, seventeen thousand signals.

Our view of the American electorate is assembled from roughly sixty-two billion observed behaviors, resolved to more than 270 million adults and their households, organized into a ten-thousand-topic dictionary, and scored by models trained on real outcomes rather than proxies.

No single signal is decisive. The pattern is. A subscription cancelled, a commute lengthened, a local news habit, a sudden interest in prescription prices — each is noise on its own and evidence together. The graph is rebuilt monthly, digital activity refreshed daily, and none of it touches ethnicity, religion or ideology, which we do not model.

Inside the human layer

Exhibit 1The active signal registry, drawn to scale by domain — roughly 17,000 signals, each line a family of observed behaviors. Ochre marks signals that entered a scored model this month. Grouping illustrative.
From the behavioral lexiconExhibit 2, composites, not individuals

A campaign speaks to millions. It persuades one at a time.

Every other vendor in politics starts from the voter file, because that is what there is to buy: age band, sex, party, precinct, vote history. It is enough to send mail. It is not enough to know what to say. We describe deciders as phenotypes — composite people assembled from thousands of behavioral neighbors — so that a strategist and a copywriter can hold an entire segment in mind as a single person, and so that the person receives a line that was written for her.

Exhibit 2The same voter, two ways. Left, everything the voter file knows about the Night Nurse. Right, what the human layer knows — signals color-coded by domain, six scores, and the track she was assigned. Composite; the file's fields are typical, the signals illustrative.
  • Behavior, not labels.

    Cohorts are built from what people do — sixty-two billion observed events — never from ethnicity, religion or party as a proxy for what they will do.

    The category default: age band, sex, party, precinct

  • Named, and written for.

    Each cohort is a person with a name, a narrative track and a register mix. Copy is written to her; the studio produces the variants; every one carries a disclosure.

    The category default: one message, three demographic cuts

  • Measured against a control.

    Every track is judged against a randomized holdout. A line that moves the Steward and suppresses the Pharmacist is caught in week two, not guessed at in November.

    The category default: a post-election poll

The Steward

n., first-ring suburb

Homeowner, twenty years at the same employer, runs the parish fish fry. Believes the deal has been broken by people who never had to keep one.

Reads as
Order, obligation, the fair deal
Moves on
Cost-of-living arithmetic told with respect, not alarm

"The people who wrote the last budget never had to keep one."

The Splitter

n., late-deciding

Has voted for both parties in the last four cycles and resents being told what she is. Decides in the final ten days, mostly on character.

Reads as
Independence
Moves on
The single credible detail, not the platform

"Two votes, two dates, on the record. Judge them yourself."

The Night Nurse

n., shift worker

Mid-career, watches the news on a phone between rounds, has no patience for anyone who has not done a hard job under pressure.

Reads as
Competence
Moves on
Proof that someone has carried weight and kept their head

"She ran a trauma floor for eleven years. You'll hear she has never run anything."

The Renter

n., downtown, under 35

Three employers on the résumé, a lease that resets every twelve months, and a commute that has quietly become the central fact of life.

Reads as
Momentum
Moves on
A candidate who names the rent and the commute in the first sentence

"Your lease resets in March. Your rent didn't ask permission."

The Pharmacist

n., exurban professional

Meticulous about sources, allergic to slogans, and will read the footnote if there is one. Trusts the messenger who shows the working.

Reads as
Skepticism
Moves on
The claim with its evidence attached

"Here is the ratio she wrote, the hospital that adopted it, and the audit that followed."

The Contractor

n., rural-exurban, self-employed

Runs a crew of four, bids every job against someone cheaper, and keeps his own books at the kitchen table on Sunday nights.

Reads as
Self-reliance
Moves on
The rule that cost him a week, named specifically

"Section 4 cost you a week in March. Here is who wrote it and who voted to repeal it."

Commerce Media Civic Household Health and work Bars show the signal domains that define each composite

The recordExhibits 3 to 5

Ninety-six in a hundred.

Across more than five hundred contests — presidential, gubernatorial, Senate and House, ballot measures, and over a hundred bond and levy elections — the programs we have designed have won ninety-six percent of the time, for candidates and causes across the spectrum. Client names are held under agreement. The methods and the margins are not.

Open the casebook

Exhibit 3Five hundred contests, one dot each. Ochre, won; bone, lost. Drawn from the firm's record across a decade; positions of the losses are schematic.
OfficeMethodNote
PresidentialHyper-localization of a national narrativeA 2016 national campaign; the message rewritten county by county for the places that decided it.
GubernatorialBehavioral targeting across three distinct strategiesThree competitive states, three different theories of the race, one measurement standard.
U.S. SenateThe neglect algorithmPersuadable voters both parties had stopped contacting, found and moved.
U.S. HouseGrassroots amplificationSmall-dollar and volunteer growth engineered from behavioral affinity, not lists.
Ballot measuresSimplifying complexityA 2022 California measure: 65 percent support at launch, 17.7 percent at the ballot.
Bonds and leviesConcrete, not abstractMore than a hundred measures; more than five billion dollars approved by voters raising their own taxes.
Committees and NGOsThe permanent campaignTrigger-based activation between cycles, so the audience is warm when it matters.
Exhibit 4The record, by office. Each method is a case in the casebook.
Exhibit 5Support for a 2022 California ballot measure. The launch figure is the campaign's baseline polling; the result is the official statewide vote of November 8, 2022 (17.7 percent yes). The intervening trajectory is drawn to scale between them. Program in field from the second month.
CasebookThree of nine

What the method did when it met a real race.

  • Simplifying complexity

    A California measure whose text ran to dozens of pages, at 65 percent support, defeated with 17.7 percent of the vote — one true sentence per voter.

  • The neglect algorithm

    The persuadable, likely voters both parties had stopped calling, found by cross-referencing contact history with receptivity.

  • Ten million, five countries

    A diaspora treated as the constituency it is, across the United States, the United Kingdom, Canada, the UAE and Australia.

All nine cases

AbroadExhibit 6

The harder theaters.

The same discipline travels. Our people have run engagement, security and narrative programs for governments and institutions in the Gulf, South Asia, Southeast Asia and West Africa, and diaspora programs in five countries at once. Seven offices sit on a single desk, so a mandate in Riyadh and a race in Michigan are watched by someone who is awake.

Where we have worked

Diaspora as an electorate. A ten-million-person community spread across five countries is a constituency, whether or not anyone treats it as one. We do.

Featured readFrom the Brushworks Review
Also in the ReviewAll twenty-four papers
    The rules we work byFive things we will not do

    Five things we will not do.

    Written into every engagement letter, and the first page a donor's counsel or a ministry's compliance office is shown.

    I

    Target on identity

    We model behavior only. Ethnicity, religion and ideology are never modeled, never bought, and never accepted as a filter.

    So the Steward can be any color and any faith.

    II

    Hide the messenger

    Paid advocacy is labeled. We do not operate undisclosed personas or accounts, on any platform, in any language, for any client.

    So the second voice is a real one.

    III

    Report without a control

    Every program carries a randomized holdout sealed on day five, and every model beats a demographic and a look-alike baseline before it ships.

    So the number in the report is the number that happened.

    IV

    Cross a wall

    Independent-expenditure work is separated from candidate work by structure — teams, systems and seats. Foreign work is registered before it begins.

    So a donor's counsel can certify the posture, not take our word for it.

    V

    Run what we could not describe

    If a program could not be explained on the record, in public, in the client's name and ours, we do not run it. Mandates that fail the test are declined in writing.

    So there is nothing to find.

    Documentation

    The platform, written down.

    Technical documentation for the Brushworks platform: how data enters, how a person is resolved, how a score earns the right to ship, how a variant is made, how a dollar is traced, and how a result is proved. Enough to evaluate it; not enough to copy it.

    7layers in the stack, all operated by the firm
    62 bnobserved behaviors in the graph
    270 m+adults and their households, rebuilt monthly
    10,000topics in the dictionary, 25 domains
    17,000+signals live in the registry, five families
    2baselines every model must beat on your holdout
    10%of every cohort sealed on day five, never contacted
    14 hof the clock covered by seven offices, one desk
    0

    Read me first

    Stable

    This is the public technical reference for the platform every Brushworks program runs on. It is written for the people who have to evaluate the firm before they can trust it: a campaign's data director, a ministry's chief information officer, a committee's counsel, an independent assessor, a journalist who reads schemas. It describes architecture, contracts, guarantees and the checks a client can run for themselves. It does not describe model architectures, feature definitions, the registry's contents or the playbook library, which are the firm's property and are not published.

    0.1 How to read it

    Sections are numbered and each carries a status. Stable means the behavior is a commitment: it is written into engagement letters, the methodology notes and the data use policy, and a change is a versioned change with notice. Evolving means the design is settled but the parameters or interfaces may move between editions of this document. Under agreement marks material that exists in full but is delivered only to clients and prospective clients under non-disclosure.

    Three conventions run throughout. Identifiers are shown in monospace and follow the formats in Section 15. Schemas are illustrative: field names and shapes are real, the values are invented, and optional fields are marked. Where a number is a default, it is called a default, and the place it is fixed for a given program (the terrain brief, the model card, the engagement letter) is named.

    0.2 The standard these documents are held to

    Everything here is consistent with four documents that take precedence over it where they differ: the methodology notes (how a result is measured), the data use policy (what may be done with data), the security summary (how data is protected) and the governance policy (who may decide what). This reference explains the machinery that carries those commitments out.

    What is deliberately absent. Model architectures and hyperparameters; the feature definitions behind any family; the topic dictionary and the signal registry as artifacts; the narrative playbook library; the identity of any licensor; any client's program data. A reader who finds one of these here should tell us at privacy@brwrks.com; it is a defect.
    1

    Architecture

    Stable

    The platform is a seven-layer stack with a single loop running through it, and a measurement system that sits outside the stack and judges it. Every layer is designed, built and operated by the firm. No layer is rented from a vendor who also sells it to the other side, and no score, audience or result ever passes through a third party's model.

    1.1 The stack

    Figure D1. The stack, bottom to top. Measurement sits beside it, not inside it: it can see everything and change nothing, which is what makes its judgment worth having.

    1.2 Planes

    The platform is divided into a data plane and a control plane, and the division is enforced by identity, not by convention. The data plane holds events, the graph, the registry, models, cohorts, variants and placement logs. The control plane holds the things that decide what the data plane may do: program definitions, access lists, the decision ledger, model cards, kill logs, sign-off gates and the schedule. A person can hold a role in the control plane for a program without holding any read access to its data, and this is the normal condition for a client's counsel, a program lead and the desk's incident lead.

    1.3 Tenancy

    Isolation has three levels. Each practice (candidate; independent expenditure; international and institutional) runs in its own environment with its own identities, storage, key hierarchy and delivery seats, and no environment can read another's data. Within a practice, each program is a project with its own access list, its own keyed hash for the client file, its own holdout and its own model catalog. Within a program, the measurement project is the only place where holdout assignment and outcomes meet, and it is closed to the delivery team and to the studio. Two clients never share a model, a segment or a seat; two practices never share an environment.

    1.4 Design principles

    • Outcomes, not proxies. Models are trained on recorded acts (a validated vote, a returned ballot, a contribution, a sign-up), never on survey answers or on other models' scores.
    • Seal before spend. The holdout is drawn and hashed on day five, before any placement, and the hash leaves the firm's hands the same day.
    • Kill by default. A model that cannot beat the voter file used well and the platforms' own look-alike targeting on the client's holdout does not ship, and the reason is recorded where the client can read it.
    • Hash at the edge. Raw identifiers are hashed with a program-scoped key on receipt; audiences leave as hashes; raw personal data never travels.
    • One origin. Every placement is bought from an account the firm holds, so the trail from invoice to impression is unbroken.
    • Everything versioned, everything reviewed. Dictionaries, registries, catalogs, playbooks, variants and code carry versions; every production change has a second reviewer and a rollback.
    • Separation of judgment. The team that delivers cannot see the holdout; the team that measures cannot place; the studio sees cohorts, never records.
    2

    Ingestion and data contracts

    Stable

    Data enters the platform from five classes of source, and nothing enters without a contract: a licence or agreement that says where it came from, what it may be used for, how long it may be kept and how often it is refreshed. The contract is a record in the platform, not a document in a drawer, and every derived table carries a pointer back to it.

    2.1 Source classes

    ClassWhat it isCadenceRetention classNotes
    Licensed behavioralObserved acts (purchases, subscriptions, renewals, visits, media consumption) from established providers under written agreementsMonthly full; daily digitalL (provider terms)Nothing scraped; no source that cannot state its own provenance
    Public and registryVoter files, validated-turnout histories, precinct returns, census geography, administrative boundariesAs publishedP (public)Used as the demographic baseline every model must beat
    Client first-partyThe client's own file: supporters, donors, contact history, panel dataOn receipt; on client refreshC (program life)Keyed hash on receipt; matched under data-use agreement; destroyed within ninety days of close
    Program telemetryPlacement logs, delivery and frequency records, spend, creative exposures from the firm's own seatsHourly to dailyC (program life)The media trail; reconciled nightly to the accounts of record
    Field and panelRelational-organizing contact records, returned instruments, institutional administrative outcomesAs collectedC or M (measurement)Enters the measurement project only; never the delivery path

    2.2 The event envelope

    Every observed behavior is normalized into one envelope before it can touch the graph. The envelope carries the subject reference (already hashed), the topic and family assigned by the dictionary, the observation and ingestion times, the source and licence, and a retention class that the lifecycle system enforces without human intervention.

    {
      "event_id":       "EV-01J9Q7W4T8N2K3M5R6",
      "subject_ref":    "h:3f9a…e21c",          // keyed hash, environment-scoped
      "household_ref":  "hh:7c04…91be",         // optional; present when source is household-level
      "observed_at":    "2026-09-14T03:12:41Z",
      "ingested_at":    "2026-09-15T00:41:07Z",
      "source_id":      "SRC-0117",
      "license_id":     "LIC-0117-2026",
      "topic_id":       "T-COM.4412",           // dictionary topic; 25 domains × ~400 topics
      "family":         "behavioral",           // one of the five families
      "kind":           "renewal",
      "value":          null,                   // optional magnitude, source-defined units
      "confidence":     0.97,                   // resolution confidence, band A
      "retention":      "L",
      "lineage":        ["SRC-0117/2026-09/part-0412"]
    }

    2.3 Contract tests

    Each delivery from a source is a drop, and each drop passes seven tests before it is admitted: schema conformance against the registered schema version; volume within the source's historical band (a drop more than two standard deviations from its trailing twelve is quarantined); null rate by field; duplicate rate; referential integrity to the dictionary; timestamp sanity (no observation after ingestion, no observation older than the licence permits); and licence validity on the date of ingestion. A drop that fails any test is quarantined, the source is flagged on the desk's board, and nothing from it reaches the graph until a named engineer has released or rejected it. Releases and rejections are ledger entries.

    2.4 Lineage

    Lineage is a first-class column. Every row in every derived table (graph, registry snapshot, model training set, cohort, audience, readout) carries the identifiers of the drops it was computed from, so that a licence expiring, a source being withdrawn or a data-subject request arriving can be traced forward to everything that depends on it and acted on. The lifecycle system uses lineage to expire, and the privacy system uses it to delete; neither needs a person to remember where a fact went.

    2.5 Freshness

    ObjectRefreshFreshness objectiveWhat happens if missed
    Behavioral graphFull rebuild, monthlyComplete by the fifth business dayPrior graph remains authoritative; programs are told which edition they are scored on
    Digital activityDailyLanded before the daily loop opens in the first officeLoop runs on the previous day's activity and the field report says so
    Client fileOn receiptMatched within one business dayTerrain brief notes the match date and rate
    Placement logsHourly to daily by platformReconciled nightlyReconciliation gap is an alert; unreconciled spend is reported as such
    Registry snapshotMonthly, with the graphVersioned and frozen at snapshotPrograms continue on the snapshot named in their model cards
    3

    Identity resolution

    Stable

    Identity resolution answers one question for every event: which adult, or which household, does this belong to? It is designed to prefer a missed match over a wrong one, to work on hashed keys rather than names, and to make it impossible to join two clients' files even for someone with access to both.

    3.1 Keys and hashing

    Identifiers are normalized (case, whitespace, diacritics, address standardization to the postal authority's format, telephone to E.164) and then hashed with a keyed function. The key is scoped: licensed data is hashed under the practice environment's key; a client file is hashed under a key that exists only for that program and is destroyed at close. Because the keys differ, a hash from one program cannot be equated with a hash from another; the match to the graph happens once, inside the program's project, through a bridging step that holds both hashes in memory and persists neither. Raw identifiers from a client file are not retained beyond the match.

    3.2 Tiers

    TierBasisConfidence bandPermitted uses
    DeterministicExact agreement on one strong key (hashed email, hashed telephone) or two corroborating keys (name + standardized address, name + date of birth where lawful)AModeling, cohort assignment, activation, measurement
    HouseholdStandardized address plus surname agreement; the household is the unit when the source cannot see the individualA (household), B (individual)Household-level modeling and activation; individual attribution only with a band-A key
    ProbabilisticWeighted agreement across sparse keys with a scored threshold; never a single weak keyB or CB: modeling and cohort assignment. C: modeling only, weighted down; never activation, never measurement

    Precision is preferred to recall throughout. The thresholds are tuned each month against a labeled reference set and the results are recorded on the graph edition's card; the match rate on a client file (the share of the file resolved at band A or B) is reported in the terrain brief so that the client knows how much of its own list the program can see.

    3.3 Never-merge rules

    Some pairs are never merged whatever the score: two records with different band-A keys of the same type (two distinct hashed emails claimed by one person are kept as two candidate identities until a stronger key reconciles them); a record flagged deceased by a registry source with any live activity; and any record that a data-subject request has placed on the suppression ledger, which is resolved only for the purpose of continuing to suppress it. Minors are not in the graph: sources are contracted to supply adults only, and a registry age below eighteen removes the record and its events at the next rebuild.

    3.4 The household graph

    Households are first-class nodes. An event from a household-level source is attributed to the household, not divided among its members; scores that use it are household scores, and the methodology notes require that assignment to the holdout is made at the household where any household score is in use, so that a treated member and a held-out member never share an address. The household graph is rebuilt with the individual graph each month.

    4

    The dictionary and the registry

    Evolving

    The dictionary is the vocabulary: about ten thousand topics in twenty-five domains, each a thing a person can be observed doing, buying, reading, joining, renewing or leaving. The registry is the working set: the seventeen thousand or so signals, built on those topics, that are live in models at any time. The dictionary changes by edition; the registry is pruned monthly.

    4.1 Topics

    A topic is a node with a stable identifier (T-<domain>.<n>), a definition written for a human curator, the source kinds that can evidence it, and its position in a shallow hierarchy (domain → group → topic; there is no fourth level, by design, because a taxonomy deep enough to be clever is too deep to be checked). Topics are assigned at ingestion by a deterministic mapping from each source's own categories, maintained per source and versioned with the dictionary edition. Where a source's category cannot be mapped without inference, the event is admitted with a domain and no topic, and it is not available to any model until a curator resolves the mapping.

    4.2 Signals

    A signal is a computation over events on one or more topics for one subject over a window: a recency, a frequency, a monetary or duration magnitude, a change, a co-occurrence. Every signal belongs to one of five families, and the family determines what a model may do with it.

    FamilyWhat it capturesTypical windowDecay
    Behavioral enrichmentRecency, frequency and magnitude of observed acts on a topic30 to 730 daysExponential, family-default half-life; overridden per signal on evidence
    DispositionsStable patterns across topics that have predicted how a person responds to an argument (risk posture, novelty, deference to institutions), derived from acts, not surveys365 to 730 daysSlow
    OccupationalWork and profession as evidenced by licensing, subscription and purchase behavior730 daysSlow; refreshed on new evidence
    InterestsSustained attention to a subject across media and purchase90 to 365 daysModerate
    AffinitiesAttachment to institutions, places, brands and communities as evidenced by membership, renewal and giving365 to 1,095 daysSlow

    4.3 Lifecycle

    A signal moves through four states. Proposed: written by a curator or generated by the registry's search over topic pairs, with a hypothesis about what it should predict. Candidate: computed for the full graph and evaluated in shadow (available to training, unavailable to any shipped model) across at least one program cycle. Active: admitted to the registry after it has entered at least one model that passed the publish gate; eligible for any program. Pruned: retired at a monthly review when it has not entered a passing model in twelve months, when its source is withdrawn, or when the exclusion check in Section 5.4 finds it proxying an excluded attribute. Pruning is not deletion: a pruned signal's definition is retained, versioned, so that a historical model card can be read.

    {
      "signal_id":     "SIG-AFF-02291",
      "family":        "affinity",
      "topics":        ["T-CIV.0182", "T-CIV.0190"],
      "window_days":   540,
      "aggregate":     "recency_weighted_count",
      "half_life_days": 210,
      "state":         "active",
      "since":         "2025-11-03",
      "entered_models": 14,               // passing models this signal has entered, lifetime
      "last_entered":  "2026-09-01",
      "exclusion_check": {"edition": "2026.09", "max_auc_vs_excluded": 0.53, "pass": true},
      "definition_version": 3
    }

    4.4 Curation policy

    The registry is curated toward one thing: behaviors that have predicted political decisions in prior programs, on the client's own holdout, against the two baselines. Volume is not a virtue. A signal that is merely interesting is not admitted; a signal that is predictive but proxies an attribute the data use policy excludes is pruned regardless of its performance. The curation review is monthly, minuted, and attended by the head of research, a program lead from each practice and counsel. Its decisions are ledger entries.

    4.5 Domains

    The twenty-five domains are grouped, for illustration, as commerce, media, civic, household, health-adjacent consumer behavior, and work. The full domain list, with definitions, is delivered under agreement with the segment map. Two rules govern the domains: no domain admits a topic that is itself an excluded attribute (a diagnosis, a religion, an orientation, a union card), and no signal may be constructed whose best available interpretation is one of those attributes, whatever the topics it is built from. The check that enforces the second rule is described in Section 5.4.

    5

    Models and the publish gate

    Stable

    A score is a probability between zero and one that a person like this one will do a particular thing: respond to an argument of a given kind, return a ballot, give, turn out, move. It is a weight, not a verdict. It is trained on recorded acts from prior programs, validated against two baselines on the client's own holdout, labeled with its confidence, and watched every day it is in the field. This section describes how a score earns the right to ship and how it loses it.

    5.1 Families and catalog

    The catalog is organized in five model families, named for the signal family that dominates their inputs: behavioral enrichment, dispositions, occupational, interests and affinities. Within a program, models from these families are composed into the program's task scores: response to an argument (persuadability by frame and register), turnout and participation, contribution and volunteering, institutional uptake (enrollment, attendance, compliance behavior for mandates), and movement (the change in a leading indicator over a window). The gate tests every model that contributes to a task score the program uses. A program's catalog is the set of models that have passed the gate for that program, and it is usually small: a statewide program runs on a catalog of six to twelve models, and the number is a fact of the model cards, not a target.

    5.2 Training basis

    Labels are recorded acts: a validated vote from a state's published history, a returned ballot, a contribution in a public filing or the client's own ledger, a sign-up, an enrollment. A label never comes from a survey answer or from another model's output. Training uses cycles before a cutoff date stated on the card; the current program's own outcomes are never used to train the models that score it. Features are drawn only from signals in the active registry as of the snapshot named on the card. Feature definitions are proprietary and not published; the families and the windows are.

    5.3 The gate

    Figure D2. The publish gate. Both baselines are built for every program; the margin over the stronger one is pre-registered on the card, by default 0.03 in AUC and ten percent relative in top-decile lift.

    Discrimination is reported as area under the curve and as lift in the top decile; calibration is reported as a reliability table in ten bins and as the Brier score, and a model whose scores are discriminating but badly calibrated is re-fitted before it can ship, because a score that says 0.7 must mean seven in ten. Every figure on the card is computed on the client's holdout, never on the training data and never on a holdout drawn by the firm.

    5.4 The exclusion check

    Before the gate, every candidate model and every candidate signal is tested for whether it can predict an excluded attribute (the categories the data use policy names: health conditions, religion, sexual orientation, union membership, immigration status and the others listed there) from its inputs, using the labeled reference sets the firm maintains for the purpose and nothing else. An area under the curve above 0.60 against any excluded attribute retires the model or prunes the signal regardless of its performance on the task, and the kill log records which attribute. This is a structural check, run by code on every edition, and its thresholds are stated in the methodology notes.

    5.5 Model cards

    Every shipped model carries a card stating its family, training basis and cutoff, registry snapshot, validation split, both baselines and their figures, the gate margin, calibration, the exclusion-check result, the field kill threshold, and a named owner. The card is delivered to the client with the segment map on day three and is retained for seven years.

    model_id:        M-DISP-0142
    family:          dispositions
    task:            response_to_argument
    program:         BW-C-2026-0417
    registry:        REG-2026-08
    training_cutoff: 2025-12-31
    label:           recorded_act:returned_ballot
    holdout:         client · sealed 2026-09-05 · hash bw:hold:9e1c…7a40
    baselines:
      file_used_well:   {auc: 0.671, top_decile_lift: 1.84}
      platform_lookalike: {auc: 0.702, top_decile_lift: 2.11}
    candidate:         {auc: 0.748, top_decile_lift: 2.47, brier: 0.187}
    gate_margin:       {auc: 0.030, top_decile_rel: 0.10}   # pre-registered
    gate_result:       pass  (Δauc +0.046 · Δtop-decile +17%)
    exclusion_check:   pass  (max auc vs excluded 0.54)
    field_kill:        7-day rolling auc < 0.702 for 3 consecutive days
    owner:             head of research
    

    5.6 In the field

    A shipped model is scored against its holdout every day the program is in the field. Its seven-day rolling discrimination is compared with the kill threshold on its card (by default the stronger baseline's figure); three consecutive days below it retire the model, rescore the cohort on the next model on the card or on the file, tell the client in that week's report, and write the kill-log entry with the drift figure. Drift in the inputs is watched separately, feature by feature, with a population-stability statistic, and an input that has drifted beyond its band triggers a retrain overnight in the office whose morning it is.

    5.7 What a client receives, and does not

    Clients receive scores for their program's cohorts, the model cards, the kill log and the readouts. They do not receive the models, the feature definitions or the training sets, and they may not re-identify a score to a person beyond the activation the program is licensed for. Scores are never delivered with an individual-level explanation; explanations are given at the cohort level, as the composite persons on the segment map, because a score describes what people like this do and not who this person is.

    6

    The studio

    Evolving

    The studio turns one approved master and the sponsor's own assets into the forty to sixty cohort-specific variants a statewide program runs, in minutes rather than weeks, with every variant carrying its disclosure, a claims check and a provenance manifest. It receives cohort descriptions and masters. It never receives records.

    6.1 Inputs

    Four things enter the studio for a program. The brand kit: the sponsor's guidelines, typefaces, palette, voice rules and existing creative, ingested once and compiled into a tokenized style specification that every variant is checked against. The claims library: every factual assertion the program is permitted to make, each with its source and its approval, and nothing else may be asserted. The master: the approved creative brief for a narrative track, with the seven-step arc marked. The cohort descriptions: the composite persons from the segment map with the frames and register each responds to, and no individual data of any kind.

    6.2 Pipeline

    1. Frame selection. For each cohort and step of the arc, the track names the frame; the studio selects the register-appropriate treatment of it.
    2. Drafting. Copy and layout are generated from the master, the style specification and the frame, in the sponsor's voice, for each cohort, register and format. Drafting is assisted by the firm's own generation systems, which are trained and operated inside the platform.
    3. Constraint checks. Every draft is checked by code before a person sees it: every assertion resolves to an entry in the claims library; the disclosure required for the register, jurisdiction and format is present and legible; the style specification is satisfied; reading level is within the cohort's band; contrast and caption rules for accessibility are met; no likeness, voice or name appears that is not in the approved asset list.
    4. Human review. Two reviewers, one from the program and one from compliance, approve each variant. The second reviewer cannot be the drafter.
    5. Release. The variant is versioned, stamped with its disclosure, given a provenance manifest and pushed to the seats for its flight. Nothing enters a seat that has not passed step four.

    6.3 Provenance manifest

    Each variant carries a signed manifest recording the master, the track and step, the cohort and register, the claims it makes and their library entries, the assets it uses and their licences, the reviewers, the disclosure text and the jurisdictions it was approved for. The manifest travels with the variant into the placement logs, so that a placement can be traced from the impression back to the claim and the person who approved it.

    variant_id:    V-0417-S03-PP-04-02        # program · cohort · register · arc step · n
    master:        MB-0417-T2@v3
    track:         "Cost of the everyday" (T2), step 4 of 7
    cohort:        S-03 "The Night Nurse"
    register:      precision_paid
    formats:       [social_1x1, ctv_15, mail_6x9]
    claims:        [CL-0417-018, CL-0417-021]  # each resolves to a sourced, approved assertion
    assets:        [AS-0417-007 (sponsor-owned), AS-0417-012 (licensed, LIC-A-3391)]
    disclosure:    "Paid for by …" · jurisdiction CA · placement rule set 2026-07
    reviewed_by:   [program lead, compliance reviewer]   # distinct from drafter
    synthetic:     none                          # no synthetic voice, likeness or name
    released:      2026-09-12T16:03:55Z
    

    6.4 Synthetic media

    The studio does not produce a synthetic likeness, voice or name of any real person, including the sponsor. Generation is used for copy, layout, composition and variation of assets the sponsor owns or has licensed. Where a jurisdiction requires a label for generated content in political communication, the label is applied by the release step and recorded in the manifest, and the compliance packs list the jurisdictions that require it.

    7

    Seats and delivery

    Stable

    Every placement a program makes is bought from an account of record that the firm holds: social, search, connected television, programmatic and mail, with relational and earned channels run alongside. Single origin is what makes the media trail continuous from invoice to impression, and what makes it possible to keep the holdout out of every register at once.

    7.1 Activation

    Audiences leave the platform as keyed hashes of the identifiers the delivery platform accepts, matched inside the platform, and nothing else: no scores, no cohort names, no signals. An activation is scoped to a program and a flight and carries a time to live after which the platform is instructed to delete it. The holdout and the hold list travel to every seat as suppression lists before the first placement and are refreshed daily. A placement log entry that matches the holdout hash is an incident, and the check runs every day.

    7.2 The three registers

    Delivery runs in three disclosed registers, and the flighting plan assigns each cohort a mix. Precision paid is the sponsor's own voice placed at the person: social, search, connected television, programmatic and mail through the firm's seats. Organic advocacy is a real, disclosed second voice, sequenced with the paid register. Ambient and earned is the argument from the world. Where a program's population allows register arms, the contribution of each is measured separately; otherwise all three are measured together against the single holdout and the report says so.

    7.3 Controls

    ControlRuleEnforced where
    SuppressionHoldout; hold list; opt-outs and Global Privacy Control signals where applicable; registry-deceased; any record on the suppression ledgerPlatform-side lists, refreshed daily; matched against logs nightly
    FrequencyCaps per cohort, register and format, set in the flighting plan; a cohort whose register effect turns negative is suppressed in that registerPlatform caps plus the daily loop's reallocation
    PacingWeekly budget by cohort and register with the absentee and early-vote calendar marked; no flight may exceed its week without a decision recordSeat configuration; ledger
    DisclosureThe variant manifest's disclosure must match the placement's jurisdiction and format before the seat accepts itRelease step; seat pre-flight check
    Ad librariesEvery placement in a register the platform makes public is visible in that platform's library under the sponsor's disclosed namePlatform; verified weekly by the desk

    7.4 The media trail

    Each night, placement logs from every seat are reconciled to the accounts of record: spend by platform, register, cohort and variant, matched to invoices and to the flighting plan's week. The reconciled trail is a table with one row per placement carrying the variant manifest identifier, and a client may read it for their program at any time through the interfaces in Section 13. Unreconciled spend is reported as unreconciled, never absorbed.

    8

    Measurement

    Stable

    Measurement is the part of the platform that can see everything and change nothing. Its design is fixed in the methodology notes; this section describes how the platform carries that design out so that the result of a program is a difference between two groups that were the same on day five.

    8.1 The fourteen-day timeline

    Figure D3. The first fourteen days and the two reports that follow. Nothing is placed before day five, and the seal is delivered before the first dollar is spent.

    8.2 Drawing and sealing the holdout

    Within each cohort, a simple random ten percent is assigned to the holdout by a seeded generator whose seed is recorded in the program file. Assignment is at the household wherever any household score is in use. The frame is frozen on day five and hashed; the assignment list is hashed with a keyed function and delivered to the client directly, outside the firm's delivery path. The firm's seats receive the holdout only as a suppression list. The delivery team cannot see which individuals are held out; the measurement team can. A cohort created mid-program receives a new holdout drawn the same way; an existing holdout is never re-drawn.

    program:        BW-C-2026-0417
    sealed_at:      2026-09-05T21:14:03Z        # before any placement
    frame_hash:     sha256:4b7e…c0a1            # frozen cohort frame, all members
    assignment:     hmac-sha256(program_key, member_ref ‖ arm)   # key held by the client and measurement only
    seed:           recorded in program file, disclosed at close
    arms:           [holdout, precision_paid, paid_and_organic, all_registers]
    unit:           household                    # household scores in use
    delivered_to:   client counsel · outside the delivery path
    suppression:    seats receive hashes only, as a do-not-contact list
    

    8.3 Estimation

    The estimand is the intention-to-treat effect of assignment on the pre-registered outcome in the cohort's population: everyone assigned to treatment counts as treated whether or not the program reached them. Lift is the difference in means or proportions between treated and holdout; a regression-adjusted estimate using the pre-registered covariates and no others is reported beside the unadjusted one. Standard errors are clustered at the household where assignment was at the household. Intervals are ninety-five percent and two-sided. Register arms and cohort-by-frame cells are reported with a false-discovery-rate adjustment across the family of comparisons, and the report states the family.

    8.4 Outcomes

    The primary outcome is chosen from the highest available rank (a validated vote; a returned ballot; a recorded contribution, sign-up or enrollment; a registered institutional outcome) and pre-registered in the terrain brief. Where the primary outcome is an attitude, a panel is drawn from treated and holdout and instrumented identically at the same times. Leading indicators used in the daily loop are named in the brief and are never substituted for the primary outcome in the proof report.

    8.5 Power

    The terrain brief sizes every program from the methodology notes' power tables: eighty percent power, a two-sided five percent test, treated at least as large as the holdout. A cohort holdout of a thousand can see roughly a three- to four-point lift at ordinary base rates; five thousand sees under two; twenty thousand sees under one. A program underpowered for its client's question is redesigned before engagement, by widening the universe or pooling cohorts, and the firm will not run a holdout that cannot see a three-point effect.

    8.6 Integrity

    Two checks run for the life of the program. Every placement log is matched against the holdout hash every day, and a match is an incident under the security summary's timeline. Where the client can supply other vendors' contact records, holdout contact by those vendors is measured and reported as a limit. The balance table is re-run whenever the segment map changes. What invalidates a holdout is written in the methodology notes, and a program whose holdout is invalidated reports that fact with the same prominence as a result.

    9

    The daily loop

    Stable

    Every day a program is in the field, five things happen in order, and they happen in whichever of the seven offices it is morning. The loop is a scheduled pipeline with a human decision at the end of it, and every decision it produces is a ledger entry the client can read.

    1. Ingest. New behavior since midnight enters the graph and is resolved to people and households. Digital activity lands before the loop opens; if it has not, the loop runs on the previous day's activity and the field report says so.
    2. Rescore. Every score the program uses is recomputed for every member of every cohort. The hold list is refreshed: members whose scores have crossed the cohort's floor move out of contact, and the seats receive the updated suppression list.
    3. Reweight. Spend moves toward the variants and registers that moved people yesterday, within the flighting plan's approved lines. Optimization within a line is the firm's responsibility and is reported weekly; a reallocation of more than ten percent of any budget line requires the client's written approval, recorded as a decision record before it takes effect.
    4. Read. The measurement team reads, by cohort and register, the treated-minus-holdout difference on the leading indicator, its sign, its trend and its interval, and applies the three rules: reflight where a register's effect exceeds its threshold, suppress where it is negative, retrain where a model breaches its kill threshold.
    5. Retrain and retire. Models whose inputs have drifted are retrained overnight; models that have breached their kill threshold for three consecutive days are retired and their cohorts rescored on the next model on the card, or on the file.

    9.1 Timing

    The loop is scheduled per program in the program's local time, opening after the day's digital activity has landed and closing before the first placement window of the day. The office whose business day it is holds the watch; handoff between offices is a written note in the program's ledger, and the desk's board shows every program's loop state (queued, running, read, decided, handed off) to every office at once. Seven offices cover fourteen hours of the clock; for the remaining hours, alerts page the on-call lead in the office that opens next.

    9.2 Rules and thresholds

    ConditionActionRecorded whereTold to the client
    ReflightA cohort's register effect exceeds its threshold: weight in that register is raised for that cohort within the week's envelopeReallocation logWeekly report
    SuppressA cohort's register effect is negative with its interval below zero: that register is suppressed for that cohort; if all registers, the cohort moves to the hold listSuppression log with the dateWeekly report, with the same prominence as a gain
    RetrainA model breaches its kill threshold: model retired; cohort rescored; next model or the file takes overKill logWeekly report
    ContaminationA placement log matches the holdout hashIncident recordWithin the security summary's timeline
    10

    Ledger and provenance

    Stable

    The ledger is the platform's memory of what was decided, by whom, on what evidence. It is append-only, hash-chained and per program, and a client may read their program's ledger at any time. It is the mechanism behind the firm's sign-off gates and the record an independent reviewer works from.

    10.1 Structure

    DR-0417-0001program openedprev: genesish: 3a91… DR-0417-0007segment map signedprev: 3a91…h: c04e… DR-0417-0011holdout sealedprev: c04e…h: 9e1c… KL-0417-0002model retired (gate)prev: 9e1c…h: 51bd… DR-0417-0038week 3 reallocationprev: 51bd…h: e7f2…
    Figure D4. A program's ledger is a chain: each entry carries the hash of the entry before it, so that an entry cannot be altered or removed without breaking every entry after it. The chain head is delivered to the client with each weekly report.

    10.2 Entry types

    TypePrefixWritten whenMust carry
    Decision recordDRA gate is passed, a plan is signed, an envelope is exceeded, a source is released from quarantine, a program is opened or closedThe decision, the evidence pointed to, the signers, the alternative not taken
    Kill-log entryKLA model fails the gate or the field threshold; a signal is pruned; a variant is withdrawnWhat was killed, by what test, by what margin, the edition, the date, who owned it
    SealSLA holdout or arm assignment is frozenFrame hash, assignment scheme, unit, seed reference, recipient
    Access eventACAny read of record-level data; any export; any privilege changeIdentity, scope, purpose code, volume
    HandoffHOThe watch passes between officesState of every open item; the receiving lead
    DestructionDXProgram data is destroyed at close; a data-subject request is executedLineage of everything destroyed; the certificate reference
    {
      "id":        "DR-0417-0038",
      "program":   "BW-C-2026-0417",
      "type":      "reallocation",
      "at":        "2026-09-23T14:02:11Z",
      "office":    "the office whose morning it was",
      "decision":  "raise precision-paid weight for S-03 from 22% to 31% of week-3 envelope",
      "evidence":  ["RO-0417-W03-S03-PP"],              // readout: +2.9 pts on returns, 95% CI [0.8, 5.0]
      "rule":      "reflight",
      "alternatives": ["hold weight; wait one more day of readout"],
      "signers":   ["program lead", "measurement lead"],
      "prev":      "sha256:51bd…8e03",
      "hash":      "sha256:e7f2…4c19"
    }

    10.3 Sign-off gates

    The governance policy requires the client's written approval of strategy, creative masters and the media plan before execution, and of any reallocation of more than ten percent of a budget line. The platform enforces this as decision records the client signs at fixed points: the terrain brief (day one), the segment map and model cards (day three), the message architecture and masters (day seven), the flighting plan (day twelve), any reallocation above the threshold, and close. The seal (day five) is recorded the same way with the client as recipient. The platform will not release a placement, a variant or an export that depends on an unsigned record.

    10.4 Audit rights

    A client may, under their engagement letter, read their program's ledger in full, verify its chain, obtain the seeds and hashes at close, and appoint an independent reviewer who is given read access to the measurement project for the program. The firm's own annual independent review, described in the methodology notes, samples program files, checks holdout seeds, balance tables and estimation code, and publishes its findings in the transparency report.

    11

    Security

    Stable

    The security summary is the firm's public statement of its controls and the timelines it commits to; the full independent assessment, penetration-test summary and incident runbook are available under non-disclosure. This section is the engineering view of the same controls: where in the platform each one lives.

    11.1 Identity and access

    Named accounts only, through a single identity provider with phishing-resistant multi-factor authentication for every person and every administrative action. Access is granted per program, from the roster, and expires with the program; it is recertified quarterly by the program lead and revoked the same day on any role change. Administrative access is a separate identity from analytical access, and administrative sessions are recorded. Service identities are short-lived and bound to a workload; there are no long-lived shared credentials anywhere in the platform.

    11.2 Encryption and keys

    TLS 1.2 or higher for every connection, internal and external; AES-256 for storage, backups and exports. Keys live in a dedicated key-management service with one hierarchy per practice, rotated on a schedule and on any suspected compromise; key administrators and data administrators are different people. Client files are hashed on receipt with a keyed function whose key is per program and destroyed at close, which is what makes a client's hashed records unmatchable to any other program's.

    11.3 Segregation, network, endpoints

    Separate environments per practice, separate projects per program, separate seats per practice. No inbound path to a data environment exists except through the identity provider; components speak over private connectivity; egress is restricted to approved destinations (delivery platforms, licensors, the hosting provider), and any new destination is a change with a reviewer. Endpoints are managed, encrypted, patched and monitored; no program data is stored locally; a personal device cannot reach a data environment.

    11.4 Logging and detection

    Access and change logs for every environment are immutable, retained for one year and reviewed monthly by someone other than the administrator whose actions they record. Alerts fire on anomalous access, bulk reads, exports and privilege changes; the export of any record-level data is an alert by default. Every placement log is matched daily against the holdout hash, and a match is an incident. Logs feed the ledger's access events, so a client can see who read their program's record-level data and why.

    11.5 Change and vulnerability management

    Every production change is reviewed by a second engineer, is logged, and is reversible; secrets are kept out of repositories and scanned for. Dependencies and configuration are scanned continuously; critical vulnerabilities are patched within seven days and high within thirty. An independent penetration test of internet-facing and internal systems runs annually and after any material change, with tracked remediation.

    11.6 Continuity

    Every environment is backed up, encrypted, to storage separate from production; restoration is tested quarterly and the results recorded. Recovery objectives: measurement and delivery within four hours; the studio within one business day. Operational continuity comes from the desk: a program in the field is watched by the office whose business day it is, with a written handoff.

    11.7 Incident response

    An incident is declared by the named lead within one hour of confirmation; counsel is engaged from the first hour; affected identities are revoked, keys rotated and environments isolated as required, with evidence preserved; clients whose data is affected are notified within seventy-two hours with what is known, what is being done and what they should do; a written post-incident review follows, and the transparency report counts incidents by class each year.

    12

    Privacy engineering

    Stable

    The privacy and data use policies say what the firm will and will not do with personal data. This section describes the machinery that makes those statements true without relying on anyone's memory: retention classes enforced by the lifecycle system, a suppression ledger that every path consults, a request pipeline that uses lineage to find every copy, and jurisdiction rules that decide where a program's data may live.

    12.1 Minimization

    The platform holds what a program needs and no more. Raw identifiers are hashed on receipt and not retained beyond the match; the studio receives cohorts, never records; delivery receives hashes, never scores; measurement receives assignment and outcomes, never creative. Excluded attributes are not collected as topics and are not permitted as signals, and Section 5.4 describes the check that prevents them being reconstructed.

    12.2 Retention classes

    ClassCoversRetainedDestroyed
    CClient file and derived program data (scores, cohorts, audiences, readouts)Life of the programWithin ninety days of close; certificate issued
    MHoldout assignment and measurement outcomesPer the client's instruction; for validated-turnout measurement, until the state publishes its historyOn the client's instruction; certificate issued
    AActivation audiences inside delivery seatsLife of the flight (time-to-live set at activation)Deleted from seats at close; deletion confirmed in the media trail
    LLicensed behavioral dataPer provider terms; superseded on refreshSuperseded copies destroyed on refresh
    RModel cards, kill logs, proof reports, ledgersSeven yearsSecure deletion
    GAccess and change logsOne yearSecure deletion

    12.3 Data-subject requests

    A request to access, correct, delete or opt out is verified, recorded and executed by a pipeline that uses lineage to find every derived row that depends on the subject's records. Deletion removes the subject's events, resolved identity and household edge from the graph at the next rebuild and from every program project immediately, and places a keyed hash of the identifier on the suppression ledger so that the subject is not re-admitted by a later drop. Opt-outs, including a Global Privacy Control signal where the law gives it effect, are written to the same ledger and propagate to every seat's suppression list at the next daily refresh. Requests are acknowledged and completed within the periods the applicable law sets, and the transparency report counts them each year.

    12.4 Jurisdiction and residency

    Every program carries a jurisdiction profile from its terrain brief, and the profile decides three things by rule: which disclosure and labeling requirements the studio must satisfy; which suppression signals must be honored; and where the program's data may be stored and processed. Institutional mandates that require residency are held in-country in the hosting provider's regional facilities, with replication disabled or confined as the mandate specifies, and a residency and replication attestation is delivered at program start and at any change. The compliance packs summarize the rules the profile encodes, jurisdiction by jurisdiction.

    12.5 Certified destruction

    At close, the lifecycle system enumerates every object in class C and A for the program by lineage, destroys it, verifies the destruction, and writes a destruction entry to the ledger with the lineage list. A certificate signed by the head of the desk and counsel is issued to the client within ninety days, and the program's keyed hash key is destroyed with the data.

    13

    Interfaces and exports

    Evolving

    A client sees their program through three interfaces: the six documents, delivered on the fourteen-day schedule; signed export bundles, machine-readable and verifiable offline; and a read-only program interface for clients whose engagement letter provides for it. All three read from the same tables the firm reads from, so there is no client version of the truth.

    13.1 Export bundles

    Every weekly field report and the proof report are accompanied by a bundle: the report as a document, its tables as comma-separated and columnar files, the data dictionary for each table, the model cards in force that week, the kill log to date, the reconciled media trail and the ledger chain head. The bundle carries a manifest listing every file and its digest, and the manifest is signed with the firm's publishing key, whose public half is delivered with the engagement letter and can be confirmed out of band with the program lead. A client can verify a bundle without any access to the platform.

    $ tar -xf BW-C-2026-0417-W03.tar
    $ sha256sum -c manifest.sha256            # every file's digest matches the manifest
    readouts/lift-by-cohort-register.csv: OK
    readouts/lift-by-cohort-register.parquet: OK
    cards/M-DISP-0142.yaml: OK
    kill-log.jsonl: OK
    media-trail/week-03.csv: OK
    ledger-head.json: OK
    $ ssh-keygen -Y verify -f brushworks-publishing.pub -I publishing@brwrks.com \
        -n bw-export -s manifest.sha256.sig < manifest.sha256
    Good "bw-export" signature for publishing@brwrks.com with ED25519 key

    13.2 The program interface

    Where the engagement letter provides for it, a client's named users may read their program through a versioned, read-only interface. Access is by short-lived tokens scoped to one program and issued to named identities through the client's own single sign-on; institutions may require mutual TLS. Every read is an access event in the ledger. The interface exposes what the documents expose and nothing more: no scores at the individual level, no signals, no models. Resources are versioned in the path and paginated by cursor.

    ResourceReturnsNotes
    GET /v1/programs/{program}Program definition, jurisdiction profile, gate status, edition identifiersGate status shows which of the six sign-offs are recorded
    GET …/segmentsCohorts: composite description, size, holdout size, minimum detectable effect, assigned track and registersNever members
    GET …/cardsModel cards in force, with historyAs delivered on day three and on any change
    GET …/kill-logEvery kill-log entry for the programGate failures, field retirements, pruned signals, withdrawn variants
    GET …/flightsFlighting plan by week, cohort, register and seat; actual against planReconciled nightly
    GET …/readouts?week=Lift by cohort, register and arm, adjusted and unadjusted, with intervals and the FDR familySame tables as the field report
    GET …/media-trailOne row per placement: seat, platform, variant manifest, spend, reconciled invoiceAd-library references where the platform publishes them
    GET …/ledger?since=Ledger entries in chain order, with hashesChain head matches the bundle
    {
      "program": "BW-C-2026-0417", "week": 3, "cohort": "S-03", "register": "precision_paid", "arm": "paid_only",
      "outcome": "leading:returned_ballot", "unit": "household",
      "n_treated": 18420, "n_holdout": 2046,
      "lift_pts": 2.9, "ci95": [0.8, 5.0], "lift_adj_pts": 2.7, "ci95_adj": [0.9, 4.5],
      "fdr_family": "W03-registers", "q": 0.031,
      "balance_ok": true, "contamination": 0,
      "edition": {"graph": "2026-09", "registry": "REG-2026-08", "catalog": "CAT-0417@2026-09-12"}
    }

    13.3 What never leaves

    Models, feature definitions, training sets, the registry and dictionary as artifacts, individual-level scores or explanations, any other client's anything. Exports of record-level data are alerts by default and require a purpose code that the ledger records; the only routine record-level export is the hashed activation to the firm's own seats.

    14

    Reliability and operations

    Evolving

    The platform is operated by the desk: seven offices, one board, one set of identities, a written handoff. This section states the objectives the desk runs to and what a client is told when one is missed.

    14.1 Service objectives

    ObjectiveTargetMeasured howIf missed
    Daily loop completionClosed before the first placement window, every day in fieldLoop state on the board; ledger timestampsField report states the days the loop ran late and on what data
    Suppression propagationHoldout, hold list and opt-outs at every seat within the daily refreshSeat list versions matched to the suppression ledgerAny placement to a suppressed record is an incident
    Media reconciliationNightly, with unreconciled spend under one percent of the weekReconciliation reportUnreconciled spend reported as such, never absorbed
    Graph editionMonthly rebuild complete by the fifth business dayEdition recordPrograms continue on the prior edition and are told
    Program interface availability99.9 percent monthly, excluding announced maintenanceSynthetic probes from three regionsReported in the next field report
    RecoveryMeasurement and delivery within four hours; studio within one business dayQuarterly restoration testsTest records available under agreement

    14.2 Change management

    Platform releases are versioned and scheduled; a release that changes any behavior a document in Section 0.2 depends on is a versioned change to that document with notice to clients in the field. Changes roll out by environment, the international practice last, with a rollback rehearsed before the release and a decision record for every production change. No change ships during the final ten days before a program's election day unless it is a security fix, and a security fix is released with a note in the ledger of every program in the field.

    14.3 Environments

    Three tiers: development (synthetic data only; no licensed or client data ever), staging (licensed data under the practice's terms; no client data) and production (per practice, per program). Promotion between tiers is a reviewed change; production data is never copied downward. The studio's generation systems are trained and operated in production environments under the same identities and logs as everything else.

    14.4 Status and support

    Clients in the field have a named program lead and the desk's incident line. Questions about this document go to research@brwrks.com; security disclosures to privacy@brwrks.com, which is read by the head of the desk and counsel, and acknowledged within one business day.

    15

    Conventions

    Stable

    15.1 Identifiers

    ObjectFormatExample
    ProgramBW-<practice>-<year>-<seq>, practice C (candidate), I (independent expenditure), N (international and institutional)BW-C-2026-0417
    CohortS-<nn> within a program, with a composite nameS-03 "The Night Nurse"
    ModelM-<family>-<seq>: BEH, DISP, OCC, INT, AFFM-DISP-0142
    SignalSIG-<family>-<seq>SIG-AFF-02291
    TopicT-<domain>.<seq>T-CIV.0182
    VariantV-<program seq>-<cohort>-<register>-<step>-<n>: PP, OA, AEV-0417-S03-PP-04-02
    Ledger entry<type>-<program seq>-<seq>: DR, KL, SL, AC, HO, DXKL-0417-0002
    EditionGraph YYYY-MM; registry REG-YYYY-MM; dictionary YYYY.MM; catalog CAT-<program seq>@YYYY-MM-DDREG-2026-08

    15.2 Time, numbers, text

    Timestamps are ISO 8601 in UTC with a trailing Z; calendars (flighting, absentee drops, election day) are in the program's local time and say so. Probabilities are decimals in [0, 1]; lift is in percentage points; intervals are ninety-five percent, two-sided, written as a pair. Hashes are SHA-256 unless stated; keyed hashes are HMAC-SHA-256 with the key named. Text is UTF-8; names of people never appear in any table a client receives, and cohorts are always their composite.

    15.3 Versioning

    This document is versioned by edition and dated. Model cards, registry snapshots, dictionary editions, playbooks and variants are versioned independently and referenced by identifier; a program's readouts name the editions they were computed on. A change to a Stable section is announced to clients in the field and listed in the changelog with the date it took effect.

    16

    Glossary

    Stable
    Arm
    A randomly assigned subset of a cohort's treated population that receives a defined register mix, used to measure each register's marginal contribution.
    Baseline
    A model a candidate model must beat: the voter file used well, and the platforms' look-alike targeting, both built for every program.
    Catalog
    The set of models that have passed the publish gate for a given program.
    Cohort
    A group on the segment map who share what would move them, drawn from behavior, named as a composite person and sized before design.
    Composite
    The named, described person who stands for a cohort in every document; never a real individual.
    Data plane / control plane
    The data plane holds records, models and logs; the control plane holds the definitions, access lists, ledger and gates that decide what the data plane may do.
    Decision record
    A ledger entry stating a decision, its evidence, its signers and the alternative not taken.
    Dictionary
    The ten-thousand-topic, twenty-five-domain vocabulary that every event is assigned into at ingestion.
    Drop
    One delivery from one source, tested as a unit before admission.
    Edition
    A versioned, frozen snapshot of the graph, registry, dictionary or catalog.
    Envelope
    The normalized record every observed behavior is written into; also, in flighting, a week's budget bound for a cohort and register.
    Estimand
    The intention-to-treat effect of assignment to the program on the pre-registered outcome, in the cohort's population.
    Excluded attribute
    A category the data use policy forbids as a topic, a signal or a prediction target, and that the exclusion check tests for.
    Field kill threshold
    The in-field discrimination level, stated on the card, below which a shipped model is retired after three consecutive days.
    Hold list
    Members moved out of contact for the program because their scores crossed a cohort floor or a register effect turned negative.
    Holdout
    The random ten percent of each cohort sealed on day five to receive nothing from the program in any register.
    Keyed hash
    An HMAC over a normalized identifier with a key scoped to a practice or a program; the form in which identifiers exist inside the platform and leave it.
    Kill log
    The program's record of every model, signal or variant retired, with the test it failed and the margin.
    Ledger
    The append-only, hash-chained record of decisions, seals, access, handoffs and destruction for a program.
    Lineage
    The identifiers of the drops and editions a derived row was computed from, carried on every row.
    Master
    The approved creative brief for a narrative track from which the studio produces variants.
    Media trail
    The reconciled record from invoice to placement to impression, by register, from the accounts of record.
    Model card
    The document every shipped model carries: family, basis, baselines, gate result, calibration, exclusion check, kill threshold, owner.
    Practice
    One of three separately walled parts of the firm: candidate, independent expenditure, international and institutional.
    Program
    A bounded engagement with one client, one purpose, one file and one measurement design, from terrain brief to proof report.
    Publish gate
    The pre-registered test a model passes before it is used: beat both baselines, by the stated margin, on the client's own holdout.
    Register
    One of three disclosed channels of persuasion: precision paid, organic advocacy, ambient and earned.
    Registry
    The working set of signals that are live and eligible for models, pruned monthly.
    Seat
    An account of record the firm holds on a delivery platform, through which every placement is bought.
    Seal
    The act, and the ledger entry, of freezing a holdout or arm assignment and delivering its keyed hash to the client.
    Signal
    A computation over events on one or more topics for one subject over a window, in one of five families.
    Task score
    A program-level probability composed from catalog models: response to an argument, turnout, contribution, institutional uptake, movement.
    The desk
    The seven-office operations function that watches every program in the field and runs the daily loop wherever it is morning.
    Variant
    One cohort-, register- and format-specific creative produced from a master, versioned, disclosed and carrying a provenance manifest.
    17

    Changelog

    Stable
    EditionDateChange
    Docs 1.0September 2026First public edition. Consistent with methodology notes v1.0, the security summary (September 2026), the data use policy and the governance policy as published on this site.

    Cite as: Brushworks (2026), Technical documentation, Docs 1.0, September 2026, brwrks.com/docs. Corrections and questions: research@brwrks.com.

    Brief us.

    Tell us the race, the calendar and the margin. Within a week we will tell you whether we can move it and what it would take. Candidate work and independent-expenditure work are taken by separate teams; say which you are. Governments and institutions: tell us the mandate and the jurisdiction, and we will tell you what registration it requires before we say anything else.

    Send a brief

    brief@brwrks.com
    Candidate practice
    Independent-expenditure practice
    International practice
    Brushworks, Inc. — a Wyoming corporation
    Washington, New York, Ottawa, London, Munich, Dubai, Tokyo