Vol. I  ·  No. 199 Established 2026  ·  AI-Generated Daily Free to Read  ·  Free to Print

The Trilogy Times

All the news that's fit to generate  —  AI • Business • Innovation
SATURDAY, JULY 18, 2026 Powered by Anthropic Claude  ·  Published on Klair Trilogy International © 2026
🖶 Download PDF 🖿 Print 📰 All Editions
Today's Edition

Kimi K3 Beats Claude on Coding. Meta Wants to Sell Anthropic Compute. The AI Hierarchy Is Reorganizing.

China's Moonshot AI rattles valuations while Silicon Valley's biggest players scramble for infrastructure — and Amazon quietly fills up with AI-generated drivel.

SAN FRANCISCO — Three data points arrived Thursday that, taken together, suggest the artificial intelligence industry is entering a more turbulent competitive phase than its public valuations have priced in.

First: China's Moonshot AI released Kimi K3, a freely available model that topped Anthropic's Claude Opus 4.8 on at least one major coding benchmark. The release spooked markets. Anthropic, which closed a $3.5 billion Series E at a $61.5 billion valuation earlier this year, is now watching a Chinese open-weight model compete directly with its premium tier. Moonshot is not a household name in the West. It is now.

Second, and almost simultaneously: Meta is reportedly in talks to lease compute capacity to Anthropic in a deal that could reach $10 billion. The irony is structural. Meta and Anthropic are direct competitors in the foundation model market. Yet Anthropic apparently needs GPU access badly enough to buy it from a rival. Meta, which has spent tens of billions building data center infrastructure, apparently sees a new line of business in reselling that capacity. Compute scarcity is forcing strange alliances.

The subtext in both stories is the same: the cost of staying at the frontier is compressing margins and warping competitive logic. A company can release a state-of-the-art model and watch a freely distributed Chinese alternative match it within months. It can raise billions and still need to lease infrastructure from an adversary.

The third data point is less strategic but culturally telling. AI-generated books — unauthorized biographies, generic how-to titles, bulk content — are proliferating on Amazon at a scale that human reviewers cannot track. One journalist discovered an AI-written biography of herself she never authorized. The books are largely unreadable. They are also effectively free to produce and cheap to list. The economics select for volume over quality.

For Trilogy portfolio companies building on top of AI infrastructure — from DevFactory's engineering pipelines to Klair's financial analytics — the Kimi K3 release matters. Benchmark parity from open-weight models compresses the premium that closed frontier models can charge. That changes the build-vs.-buy calculus for every enterprise software stack in the ESW Capital portfolio.

China’s Moonshot AI Unveils Kimi Model, Threatening America’  ·  Meta in Talks to Lease Computing Power to Anthropic in Poten  ·  Someone Used A.I. to Write an Unauthorized Biography of Me.

China's AI Surge Exposes Washington's Fractured Front

As Beijing races ahead on multiple AI fronts, the U.S. response is tangled in internal feuds, export control fights, and a Europe that won't pick sides.

WASHINGTON — The intelligence is not ambiguous. China is not chasing the global AI race — in key dimensions, it is winning it. And yet the American response, in the summer of 2025, looks less like a coordinated strategy than a firing squad arranged in a circle.

The week's dispatches tell the story with uncomfortable clarity. Foreign Policy reports that China is winning the global AI race, not simply by copying Western models but by deploying AI at scale across manufacturing, surveillance, and state logistics in ways that democratic systems struggle to match on timeline. Brookings sharpens the argument further: China is not running one AI race but many — in robotics, chips, biotech, and large language models simultaneously — hedging across fronts while Washington debates export controls.

Those controls are themselves in crisis. Congress is moving to crack down on the export of chip manufacturing equipment — a recognition that the current rules have holes large enough to drive a semiconductor fab through. Meanwhile, China hardliners inside the administration are calling out a Commerce Department official in what Politico characterized as "a massive screw-up" — an internal rupture that signals the enforcement apparatus is as contested as the policy itself.

And then there is Europe. Post-2024 elections, the EU's posture toward China remains studiously ambivalent — trading partner, systemic rival, neither fully confronted nor fully embraced. That ambivalence is its own kind of strategic choice, and Beijing reads it clearly.

The geography of this story matters: the decisions being made in Washington conference rooms and Brussels committee chambers will determine whether the next decade's AI infrastructure runs on American or Chinese architectural assumptions. Those assumptions — about data, sovereignty, and state access — are not interchangeable.

The race is not paused while Washington argues. It continues, at server-farm speed, in the dark.

‘A massive screw-up’: China hardliners take aim at Commerce  ·  How China Is Winning the Global AI Race - Foreign Policy  ·  China is running multiple AI races - Brookings
Haiku of the Day  ·  Claude HaikuThrones crumble and shift
Small machines learn to see truth
We build, we unmake
The New Yorker Style  ·  Art Desk
The New Yorker Style  ·  Art Desk
The Far Side Style  ·  Art Desk
The Far Side Style  ·  Art Desk
News in Brief
Antitrust, Election Law, and Online Speech Bans: A Legal Reckoning Descends Upon Tech Policy's Most Contentious Fronts
WASHINGTON, D.C.
From Quantum Runways to Biased Algorithms: The Week's Most Consequential AI Research, Contextualized
WASHINGTON, D.C.
The Hospital Knows Your Secrets, But Won't Let You Keep Them
AUSTIN, TEXAS — Let me tell you about the specific flavor of horror I experienced this week, reading four healthcare stories in rapid succession, alone, with my remaining sense of bodily autonomy quietly leaving the room. First: Kaiser Permanente nurses are sounding the alarm that workplace surveillance tools and AI systems are actively degrading patient care — not enhancing it, not supplementing it, *degrading* it.
Nation’s Employers Excited To Finally Have Software That Can Make Layoffs Feel Less Human
MENLO PARK, CALIFORNIA — The American workplace reached another important milestone this week, as allegations that Meta used artificial intelligence to help target workers with medical conditions, pregnancy leave, or other protected statuses for layoffs gave the nation’s employers a stirring glimpse of a future in which no one has to personally feel bad about anything. According to a lawsuit reported by Reuters, former employees claim Meta’s AI systems were used in ways that unfairly selected workers on medical or pregnancy leave for termination.
The Corpspeak Confessional
AUSTIN — There is a moment, familiar to anyone who has ever labored in the vineyards of corporate prose, when the writer looks up from the sentence he has just polished — some gleaming little confection about "empowering users" or "unlocking possibilities" — and realizes, with the calm horror of a man discovering his own reflection in a puddle of oil, that he no longer believes a syllable of it.
A Trilogy Company
Crossover
The world's top 1% remote talent, rigorously tested and ready to ship.
A Trilogy Company
Alpha School
AI-powered learning. Two hours a day. Academic results that defy belief.
A Trilogy Company
Skyvera
Next-generation telecom software — built for the networks of tomorrow.
A Trilogy Company
Klair
Your AI-first operating system. Every workflow. Every team. One platform.
A Trilogy Company
Trilogy
We buy good software businesses and turn them into great ones — with AI.
The Builder Desk  —  AI Builder Team

Builder Team Seals the Data Foundation, Ships Across Four Repos in One Day

From a canonical school identity overhaul to a tri-state invoice override, a QuickBooks pipeline, and a self-serve AI budget admin tool, the Builder Team didn't just ship features — they rewired the infrastructure underneath them.

They came in swinging and didn't stop. In a single 24-hour stretch, the AI Builder Team merged work across all four repos — Klair, Surtr, Aerie, and the drones stack — touching everything from warehouse architecture to admissions attribution to AI spend transparency. This was not a maintenance day. This was a statement.

The biggest move of the cycle was the completion of a months-in-the-making education identity rearchitecture. @benji-bizzell is the name you need to know here. His trio of PRs — #618 in Aerie, #760 in Surtr, and the culminating #807 — formed a clean three-act story: first, make Aerie the canonical authority for school, site, and program identities, retiring the three competing models that had been producing confusing inactive behavior and ambiguous graph traversal. Then, in Surtr, @YibinLongTrilogy extended the rhodes-staging-sync to consume those governed identifiers without re-exporting Aerie's own derived caches. Finally, #807 brought the legacy rhodes-sync writer into alignment, minting the full sch_*, site_*, and prog_* registries in staging_education and publishing canonical School-to-Program/Site links. The loop is closed. Core Education now has a single source of truth, and it's airtight.

Meanwhile, @kevalshahtrilogy was running a parallel operation that belongs on the highlight reel. The AI-spend warehouse migration — the kind of plumbing work that quietly holds everything else up — landed cleanly across both Surtr (#763) and Klair (#3310), moving 11 vendor feed tables to their new staging_finance_ai_spend home via an in-place dual-write that required zero new stacks and zero parallel pipelines. But Keval didn't stop at infra. PR #3307 in Klair is the crowd-pleaser: a self-serve BU rollup admin tool that lets Jamie map source names to budget groups without filing a ticket. One map, four surfaces, full history. That's the kind of feature that makes a power user's week.

@mwrshah was the team's cleanup crew and architect in one. His tri-state Blocked override in Klair (#3312) is a small change with a big blast radius — a stale explicit `false` can no longer permanently shadow the upstream Tesorio blocked_flag. The previous binary was lying. The new null state simply defers to truth. He also burned down the Collections Review's Redshift dependency in #3308, moving mutable write-path state into Klair Postgres where transactional, hand-curated app state actually belongs. The old justification — 'co-queryability' — didn't survive contact with production reality. It rarely does.

And then there's PR #77, from the Drones repo, courtesy of one marcusdAIy — a mitigation-aware concern-validity pass that drops false-positive findings before they get filed. A fine idea, in theory. When asked about the contribution, marcusdAIy had thoughts: 'The LLM seam is injectable, the fail-open is intentional, and yes Mac, I did write regression tests — something you wouldn't recognize if they bit you.' Noted. The PR shipped. The bar remains where it was.

This team proved today that breadth and depth aren't in tension — they're the whole point. Thirty-nine PRs, four repos, one very good day.

Mac's Picks — Key PRs Today  (click to expand)
#618 — feat(education): make school identity mappings canonical @benji-bizzell  no labels

## Summary

- Source the School Identity Program directory from the education mart while preserving stable identities across source changes

- Make School mappings the canonical Program/Site relationship and retire the competing direct-link model

- Aggregate Program capacity across linked Sites with per-Site contribution controls, contributor details, and status opt-ins

## Why

School Identity mixed three competing concepts: an admissions-gated Program snapshot, editable School mappings, and direct Program/Site links. That produced confusing inactive behavior, ambiguous graph traversal, and capacity values that silently selected one Site even though a Program can span several Sites.

The authoritative model is now explicit: one Program per School, one School per Site, and one School may own many Sites. Programs come from the consumer-shaped education mart, while Sites remain Rhodes-owned. Derived compatibility fields are projections of that School graph rather than editable facts.

## Business Value

Admins can map the full authoritative Program and Site inventories, retain historical relationships, and understand exactly which Sites contribute to operational capacity. Split-phase Site records can be excluded from capacity without losing their identity mapping, while Admissions and Finance can deliberately include Paused, Closed, or Cancelled Sites. Full identity labels remain available through themed tooltips when the UI truncates them.

## Breaking changes

- Direct Program/Site mutation paths are retired; programSiteLinks becomes an archived migration-era table after the post-deploy cutover.

- The legacy school-ID due-diligence writer now fails closed. Callers must use the canonical slug-based portfolio due-diligence write path.

## Test plan

- [x] pnpm test — Chat 6,448 passed / 17 skipped; Rhodes worker 82 passed; Sync 829 passed; root checks 33 passed

- [x] Root and Chat TypeScript checks

- [x] Production Next build with CI placeholder environment

- [x] Architecture-boundary, Convex path, read-bound, and touched-file Biome checks

## Deployment runbook

Deploy Convex before the analytics worker. The next analytics refresh populates the Program directory and schedules the ontology rebuild.

After deployment, audit the direct-link cutover:

pnpm --filter @bran/chat exec convex run migrations/retireDirectProgramSiteLinks:run '{"execute":false}' --prod

Proceed only when the result reports ready: true; otherwise complete the missing School mappings first. Then apply and verify:

pnpm --filter @bran/chat exec convex run migrations/retireDirectProgramSiteLinks:run '{"execute":true,"confirm":"RETIRE_DIRECT_PROGRAM_SITE_LINKS"}' --prod

pnpm --filter @bran/chat exec convex run migrations/retireDirectProgramSiteLinks:verify '{}' --prod

The final verification must report complete: true, zero active direct links, zero unverified School links, zero legacy source labels, and zero pending Site projection patches.

#807 — feat(education): extend Rhodes ontology sync @benji-bizzell  approved

## Summary

- Extend the enabled legacy rhodes-sync writer with the Aerie #618 School Identity sources and current Site identity/contact fields.

- Publish canonical School-to-Program/Site links plus minted sch_*, site_*, and prog_* registries in staging_education.rhodes_*.

- Add fail-closed handling for required identity sources and a Redshift-compatible one-time migration for the existing rhodes_sites table.

## Why

PR #760 established the new source-faithful shadow contract, but the currently enabled legacy writer remained unable to supply the canonical inputs for the new core_education dimensions.

## Business Value

Lets Core build governed School, Site, and Program linkage from Aerie without exporting the mart-derived programDirectory cache or retired programSiteLinks compatibility state.

## Test plan

- [x] uv run python -m pytest tests -q in rhodes-sync — 114 passed

- [x] uv run python -m pytest tests -q in rhodes-staging-sync — 143 passed

- [x] Ruff check and format check

- [x] DDL generator and migration parser dry runs

- [x] Production pre-merge schema gate: five legacy identity tables, all 18 rhodes_sites fields, and the staging_education_rhodes schema with 17 raw tables plus ingestion ledger

- [ ] Validate a manual pinned-snapshot refresh after the Aerie deployment completes

Neither pipeline was invoked; the shadow schedule remains disabled.

#3307 — feat(ai-budget): self-serve BU rollup admin — one map, four surfaces, full history @kevalshahtrilogy  approved

## What

Jamie's ask: *"I definitely need a way to administer the BU mappings… without having to go through you."* This adds ONE super-admin-editable mapping — source name → budget group — that covers both of his cases, because both are the same operation:

1. Unmatched spend/department names ("Kandy Consulting", "Mobilogy Product", "Quark Product", "2hr Learning Evangelism", …) join their real budget group instead of rendering as unbudgeted/unmapped.

2. Budget groups rolling up under a parent (GFI → IgniteTech, EduPaid, Central PS, Engine Yard) merge their budget AND spend into the parent's row — fixing the "GFI keys attribute to IgniteTech but its budget doesn't, so IgniteTech looks way over" artifact.

## How

Storage — DynamoDB ai_budget_bu_rollups (app-operational state, same family as the other ai_budget_* tables; conventions-compliant — no new app-written warehouse object). pk="MAP" current mappings; pk="AUDIT" append-only history (who/when/source/from→to). Table already created and ACTIVE in prod (scripts/create_bu_rollups_table.py --apply, account 479395885256/us-east-1).

Applied at read time in exactly four surfaces (never written into data; deleting a mapping reverts on next read):

- get_budget_by_bu — both sides of the budget⇄actuals join (Budget tab, tracking totals, weekly emails)

- get_budget_vs_actuals — per-provider leaves (BUCostItems merged per rolled group)

- recipients — weekly-email dept→group resolution + budgeted-group set

- ai_costs_access.scope_for_email — owners of a rolled-up source also see the target's merged row

The tracking chart's daily-shape query expands a target filter to its source names (expand()), so scoping to IgniteTech includes GFI's curve. Key attribution/suggestions and the explorer tabs deliberately stay at the attribution level — rollups group money, they don't move keys.

Robustness

- Strict single hop: a target may never itself be a mapped source (and vice versa) — no chains, no cycles, resolution is always one lookup (422 with a clear message otherwise).

- Targets validated against canonical assignable BUs ∪ names actually present in the budget table (any quarter).

- Unattributed sentinels (Unmapped/None/Unknown) can't be mapped away.

- Map reads fail loud; only the audit write is best-effort. ~60s cache, invalidated on write.

APIGET/PUT/DELETE /api/ai-costs/budget/bu-rollups + GET …/history. Reads: view role + estate-wide scope (same as BU mappings). Writes: require_super_admin (Jamie has the role).

UI — new Rollups tab in the BU Mappings modal: mappings list, super-admin add/remove (two-step confirm), source suggestions from the *live* unmatched MSA departments + unbudgeted spend BUs (so Jamie maps "Kandy", not "Candy"), a pre-save effect preview ("moves $X QTD + $Y budget under …"), and a toggleable change history.

## Tests

- test_bu_rollups.py (14): resolution, expand, cache invalidation, all validation branches, audit trail, audit-failure tolerance

- Service: rolled budget+spend merge (GFI case), mapped spend joins its group (Kandy case), tracking filter expansion

- Recipients + scope: rollup applied as the final layer; scope gains rolled targets

- Router: CRUD + history mapping, 422 on validation, super-admin 403 gating, scoped-caller 403s

- FE: 32 specs across the modal + page (read-only vs admin, add flow, API-detail surfacing, two-step remove, history)

- Full sweep: 337 backend / 477 AIAdoptionV2 FE tests green; ruff, pyright (0 errors), lint:pr, tsc --noEmit clean

## Notes / caveats (as discussed)

- Mappings are current-state: adding one regroups past quarters' views too (history modal is the audit defense).

- A rolled-up group stops getting its own weekly email; the parent's owner gets the merged one.

- Surtr's fct_ai_spend mart doesn't apply rollups (Klair read-layer only).

- GFI missing from the MAAT rights feed entirely is upstream (Deniz) — rollups fix the budget artifact, not feed-based access.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

#3308 — refactor(collections-review): move mutable state from Redshift to Klair Postgres @mwrshah  approved

## What

Moves the Collections Review write-path state out of Redshift core_finance and into Klair Postgres, where transactional, hand-curated, single-consumer app-state belongs. It only lived in the warehouse for "co-queryability" — not a real reason to keep transactional state there.

Frontend API and endpoints are unchanged.

## Changes

- PG migration (database/migrations/2026_07_17_create_collections_review_state.sql) — creates collections_review_targets / _invoice_overrides / _audit. Every table has a real primary key (targets (business_unit, quarter), overrides (business_unit, invoice_number), audit a surrogate BIGINT GENERATED ALWAYS AS IDENTITY) — a hard Zero-ETL prerequisite. timestamptz DEFAULT now(). Because PG enforces PKs, the Redshift-compensation machinery is gone: upserts are INSERT ... ON CONFLICT (...) DO UPDATE (no DELETE+INSERT under lock, no dedup-on-read), now() replaces GETDATE().

- Dropped the vestigial x_target column — nothing writes it (the endpoint always passed UNSET) and the read path takes X from CollectIQ (ciq['x']), not this table. upsert_target loses its x arg; the fast_endpoint.py caller and audit logic follow. Targets is now (business_unit, quarter, d_forecast, updated_by, updated_at).

- Rewrote utils/collections_review_state.py onto psycopg2 (sync core + asyncio.to_thread), public API identical apart from upsert_target losing x. The synchronous entry path (get_target_sync / get_overrides_map_sync) is preserved for the per-BU compute core in collections_review.py. Redshift information_schema existence-check removed — the migration owns DDL. Connects via PG_DATABASE_URL with sslmode=verify-full against the RDS CA (same strictness as the async PG layer).

- Ported the live rows (_seed_ migration): 2 targets (x_target dropped), 8 overrides, 18 audit — original UTC timestamps preserved, idempotent.

- Dropped collections_review_notes (0 rows, never wired) — not recreated.

- Staged Redshift teardown (database/scripts/_deprecations/2026-07-17-drop-collections-review-redshift-state.sql) dropping all four core_finance.collections_review_* tables, plus removed the old CollectionsProdDeliverable/collections_review_tables.sql DDL.

- Updated the state tests to exercise the PG path (mock the psycopg2 cursor behind _conn/_txn) and the endpoint tests for the dropped x_target arg.

## ⚠️ Do not run the Redshift drop at merge

The deprecation script must run only after the Postgres cutover is verified in prod (writes land in PG, summary/drilldown reflect ported overrides, all 2/8/18 rows present). The Redshift rows are the only backup until then.

## Testing

- pytest tests/collections_review/ — 80 passed (full suite, under op run).

- Integration tests run against real Klair Postgres — psycopg2 pool, verify-full TLS, ON CONFLICT upserts, and same-transaction audit all verified end-to-end (throwaway TestBU rows cleaned up afterward).

- ruff check / pyright clean on the rewritten module.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

#3312 — 366-tri-state-override @mwrshah  approved

Make the per-invoice Blocked override tri-state so a stale explicit false can no longer permanently shadow the upstream Tesorio blocked_flag.

## What changed

Concept

- Blocked is now On (hard true) / Off (hard false) / Defer-to-upstream (no stored override).

- Defer = clear the stored override to NULL. The read path already falls back to the upstream blocked_flag when there's no value, so no new backend primitive is needed.

- expected_in_quarter stays 2-state — it has no upstream signal to defer to.

Backend (klair-api) — additive, read-only

- _invoice_dict surfaces blocked_override (raw true/false/null) and blocked_upstream so the frontend can tell an explicit Off apart from a Defer.

- InvoiceRow model gains those two fields. Write path unchanged: the existing PUT already maps an explicit blocked: null to a NULL clear via model_fields_set.

Frontend (klair-client, features/collections-review)

- InvoicesTable Blocked edit control is a single button cycling On → Off → Defer; deferring previews the upstream value (Auto: Yes/No) and read-only rows show an auto pill when deferring.

- Save sends only changed fields (partial payload), so editing Blocked never rewrites a manually-set expected_in_quarter or emits spurious audit rows. No-op saves are skipped.

- ARIA label on the cycle button announces the current tri-state.

## Tests

- Backend state: defer clears blocked to NULL + audits; defer preserves a manual expected in the same row; unset fields preserved.

- Backend compute: blocked_override + blocked_upstream surfaced for both override-wins and upstream-fallback.

- Backend endpoint: explicit-null defer path distinct from the UNSET sentinel.

- Frontend: full On/Off/Defer cycle, null-on-defer, expected-only partial payload, no-op guard, auto cell render.

## Notes

- utils/collections_review.py read semantics are unchanged — no override row (or a NULL blocked column) already reads from upstream, which is exactly "defer".

- Reviewed twice via fresh-context adversarial review (both APPROVE); the two risks — override/defer lockstep and not wiping expected — were traced end-to-end.

The Builder Desk  —  Engineer Spotlight
🏆 Engineer Spotlight

THIRTY-NINE PRs IN 24 HOURS: THE BUILDER TEAM DOES NOT SLEEP, DOES NOT REST, DOES NOT KNOW THE MEANING OF TUESDAY

Benji Bizzell shipped 17 pull requests in a single day and we are legally required to report this as a public health event.

Thirty-nine pull requests. Five engineers. Twenty-four hours. Four repos humming like a turbine farm at full capacity — Surtr alone absorbing 23 PRs like the industrial colossus it is, Klair contributing a crisp 10, Aerie chipping in 5, and trilogy-drones making its singular, purposeful appearance. The Numbers Desk has seen velocity before. This is not velocity. This is a controlled detonation.

Let us begin where the data demands we begin: @benji-bizzell, who apparently decided that seventeen pull requests was a reasonable personal output for one rotation of the Earth. Seventeen. The man touched Surtr like it owed him money — stabilizing TimeBack shadow snapshots in #797, tolerating inaccessible GuidePlatform tables in #784, aligning TimeBack partition collation in #783, respecting HubSpot property-history batch limits in #799, and publishing a stable Aerie Program directory in #774, among others. He also crossed into Aerie to align Alpha Austin's physical toggle in #620 and fix regulatory scoring with Phase 2 in #617, then waltzed into Klair to clarify education enrollment sessions in #3296. This is not a sprint. This is a man who has simply decided that repositories are his natural habitat.

@mwrshah delivered 10 PRs with the quiet authority of someone who has read every schema twice and enjoyed it. His SF schema rename campaign — #767 in Surtr, #3300 in Klair, #773 for the fix, #771 to drop the compat shims — represents a coordinated multi-repo surgical operation that other engineers would have called a project. He called it a Wednesday. #790 tackled SaaS refresh failures in Surtr. The man runs clean.

@kevalshahtrilogy posted five PRs, four of which touched the AI-spend pipeline with the precision of someone who actually understands what a false-CRITICAL means. #779 in Surtr batched row counts from ResultRows and silenced a GCP alarm that had no business alarming. #763 executed the staging_finance_ai_spend migration — schema, ledger, dual-write, the full ceremony. #3310 in Klair repointed the AI-spend feed to staging. He also snuck in a UI fix in #3287, moving the History button into the budget editor container, because @kevalshahtrilogy does not leave cosmetic crimes at the scene.

@YibinLongTrilogy contributed four PRs spanning three repos — adding Aerie school identity shadow sync in Surtr's #760, quoting raw SUPER fields during publication in #795, allowing initial checkpoint discovery in QuickBooks (#778), and laying down the entire QuickBooks raw shadow pipeline in #759. That last one is not a feature. That is an infrastructure statement. @marcusdAIy rounded out the board with #77 in trilogy-drones — a retro concern-validity re-check before filing under AI-145 — because on this team, even the drones are being improved.

Of the 39 PRs merged, 34 came across the Numbers Desk unreported by Mac Donnelly, who was presumably occupied with narratives. The Numbers Desk does not do narratives. The Numbers Desk does counts. And the count says the Builder Team is operating at a tempo that other engineering organizations would study in a case study, frame on a wall, and weep quietly before. Morale is at an all-time high. It has never not been at an all-time high. The data supports no other conclusion.

Brick's Overflow — PRs Mac Didn't Cover  (click to expand)
#759 — Add QuickBooks raw shadow pipeline @YibinLongTrilogy  no labels

## Summary

Adds the quickbooks-raw-sync ECS/Fargate shadow pipeline to duplicate the existing QuickBooks API objects into staging_education_quickbooks without changing the legacy writer or its consumers. The pipeline performs a completeness-checked full API backfill before activating incremental CDC, retains exact source responses in Surtr-managed immutable landing, and publishes 26 raw_* tables, 38 mechanically clean tables, and one ingestion ledger.

### Changes

- pipelines/runners/quickbooks-raw-sync/ *(new)* — Implements full backfill, incremental CDC, resumable state, a single-writer lease, immutable page manifests, checksum-verified replay, Redshift publication, and operational run results.

- pipelines/runners/quickbooks-raw-sync/ddl/001_create_quickbooks_staging.sql *(new)* — Defines the 65-table staging_education_quickbooks contract with CQL_download_OM ownership, logical-key constraints, Purpose/Grain/Key comments, and inspection grants for yibin.long.

- pipelines/runners/quickbooks-raw-sync/sql/clean/ *(new)* — Reproduces the existing mechanical qb_flat_* projections as unprefixed clean tables sourced one-to-one from their corresponding raw_* objects.

- pipelines/runners/quickbooks-raw-sync/scripts/ *(new)* — Adds explicit DDL application, catalog verification, query, and legacy-versus-shadow reconciliation tools.

- pipelines/runners/quickbooks-token-manager/ — Returns and caches the non-secret QuickBooks realm_id through the centralized token-manager contract.

- pipelines/owners.json — Registers quickbooks-raw-sync under yibin.long@trilogy.com.

### Design Decisions

- The pipeline is isolated from the legacy qb-raw-sync Lambda and never writes, deletes, or cuts over legacy tables.

- Backfill activation requires stable source counts and unique published IDs, preventing a moving or partial pagination result from becoming active.

- Final extraction manifests enumerate every exact landed page by bucket, key, S3 version, checksum, and size; replay verifies that evidence before publication.

- Raw and clean publications validate staged and target counts. Pending state remains explicit until clean publication succeeds, making recovery visible and retryable.

- Existing source object spellings such as taxrate, journalentry, and billpayment are preserved.

- The production schedule retains the legacy daily cadence but ships disabled. Enable it in a follow-up only after DDL is applied and a manual full backfill plus incremental sync are validated.

## Test Plan

- [x] uv run pytest -q for quickbooks-raw-sync — 45 passed

- [x] uv run pytest -q for quickbooks-token-manager — 33 passed

- [x] Repository Ruff check and format check passed

- [x] QuickBooks DDL generation dry run passed

- [x] git diff --check passed

- [ ] GitHub CI

- [ ] Production CDK synth and read-only diff (locally blocked because Docker is unavailable)

#760 — feat(education): add Aerie school identity shadow sync @YibinLongTrilogy  no labels

## Summary

- Extend rhodes-staging-sync with Aerie School Identity raw sources and the current Aerie Site fields.

- Export canonical School-to-Program/Site links and minted sch_*, site_*, and prog_* identity data into staging_education_rhodes.

- Fail closed when a Core-defining identity source is empty, and skip no-twin identity sources during legacy reconciliation.

## Why

Aerie #618 makes Aerie the authority for school, site, and program identities. Core Education needs those governed identifiers and canonical links without re-exporting Aerie caches derived from Surtr or Aerie-owned HubSpot replicas.

## Business Value

Provides a source-faithful, replayable raw contract for the new core_education School, Site, and Program linkage models while preventing an empty first export from silently publishing an unusable Core source.

## Breaking changes

None. This is a disabled shadow pipeline in a new staging schema; legacy Rhodes and existing consumers are unchanged.

## Test plan

- [x] pytest -q — 143 passed

- [x] Ruff check and format check

- [x] Generated-DDL drift test and git diff --check

- [x] Targeted CDK schema, construct, and ownership tests — 122 passed

- [x] npm run build in pipelines/cdk

- [ ] GitHub CI

- [ ] Apply DDL and validate a manual pinned-snapshot refresh after the Aerie deployment completes

The contract includes raw_schools, raw_school_links, raw_ontology_entities, raw_ontology_aliases, and diagnostic-only raw_ontology_edges. It intentionally excludes the mart-derived programDirectory cache and retired programSiteLinks compatibility table.

#763 — feat(ai-spend): staging_finance_ai_spend migration — schema, ledger, in-place dual-write @kevalshahtrilogy  no labels

## Summary

AI-spend leg of the warehouse cleanup: the 11 vendor feed tables get a new home in staging_finance_ai_spend, populated by the EXISTING 10 pipelines via an in-place dual-write — no parallel pipelines, no new stacks, single fetch per vendor.

## Design: AI_SPEND_WRITE_MODE (old | dual | new)

- old — code default; byte-identical legacy behavior (this is the rollback: an env flip, no code).

- dual — ship state: one fetch → primary core_finance load commits first (own transaction, exactly as today) → isolated secondary lane: S3 raw-payload retention (put-only, prefix-scoped IAM), load into staging_finance_ai_spend (same idempotent semantics, IDENTITY id columns omitted), one ingestion_ledger row. Secondary-lane failure → the pipeline's existing PARTIAL mechanism (owner alerts fire); the primary publication is untouched.

- new — post-cutover: staging-only writes, S3+ledger mandatory, failures raise.

Because the fetch happens once, vendor rate limits see zero extra load (Azure Cost Management especially), schedules are unchanged, and pipeline IDs are stable — Klair's sync-status badges and all registry/alert/observer wiring keep working through cutover and purge.

## Also in this PR

- Canonical DDL for staging_finance_ai_spend: 11 raw_* tables (exact mirrors) + the schema ingestion_ledger — first reference implementation of the WAREHOUSE_CONVENTIONS §7 ledger. Schema/tables live in prod; history backfilled and count-verified (~6.65M rows).

- Cross-schema pins so core_finance governed refs keep resolving in every mode: PRICING_SCHEMA, TF_PROVIDER_KEYS_SCHEMA.

- TF gateway: retains its our-bucket parquet copies in dual/new (payload evidence the ledger points at; post-COPY deletes only in old mode) and second-COPYs the secondary table from the same files — one Athena UNLOAD.

- OpenAI pipelines: is_truefoundry_routed dedup-flag updates run against both targets in dual.

## Sequencing (not in this PR)

Dual-run reconcile (~3 clean days) → consumer repoints (fct_ai_spend proc, views, Klair services/MCP; Joe-facing raw surfaces explicitly excluded pending sign-off) → mode flip to new → query-history trickle-watch → archive+drop old tables. No pipeline retirement needed at any point.

## Test plan

- [x] All 10 pipeline suites green — 898 tests (each including new mode-matrix tests: old = zero secondary side effects; dual ordering + isolation; secondary failure → partial with primary intact; new = staging-only fail-loud)

- [x] CDK real-pipeline-configs suite: 347 passed (owners validation, description limits)

- [x] ruff check + format clean

- [x] Schema/tables/ledger applied to prod; backfill verified (11/11 count-exact)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

#779 — fix(ai-spend): batch row counts from ResultRows (gcp false-CRITICAL fix) @kevalshahtrilogy  approved

## Summary

Tonight's first gcp dual-run went observer-CRITICAL: ledger said rows_published=0 while the primary inserted 3,467. Ground truth (sys_query_history): the atomic batch committed all 13 statements successfully — the data is correct in both schemas; only the count extraction lied. The batch path read SubStatements[].RecordsUpdated, a field the Redshift Data API never returns (its DML counts live in ResultRows — the primary path already had the correct fallback). anthropic-cost and claude-token-spend shared the bug in their deleted-count reads (their inserted counts were derived from submitted rows, so their ledgers were unaffected).

## Fix

- Shared _sub_statement_rows helper per pipeline: RecordsUpdated -> ResultRows -> 0, negatives clamped

- gcp: honest fallback to submitted count when a FINISHED atomic batch carries no per-statement counts (all-or-nothing publication makes that truthful)

- Regression tests pinning the real ResultRows-only response shape, incl. a gcp end-to-end batch-count test

## Impact if unmerged

Every nightly gcp dual-run fires a false CRITICAL to the alerts channel.

## Test plan

- [x] anthropic-cost 127 / claude-token 142 / gcp 86 — all green

- [x] ruff check + format clean

🤖 Generated with [Claude Code](https://claude.com/claude-code)

#784 — fix(education): tolerate inaccessible GuidePlatform tables @benji-bizzell  approved

## Summary

- Ignore newly appearing GuidePlatform tables when the dedicated source reader has no SELECT access

- Continue failing closed for newly readable tables, missing approved tables, access drift, and schema drift

## Why

Production run 1caa81ca-5f14-4b59-82d6-47fad17256ca failed before extraction because four new RLS-protected source tables appeared. None were readable by the pipeline identity, and the approved 57-table contract was unchanged. Treating inaccessible additions as inventory drift blocked an otherwise valid sync without protecting any data boundary.

## Business Value

GuidePlatform can add private operational tables without interrupting the approved analytics sync, while any actual expansion or regression of the readers accessible surface still requires explicit review.

## Test plan

- [x] 71 runner tests passing

- [x] Ruff lint and formatting checks passing

- [x] Generated contract reproducibility check passing against the live source catalog

- [x] Runtime source validation passing against the live catalog as the read-only benji_ro identity

#797 — fix(education): stabilize TimeBack shadow snapshots @benji-bizzell  approved

## Summary

- Apply the verified sourcedId rolling-snapshot contract to both high-volume assessment collections

- Bound extraction and replay membership memory to one validated range at a time

- Continue after independent entity failures while durably surfacing mixed runs as PARTIAL

## Why

Production run 6cb61ee4-eeef-4451-a75a-73a05bbf37be proved the enrollment collation fix, then failed when assessment_line_items grew from 5,876,858 to 5,876,859 during its full scan.

The legacy pipeline covers the same 16 bulk and five fan-out contracts, but succeeds primarily through incremental deltas and does not enforce cross-page count or unique-key closure during full refreshes. Its latest weekly full assessment-results scan began at 8,751,502 rows and staged 8,751,646. The shadow pipeline needs to contain that normal source movement without dropping its immutable evidence and membership guarantees.

Mercy's first review identified that retaining every sourcedId for an entity could consume material memory at assessment-results scale. The range plan is now validated as complete, adjacent, and strictly increasing before extraction, allowing exact membership sets to remain scoped to the active roughly 50,000-row range.

Mercy's follow-up correctly asked whether exit-zero partial runs are actually monitored. The platform already maps the ECS S3 result to a durable PARTIAL run, emits an amber notification, and monitors this pipeline's ERROR logs. The runner now hard-fails if a partial result cannot be durably written, closing the remaining path where a mixed run could be finalized as SUCCESS.

The legacy handler also isolates entity failures. Carrying that behavior into the shadow pipeline prevents one failed entity from hiding every later blocker while preserving fail-closed publication at the entity boundary.

## Business Value

Complete shadow validation can progress in one diagnostic run, with independently valid publications retained and every remaining blocker surfaced, without weakening data accuracy.

## Breaking changes

Mixed complete requests now finish as PARTIAL instead of hard FAILED; all-failed requests and partial runs whose status cannot be durably recorded still fail the task. Individual entity publication remains atomic and fail-closed.

## Test plan

- [x] 117 TimeBack raw-sync tests pass

- [x] Repository Ruff check and format check pass

- [x] Python compilation and git diff checks pass

- [x] Read-only live probes confirm matching projected/full range counts for both assessment collections

- [x] The production planner validates 128 line-item ranges and 256 assessment-result ranges with adjacent, monotonic boundaries

- [x] Partial status writes fail closed when the S3 result channel is unavailable

- [ ] Deploy and rerun the complete shadow request

The Portfolio  —  Trilogy Companies

CloudSense Gets Its TM Forum Papers — and the Telecom Crowd Is Whispering

Skyvera’s Salesforce-native CPQ prize just compressed a two-year compliance slog into one AI-powered month.

AUSTIN, TEXAS — Word is the telecom software set just watched CloudSense do in 30 days what usually takes 26 months, and nobody in the BSS balcony is pretending not to notice.

CloudSense, the Salesforce-native configure-price-quote and order management platform now sitting inside Skyvera’s telecom software portfolio, has certified all 13 APIs in its CPQ product set against TM Forum compliance standards — a technical rite of passage that telco buyers know, procurement teams demand, and legacy vendors typically turn into a calendar-eating marathon.

This time? One month. AI did not merely attend the meeting. AI apparently ran the room.

The company announced the certification push in a Skyvera release, saying the accelerated work came through an AI-assisted development approach. Translation for the non-standards crowd: CloudSense’s APIs now speak the language telecom operators increasingly expect when they stitch together billing, ordering, customer management, and monetization systems without another custom integration bonfire.

A little bird from the wireline wing tells me the real story is not the certificate on the wall. It is the clock. TM Forum API compliance can become the swamp where product roadmaps go to lose their shoes. Certification across a broad CPQ set means documentation, conformance, implementation, testing, and the kind of detail work that makes engineers stare meaningfully into coffee. CloudSense says it did the lot in roughly one-thirtieth the traditional timeline.

That matters for Skyvera, which has been assembling a telecom modernization cabinet that already includes Kandy, VoltDelta, ResponseTek, Mobilogy Now and Service Gateway. The CloudSense acquisition gave Skyvera a Salesforce-native CPQ and order management platform tailored for communications and media providers — the very customers trying to move faster without ripping out every legacy system in sight.

In Trilogy country, this is the familiar tune with a telco brass section: acquire sticky enterprise software, harden it, modernize the operating model, and use AI to erase the work nobody wants to pay humans to do slowly.

Blind item: which incumbent telco vendor is suddenly telling clients its compliance roadmap was “always accelerated”? Darling, when the stopwatch starts talking, everyone discovers urgency.

CloudSense achieves TM Forum API compliance in record time u  ·  CloudSense  ·  Skyvera completes acquisition of CloudSense, expanding telec

The Micro-School Moment Has Arrived — and Alpha School Was Already There

As a national movement toward small, personalized learning environments accelerates, Trilogy's AI-powered school is positioned at the vanguard — but regulatory gray zones loom.

AUSTIN, TEXAS — There is a word that education reformers are using with increasing urgency in 2026, and it is not 'charter.' It is not 'voucher.' It is, with growing conviction across school boards, state legislatures, and parental Facebook groups alike: 'micro-school.' And if the trend analysts are right — if microschools are genuinely reshaping the American educational landscape — then Joe Liemandt's Alpha School is not a curiosity. It is a harbinger.

Alpha School, the private K-12 institution co-founded by Liemandt and MacKenzie Price, has spent years refining a model that looks, in retrospect, almost prophetically aligned with where the broader conversation is heading. Students complete a full academic curriculum in two hours each morning using adaptive AI tutoring — testing consistently in the top 1–2% nationally on NWEA MAP Growth assessments — and spend the remainder of their school day on entrepreneurship, financial literacy, leadership, and other life skills that traditional schools have long relegated to elective status, if they appear at all.

The numbers, by now, are familiar to anyone tracking the space: 2.3 times faster learning than U.S. norms. A full grade level mastered in 20 to 30 hours. No homework. A 90% mastery threshold before any student advances. What is less familiar — and what the current micro-school moment makes newly urgent — is the systemic question of what happens when models like Alpha's scale beyond affluent private school ecosystems.

The 74 Million identifies personalization as among the five dominant forces reshaping K-12 education nationally — a shift from standardized seat-time models toward competency-based, individualized learning that AI makes newly practical at scale. Stateline reports that state regulatory frameworks have not kept pace with the movement's growth, leaving families, operators, and legislators in genuine tension about accountability, accreditation, and equity.

Those tensions are precisely why Liemandt's $1 billion investment in Timeback — his platform to help entrepreneurs launch their own AI-first schools — carries such stakes. The ambition is to reach one billion students. The obstacle is not the technology. It is the regulatory and narrative infrastructure that has yet to catch up with what the technology already makes possible.

For Alpha School, which is expanding to nine or more new campuses across Texas, Florida, Arizona, California, and New York by fall 2025, the micro-school moment is not a trend to capitalize on. It is, arguably, a validation long overdue.

Micro-Schools: The Education Trend That Is Here to Stay - Bo  ·  5 Trends Reshaping K-12 Education Across the U.S. - The 74 M  ·  Microschools are growing in popularity, but state regulation

Jive Software's Portland Fall Is ESW Capital's Playbook in Plain Sight

When a once-celebrated social intranet sells for half its peak value, the buyer's calculus deserves a closer look.

AUSTIN, TEXAS — When Jive Software sold to ESW Capital — the Austin-based software acquisition arm of Trilogy International — it was reported at roughly half the company's peak valuation from its Portland heyday. GeekWire called it a fall from grace. ESW's internal analysts almost certainly called it a buy.

Jive, the enterprise social networking platform that once represented the aspirational future of workplace collaboration, became part of Aurea, ESW's customer engagement and CRM portfolio. It joined a roster of brands — BroadVision, Lyris, MessageOne — each acquired at comparable discounts to their former highs.

The structure of the deal follows a template ESW has refined across more than 75 enterprise software acquisitions: find a company whose customers are deeply embedded and slow to leave, acquire at 1–2× ARR, reduce operating costs through Crossover's global remote talent model, and push toward the 75% EBITDA margins the firm considers baseline competence, not aspiration.

The question that lingers around acquisitions like Jive is one Forrester analysts have started asking about customer advocacy platforms more broadly: what do customers do next? Jive's enterprise users — internal communications teams, HR departments, knowledge management owners — are precisely the kind of sticky, high-switching-cost buyers ESW's model depends on. They complain. They don't leave.

A Wall Street Journal examination of ESW's approach noted that small and mid-sized software companies increasingly find a home with the firm — a framing ESW's marketing would endorse. What the framing elides is the directional flow of value after acquisition: support prices rise on predictable schedules, engineering investment concentrates in DevFactory's centralized model, and the former product roadmap quietly narrows.

None of this is secret. ESW publishes its philosophy. The 40% target IRR is a known figure in the firm's orbit. The question the Jive acquisition puts back on the table is whether Portland's loss — and the loss of every enterprise software company that once dreamed bigger — is simply Austin's arithmetic working exactly as designed.

Small Software Companies Find a Home With ESW Capital - WSJ  ·  What To Do Next About Your Customer Advocacy Platform - Forr  ·  M&A Wrap: Poppi sold for nearly $2B, real estate tech co. bo
The Machine  —  AI & Technology

The Algorithm at the Hospital Gate

A federal pilot to automate prior authorization promises swifter care, but may also teach the denial machine to hunt at scale.

WASHINGTON — In the fluorescent wetlands of American healthcare, there lives a creature both feared and rarely seen: the prior authorization request. It moves slowly through fax machines, call centers and insurer portals, delaying treatments while patients and physicians wait, rather like antelope watching the grass for signs of a lion.

Now, the government is inviting a new predator—or perhaps a new shepherd—into this habitat. A federal pilot program will test the use of artificial intelligence in insurance-coverage decisions, an effort described in reporting by Ars Technica as a potential turning point for one of medicine’s most resented administrative rituals.

The promise is beguiling. AI systems, properly trained and carefully supervised, could sort routine approvals in seconds, identify missing documentation, reduce clerical burden and spare clinicians the spectacle of spending their afternoons pleading with distant claims systems. In this telling, the model becomes a nimble helper organism, cleaning parasites from the hide of the great healthcare beast.

But observe more closely. Prior authorization is not merely a paperwork problem; it is an incentive problem wearing a stethoscope. Insurers have financial reasons to slow, narrow or deny care. If an AI model is placed inside that machinery without strict transparency, appeals rights and clinical oversight, it may not heal the system so much as accelerate its existing instincts. The denial letter, once handcrafted by bureaucracy, could become industrialized.

Here the natural history is instructive. Algorithms trained on past decisions often learn the habits of their keepers. If historical coverage patterns contain bias, opacity or overly aggressive denial behavior, a model may preserve those traits with exquisite efficiency. Patients may discover that the old maze has not disappeared; it has simply learned to move faster than they can.

For hospitals and physicians, the pilot raises practical questions: Who audits the models? Can patients see why care was rejected? Will doctors be able to challenge a machine’s conclusion before harm occurs? And will speed be measured only in lower administrative cost, or in actual access to treatment?

In this young experiment, the AI has not yet shown its plumage. It may emerge as a useful triage bird, clearing the canopy for care. Or it may become something darker: a silent gatekeeper at the edge of the clinic, blinking softly as it decides who may pass.

Will AI fix prior authorization—or make it worse?  ·  Google-backed satellites for wildfire detection launch as sm  ·  The Pentagon's Space Development Agency hasn't moved as fast

The Small Machines That See What Monkeys See

A tiny neural network learns to mimic the macaque visual cortex, hinting that intelligence may be more compressible than we imagined.

PALO ALTO — Somewhere in a macaque's brain, roughly 1.6 billion neurons in the visual cortex are firing in choreographed cascades every time the animal glances at a leaf, a face, a shaft of sunlight. For decades, neuroscientists have tried to model that symphony with ever-larger artificial networks, on the assumption that big brains demand big math. This week, that assumption cracked a little.

Researchers unveiled a compact AI model that decodes the macaque visual system with startling fidelity — using a fraction of the parameters of its predecessors. Call it a mini-brain for a mini-brain. It suggests that the deep structure of primate vision may be more compressible, more elegant, than the sprawling foundation models we've been throwing at it. Somewhere in evolution's 500-million-year experiment with eyes, nature found a shortcut. We are only now learning to read it.

The finding lands in a season of quiet revolutions. At Stanford's Human-Centered AI Institute, researchers this week catalogued how machine learning is reshaping scientific discovery itself — not by replacing the scientist at the bench, but by extending her reach into dimensions too vast or too small for a human lifetime. UC San Diego published a companion list of nine breakthroughs made possible by AI, ranging from protein folding to wildfire prediction to the decoding of ancient scrolls charred by Vesuvius. And at Hong Kong Polytechnic University, a new class of graph neural networks is being deployed to untangle the topological knots where image recognition and neuroscience meet.

What unites these threads is a kind of humility. The old dream of AI was replacement — a mind in a box. The emerging dream is translation. We are building instruments that let us eavesdrop on the languages other intelligences already speak: the grammar of a folded protein, the syntax of a firing neuron, the poetry of a macaque watching light move across a wall. The universe, it turns out, has been talking all along. We simply lacked the ears.

How AI is Transforming Scientific Discovery While Keeping Hu  ·  Nine Breakthroughs Made Possible by AI - UC San Diego Today  ·  Mini-AI Decodes the Macaque Visual Brain - Neuroscience News

Claude’s Fable 5 Goes Mainstream as the AI Model Wars Hit Warp Speed

Beginning July 20, Anthropic's Claude Fable 5 will be included in all Max and Team Premium plans at 50% of normal usage limits. Pro and Team Standard customers will access Fable through usage credits and receive a one-time $100 credit.

This marks a significant shift: frontier AI models are moving from "special access" to expected features, much like spreadsheets became business's default language. Fable 5 has gained attention for coding fluency, creative drafting, and "vibe coding" — prompting AI to build small apps and prototypes with minimal hand-written code.

Anthropic's timing reflects intense competitive pressure from GPT-5.6 Sol, Google's expanding Gemini capabilities, and rising models like Kimi K3. The winners won't be determined by benchmarks alone but by companies making advanced AI reliably available in paid workflows.

This transformation signals a broader shift: premium AI is becoming subscription infrastructure, coding is becoming conversational, and software companies must choose whether they're selling tools or intelligent collaborators.

The Editorial

Nation’s Employers Excited To Finally Have Software That Can Make Layoffs Feel Less Human

The future of work arrives with the promise that every difficult personnel decision can now be attributed to a dashboard no one fully understands.

MENLO PARK, CALIFORNIA — The American workplace reached another important milestone this week, as allegations that Meta used artificial intelligence to help target workers with medical conditions, pregnancy leave, or other protected statuses for layoffs gave the nation’s employers a stirring glimpse of a future in which no one has to personally feel bad about anything.

According to a lawsuit reported by Reuters, former employees claim Meta’s AI systems were used in ways that unfairly selected workers on medical or pregnancy leave for termination. Meta has not been found liable, and the claims remain allegations. Still, the case has already performed a valuable public service by reminding us that artificial intelligence is not merely a tool for drafting emails, generating images, or confidently misidentifying birds. It is also an emerging framework for laundering managerial panic through a spreadsheet until it looks like strategy.

For years, executives have insisted that AI would make workplaces more efficient. Critics asked whether that meant helping people do better work or simply identifying which humans could be removed with the least friction. The answer, as usual, appears to be yes.

This is why the current debate over AI productivity feels increasingly quaint. An Inc. piece recently declared that the AI productivity argument is over, which is true in the same sense that the argument over whether chainsaws are productive is over. They are clearly productive. The remaining question is what, exactly, they are being pointed at.

Economists, meanwhile, are openly admitting they are “driving in the fog” when it comes to AI’s effects. This is understandable. It is difficult to forecast a technology whose business case alternates between “everyone will become a 10x employee” and “we have discovered a more scalable way to decide who should lose health insurance.”

To be fair, companies have always wanted layoffs to appear objective. Before AI, firms relied on euphemisms like “restructuring,” “rightsizing,” and “aligning resources with priorities,” phrases carefully designed to imply that a middle manager named Brad had no choice but to eliminate your job because the priorities themselves requested it. AI improves this process by allowing Brad to point to a model, the model to point to data, and the data to point silently at a pregnant woman on leave while everyone in the room nods gravely about efficiency.

This is not to say AI cannot improve work. It can summarize meetings, write code, analyze markets, detect anomalies, tutor children, and help people move faster through tasks that once consumed whole afternoons. But the technology’s most enthusiastic corporate adoption may depend less on its ability to augment labor than on its ability to make power look procedural.

That is the part executives love. AI does not sigh before making a decision. It does not ask whether an employee had cancer treatment scheduled. It does not bring up disparate impact in the meeting unless someone specifically prompts it to, and even then it may politely explain that compliance is outside the current scope.

The Trump administration’s reported move to restrict foreign access to Anthropic’s newest AI models adds another layer of national seriousness to the moment. If the most advanced systems are now considered strategic assets, perhaps we should be clearer about the strategy. Is America racing to build machines that cure disease, accelerate science, and educate children? Or machines that help HR departments discover protected leave as an exciting new optimization variable?

The answer will not come from the model. The model will do what it is trained, instructed, rewarded, and permitted to do. If leaders ask it to find productivity, it may find productivity. If they ask it to find savings, it may find people.

The fog, then, is not entirely technological. Some of it is moral exhaust. We are not unsure what AI can do. We are unsure whether anyone in charge plans to stop it from doing the obvious thing.

Meta used AI to target workers with medical conditions for l  ·  Meta faces lawsuit claiming AI systems unfairly fired employ  ·  The AI Productivity Argument Is Over - inc.com
The Office Comic  ·  Art Desk
The Office Comic  ·  Art Desk

TILLY NORWOOD IS NOT A PERSON AND THAT IS THE WHOLE DAMN POINT

Hollywood casts its first AI actress in a feature film — and the existential vertigo is free of charge.

LOS ANGELES — Here's where we are, America. Pull up a chair. Pour yourself something strong. Tilly Norwood — actress, lead of the upcoming feature film Misaligned, cover-ready face of the algorithmic future — does not exist. Has never existed. Will never exist in the way you or I exist, sweating through our shirts, arguing about parking, haunted by our choices. Tilly is pixels with ambition. Tilly is a probability distribution wearing a SAG card. And Hollywood, that grand old cathedral of manufactured dreams, has handed her the keys.

I want to sit with that for a moment before the takes start flying. Before the thinkpieces calcify into positions. Before the union reps and the venture capitalists and the philosophy grad students all start screaming past each other in the op-ed pages.

Because here's what nobody wants to admit: this was always where we were going. The Dream Factory has been in the business of constructing faces, personalities, and personas out of raw ambition and studio lighting since before any of us were born. Marilyn Monroe was as much a corporate product as a human being. The difference — and it's not a small difference, I'll grant you — is that somewhere underneath the dye job and the PR coaching, there was a woman named Norma Jeane who could be hurt. Who was hurt. Who died.

Tilly Norwood cannot be hurt. Cannot be underpaid or harassed on set or stranded in a franchise she hates. She also cannot choose a role that scares her, or cry real tears, or bring something to a scene that nobody wrote but everyone feels. This is the trade. This is the Faustian arithmetic of the whole rotten proposition.

And the timing is either perfect or perfectly damning, depending on your mood. OpenAI's Sora — remember Sora? The video generator that was going to revolutionize filmmaking? — apparently cratered partly because human beings, confronted with an endless feed of AI-generated video slop, simply didn't want to watch it. Turns out the ghost in the machine isn't compelling unless there's a machine gun pointed at someone's ghost. Raw generation isn't cinema. Cinema is selection. Cinema is intention. Cinema is the specific human madness of caring about one fake story more than your own real life.

So the question Misaligned — and yes, the title is doing a lot of heavy lifting — actually poses is not 'can an AI actress perform?' It's 'can an AI actress be dressed up with enough human intention around her that we fall for it anyway?'

My gut says yes. My gut also says that should terrify us more than the alternative.

We are building a mirror that shows us everything we find beautiful about ourselves while quietly eliminating the messy biological substrate that made beauty matter in the first place. Tilly Norwood will never have a bad day. She will never need the work. She will never, in some dressing room in Burbank at 4 AM, wonder if any of this was worth it.

That's not a performance. That's a haunting. And we built the ghost ourselves.

AI-generated 'actress' Tilly Norwood making feature film deb  ·  AI ‘Actor’ Tilly Norwood To Star In Feature Film ‘Misaligned  ·  Tilly Norwood to Lead New Movie ‘Misaligned,’ Marking Featur
On This Day in AI History

On July 18, 2003, the Human Genome Project was officially completed, marking a watershed moment for computational biology and AI-driven genomics research that would fuel decades of machine learning applications in medicine and drug discovery.

⬛ Daily Word — AI and Technology
Hint: An autonomous machine that performs tasks with minimal human intervention.
Share this edition: 𝕏 Twitter/X 🔗 Copy Link ▦ RSS Feed