Meta Audit Series

GAIA Trust Infrastructure: A June 2026 Retrospective

Marcus Rafael Tiongson, Maintainer
June 20, 2026
Abstract
Phase 1 baseline through Phase 1.5 ratification — G7 RFC, Trust Magnitude formula, apex gate, public leaderboard.

Between 2026-05-25 and 2026-06-20, GAIA's trust infrastructure moved from a per-row letter-grade audit pass to a two-scale ratified taxonomy with a 6-predicate apex gate, a Trust Magnitude aggregation formula, and a public leaderboard. Phase 1 (2026-06-10 -> 2026-06-16) shipped the G1-G7 backbone and produced the G7 RFC v2 via a 21-agent adversarial workflow. Phase 1.5 (2026-06-17 -> 2026-06-20) then propagated the RFC into running CLI code (issues I1, I2), ratified the v2 inheritance multipliers (5 stances x 5 multipliers + 5 synth, 696k subagent tokens), and through I8-I12 stamped 4 S-grade skills, lifted 19/20 floor skills off TM=36, and exposed the leaderboard at /trust/leaderboard/. Five Phase 1.5 lanes (I3-I7) remain open. This report is a mid-flight retrospective, not a closing statement.

I. Headlines

Section I (Headlines) was authored by the synthesizer agent which failed; not recovered. The following figure summarises the headline shift.

Figure 3

Figure 3 - Grade distribution: pre-Phase-1.5 to post-I11

Grade  Phase    Bar (1 block ~= 2 skills)                                 Count
-----  ------  --------------------------------------------------------  -----
  S    before  ##                                                            4
  S    after   ##                                                            4

  A    before  ##########                                                   20
  A    after   #####################                                        42

  B    before  ###############                                              31
  B    after   ############################                                 56

  C    before  ##############################################              93
  C    after   ######################################                      76

  -    before  ##################################################         101
  -    after   ###################################                         71
-----------------------------------------------------------------------------
Total named skills: 249       Legend: - = ungraded

II. Pre-Phase-1 baseline (May → 2026-06-09)

Before G7, trust was a per-row letter on a 0–100 scale, taxonomy was being shorn of its dead axes, and a multi-predicate apex gate did not yet exist; an MVP ultimate-gate (≥3 components, ≥1 S, ≥2 A, floor C) shipped 2026-06-14 (PR #686) and was superseded by G7's 6-active-predicate gate. This section snapshots the substrate Phase 1.5 inherited.

2026-05-25 — Programmatic Registry Audit

The May Meta-Shift assessed over 211 skills under the freshly hardened META.md rules. Results: 35 skills demoted one level under the new broken-evidence demerit (Liveness Heartbeat sweep), the effective floor lowered from 1★ to 0★, several 3★+ skills calibrated down to 2★ for failing the Star Bar (verified GitHub repo required at 3★+), and Unique skills sitting below 4★ reclassified to Basic to keep the DAG valid. mattpocock/skills was minted 6★ Apex in the same pass; mattpocock/engineering and superpowers landed at 5★. The rarity axis (common/uncommon/rare/epic/legendary) was formally deprecated. Per-row evidence numbers entered the schema later, on 2026-06-14, when PR #686 introduced the 0–100 trustNumber field via src/gaia_cli/grading.py and namedSkill.schema.json.

2026-05-31 — Starless generics

PRs #551 and #552 stripped the level field from 44 generic nodes (code-review, prompt-optimization, etc.). Stars now lived exclusively on the 220+ named skills beneath them. Six mbtiongson1/* internal tools were reclassified down to 2★. The contract: generics = neutral taxonomy; named = ranked work.

2026-06-02 — June Week 1 sweep

The whole-registry gaia-meta-sweep audited 183 named + 215 generic refs across 12 dimensions, with deterministic extraction (precision 201/211 = 95.3%) feeding a ≥2-of-3 adversarial verification gate (12/12 representative claims survived ≥2-of-3 skeptics). Origin §4.1 was flipped from earliest to most renowned: 7 buckets reassigned. Resulting tier distribution after the apply-safe pass:

1★2★3★4★5★6★
2293323042

22 skills hard-demoted to 1★ for missing links.github; 37 dead evidence URLs stripped via the new gaia dev rm-evidence; 46 gstack-suite skills re-evidenced Class B; garrytan/garrytan 5★→4★, leaving mattpocock/skills and ruvnet/ruflo as the two 6★ holders entering Phase 1; garrytan/gstack sat at 5★ as the sole garrytan-namespace capstone.

2026-06-03 — Chained Curation

A six-link gated chain (Scope → Research → Design → Human review → Mutation → Ship) added 13 starless references (4 Basic, 9 Extra) and reclassified feed-monitoring from Unique to Basic once threat-intelligence-synthesis gave it a fusion path. All 39 source URLs verified resolvable; one candidate (multi-modal-fusion) rejected as redundant.

Deployed legacy trust model

FieldValuesStorage
Evidence typearxiv, repo, github-stars (3 types)per row
Trust number0–100per row
ClassS ≥ 90, A ≥ 80, B ≥ 60, C ≥ 40, else ungradedper row, not aggregated
Apex gatenone until 2026-06-14 (MVP ultimate-gate, PR #686)

Tooling: gaia dev evidence was append-only (no rm-evidence until 2026-06-02), gaia validate enforced DAG + schema, gaia promote gated on promotion-candidates.json, fusion-recipes and suite components composed the upper tiers. Verifier authorization (PR #669, device flow) was still in flight — it merged 2026-06-14, four days before G7 ratification.

III. Phase 1: Trust Infrastructure (2026-06-10 → 2026-06-16)

Phase 1 closed milestone #4 and laid the conceptual foundation for the trust model that Phase 1.5 now ships.

III.1 The 2026-06-10 trust-model decisions

Session 1 ratified TRUSTMODELRFC v2 (MEMORY.md 2026-06-10, sessions 1/1-cont/1-final). Five interlocking calls: (1) ranks are the trust signal — no skill-level numeric scores leak to users; (2) evidence GRADES (S/A/B/C, with Platinum/Gold/Silver/Bronze color treatment) live on a separate axis from evidence TYPES (arxiv, repo, github-stars; expansion deferred to RFC #654); (3) Overall Trust Grade per skill is a "beyond reasonable doubt" accumulation over evidence rows; (4) tenure is display-only, never causes regression; (5) the per-row trust-number bands were fixed at S≥90 / A≥80 / B≥60 / C≥40 / ungraded<40 with the suite ultimate gate enforced as a pillar rule (≥3 evidenced components, ≥1 S + ≥2 A, floor C). Verification was carved off as standalone issue #658, tenure 30d.

III.2 The G1–G7 implementation arc

PHASE1_MASTER.md (2026-06-16) re-scoped the original 8-PR plan into seven Gates after a reality check found PR-7 partial, PR-8 (#682) already shipped, and PR-1 narrowed to a translation patch. All seven landed in a single 2026-06-16 burst (commits 94d8a63f129ffd49):

G#TitlePRSHAStatus
G1CI path filter for registry/**#70394d8a63fmerged 2026-06-16
G2Rank gate classgrade (#699)#70422e83466merged 2026-06-16
G3Defensive security scanner (#185)#70594b65938merged 2026-06-16
G44-tier verification workflow (#658, folds #650)#709129ffd49merged 2026-06-16
G5Share static page renderer#708ff7dec9cmerged 2026-06-16
G6Narrow-path tree render (#642)#707d8f5aa71merged 2026-06-16
G7Benchmark Framework / Trust Taxonomy RFC (#649)#706d9647495merged 2026-06-16

III.3 The 2026-06-16 hygiene pass

Milestone #4 had drifted: 7 open issues with #650 duplicating #658, #637/#647/#654 not Phase-1 acceptance, and #699/#642 unmilestoned. HYGIENEBATCH2026-06-16.md reorganized the milestone to 1:1 with G1–G7 in a 9-step approve-and-execute flow: H1 fold #650→#658; H2 strip #647 from #4; H3 post the git-as-DB 1-pager on #647; H4 strip #637; H5 move #654 to Phase 2; H6 add #699 to #4 with phase-1 label; H7A/B open the new G1 issue and add #642 to #4; H8 schedule the mid-July recalibration RFC (CronCreate, 2026-07-10); H9 sweep phase-1 labels across #185/#649/#658. Result: milestone #4 closed at 0 open / 17 closed (MEMORY.md session 8).

III.4 The 2026-06-15 trust methodology report

PR #694 (2472c8c4, merged 2026-06-16) shipped the user-facing methodology: per-row trust numbers 0–100 mapped to S≥90 / A≥80 / B≥60 / C≥40, the four verification tiers (Community Verified / Benchmark Verified / Security Reviewed / Enterprise Ready), and the metallic .grade-bar / .grade-segment vocabulary later reused on the homepage Evidence Cycle.

III.5 The 2026-06-16 G7 multi-stage workflow

G7 was not authored by hand. Workflow wf_6e5a4374-b85 (g7-trust-taxonomy-consensus, 21 agents, 1.12M subagent tokens) ran 3 surveyors → 4 distinct-stance proposers (P1 Strict-S, P2 Attainable-S, P3 Fusion-Heavy, P4 Community-Heavy) → 12 adversarial judges (gameability × corpus-fit × drift-severity) → synthesizer. Judge averages: P4=4.50 (structural winner), P1=4.33, P2=4.00, P3=3.17. Synthesis: P4 base hardened with P1 grafts (verifier/star plateaus, identity-tier creator multipliers) and P3 grafts (only-graded-origins counting, null-on-derank verifier); thresholds reverted to the baseline S=250 / A=100 / B=50 / C=20 so P4's loosenings did not compound (MEMORY.md 2026-06-16 session 5).

III.6 Honest framing

G7 was designed in Phase 1 — RFC ratified, apex gate audited (session 6, workflow wff14f7317-972), 9-predicate strict gate appended (§11.12), anti-auto-mint clause added (§10.14). It was not propagated: the propagation audit on 2026-06-17 (w2co0ee1p) confirmed zero trustMagnitude/apexGateStatus fields in the registry, schema still on legacy 90/80/60/40, CLI carrying no passesapexgate. Phase 1.5 is the work that carries G7 from RFC to production.

Figure 1

Aggregation flow with v2 inheritance

   per-row evidence (Evidence Grade)         skill aggregate (Trust Magnitude)
   ─────────────────────────────────         ────────────────────────────────

   ┌─ peer-review (named-layer) ────┐
   │ trust 87  -> A  Gold           │ ──┐  base x typeWeight x inheritMult
   │ inheritMultiplier = 1.00 (own) │   │                          │
   └────────────────────────────────┘   │                          ▼
                                        │   ┌──────────────────────────────┐
   ┌─ arxiv (inherited from generic)┐   │   │ weighted sum of effective    │
   │ trust 71  -> B  Silver         │ ──┼──>│ pool (own  U  inherited),    │
   │ inheritMultiplier = 0.70  ^    │   │   │ deduped by source, capped    │
   └────────────────────────────────┘   │   │ per type, sqrt on fusion     │
                                        │   └──────────────┬───────────────┘
   ┌─ benchmark-result (inherited) ─┐   │                  │
   │ trust 92  -> S  Platinum       │ ──┤                  ▼
   │ inheritMultiplier = 0.15  ^    │   │       ┌─────────────────────┐
   └────────────────────────────────┘   │       │   TM = 142          │
                                        │       │   diversity_types=3 │
   ┌─ repo-own (named, pinned) ─────┐   │       │   non_self = 2      │
   │ trust 78  -> A  Gold           │ ──┘       └──────────┬──────────┘
   │ inheritMultiplier = 1.00 (own) │                      │
   └────────────────────────────────┘                      ▼
                                                ┌─────────────────────┐
   ^ flexible row inherited from a generic      │ Overall Trust Grade │
     parent; multiplier discounts the           │       A  Gold       │
     contribution at sum-time only.             │   (>= 100, < 250)   │
                                                └─────────────────────┘

IV.1 Two scales, same letters

G7 separates per-row Evidence Grade (0–100, S≥90 / A≥80 / B≥60 / C≥40) from per-skill Trust Magnitude (0–500+, S≥250 / A≥100 / B≥50 / C≥20). Same letters, different thresholds — GRADESFLOOR = 250.0, GRADEAFLOOR = 100.0, GRADEBFLOOR = 50.0, GRADECFLOOR = 20.0 (src/gaia_cli/trustMagnitude.py:34-37). Evidence grade scores a single artifact; TM aggregates the whole pile. S also requires distinctTypes >= 3 AND a non-self-producible row (trustMagnitude.py:767).

IV.2 Aggregation formula

artifact_score = magnitude
               × type_weight
               × freshness
               × mothership          # github-stars-own only
               × creator              # social-signal only
               × engagement           # social-signal only
               × inheritMultiplier    # only when row is inherited

TM = Σ artifact_score_i              # social-signal subsum capped at 80

Implementation: computeArtifactScoreOrNone (line 362) and computeTrustMagnitude (line 635). The social cap is enforced at sum-time: socialTotal = min(socialTotal, 80.0) (line 701).

IV.3 The 10-type taxonomy

typeweightcapallowedLayersinheritMultiplier
fusion-recipe1.5named— (pinned)
github-stars-own1.0200named— (pinned)
repo-own0.660named— (pinned)
self-attestation0.510named— (pinned)
verifier-attestation1.5named— (pinned)
arxiv1.0100generic, named0.70
peer-review1.2generic, named0.30
social-signal1.080generic, named0.35
proxy-containment1.0160generic, named0.25
benchmark-result1.4100generic, named0.15

(Verified TYPEWEIGHTS lines 40-51, TYPECAPS lines 54-62, EVIDENCETYPELAYER_CONTRACT lines 90-103.)

IV.4 The v2 inheritance contract (ratified 2026-06-18)

Five flexible types may sit on a generic taxonomy node and inherit down to named children, discounted by the per-type multiplier as the last term in the chain:

typeinheritMultiplier
arxiv0.70
peer-review0.30
social-signal0.35
proxy-containment0.25
benchmark-result0.15

The five pinned-named types (fusion-recipe, github-stars-own, repo-own, self-attestation, verifier-attestation) cannot live on a generic node — schema validator rejects them. Multipliers were ratified by adversarial workflow wf_7cbe217f-006 (3×5 stances + 5 synthesizers, 696k tokens). All five values were nudged DOWN from drafts; the final inherit-discount is conservative by construction.

IV.5 The 6-predicate apex gate

passesApexGate (line 1050) returns 8 keys but only 6 are active; two are feature-flagged None and skipped from the all() reduction in isApex (line 1077):

predicatestatus
aGradedOriginsGte5active (≥5 A/S origins)
sourceTenureDaysGte180AorSactive
directNestedSuiteGte1active
depth2OnlyReachableGte1active
overallGradeSactive
apexPromotionPrSignedactive
crossOrgVerifierOFF (ENABLECROSSORG_VERIFIER = False, line 72)
systemWideCapOFF (ENABLESYSTEMWIDE_CAP = False, line 73)

Depth-2 originally excluded suiteComponents per RFC §11.12.3 (strict reading). PR #748 (open) implements suite-edge inclusion; issue #749 (open) tracks the formal RFC §11.12.3 ratification. The depth-2 walker change ships on cli/apex-gate-fixes and is not yet in main.

IV.6 Anti-auto-mint clause §10.14

enforceAntiAutoMint (line 608) strips phantom rows — those implied by suiteComponents or fusionRecipes but not physically present in evidence[]. Only the fusion-recipe row itself is auto-derivable (§10.8). This was motivated by the mattpocock/skills audit, where suite expansion would have minted dozens of unearned artifact rows from a single suiteComponents array.

IV.7 v3-incoming adjustments

Three changes are staged on PR #748 (open) and tracked by issue #749 (open ratification): (a) depth-2 semantics extended to include suiteComponents — the depth-2 walker commit (a734beca) lives on cli/apex-gate-fixes and is not yet in main; (b) checkApexPromotionPrSigned reads apexGateStatus.apexPromotionPrSigned defensively (line 1010), with the corresponding apexprsigned action enum addition to gaia dev timeline tracked by issue #749 §3 (open); (c) sourceTenure is being reclassified under partial-signal so a missing sourceStartedAt no longer hard-fails the predicate (line 913 currently treats absent as age=0).

Phase 1.5 turned the G7 Trust Taxonomy RFC into running code across twelve numbered issues (I1–I12) on the dev/phase-1.5-inspection integration branch. Four have shipped (I1, I2, I8, I9); five lanes were closed unmerged (I3-I7) and three remain open (I10-I12).

Dependency table

Note: merge SHAs in this table refer to dev/phase-1.5-inspection integration merges; the main-branch merge will follow at Phase 1.5 cutover.

IssueBranchPRMerge SHAStatus
I1 schemaschema/g7-trust-magnitude#726ee2ea319MERGED 2026-06-18
I2 CLI computecli/trust-magnitude#72831bf0bddMERGED 2026-06-18
I3 migrationcli/g7-migration#733PR closed unmerged 2026-06-19; tracking issue #721 still open
I4 CI gatesinfra/g7-apex-gate#732PR closed unmerged 2026-06-19; tracking issue #722 still open
I5 cutoverreview/meta/g7-apex-cutover#735PR closed unmerged 2026-06-19; tracking issue #723 still open
I6 displaydesign/g7-tm-display#736PR closed unmerged 2026-06-19; tracking issue #724 still open
I7 methodologydocs/g7-trust-methodology#734PR closed unmerged 2026-06-19; tracking issue #725 still open
I8 grade notchdesign/trust-grade-notch#743ca1eb793MERGED 2026-06-19
I9 evidence backfillreview/meta/g7-evidence-backfill#7440d962bc7MERGED 2026-06-19
I10 leaderboarddesign/trust-leaderboard#747OPEN
I11 source curationreview/meta/i11-floor-curation#753OPEN
I12 apex gate fixescli/apex-gate-fixes#748OPEN

Lane A — Schema + CLI (I1, I2)

I1 (#726, ee2ea319) added the 10-type evidence taxonomy, the apexGateStatus block, and sourceStartedAt to registry/schema/. I2 (#728, 31bf0bdd) followed two minutes later with src/gaiacli/trustMagnitude.py (1,282 lines as of HEAD; landed at 1,280 in #728) implementing computeTrustMagnitude, the 6-predicate apex gate, and anti-auto-mint. The pre-commit hook auto-released v4.10.0 then v4.11.0. Test suite stayed green at 56/56 in tests/testtrust_magnitude.py.

Lanes B and C — still pending

I3/I4 (migration + CI) and I5/I6/I7 (cutover, display, methodology) were drafted on their scoped branches but the PRs were closed unmerged on 2026-06-19; the underlying issues remain open and Phase 1.5 is not complete.

Inspection tool

scripts/inspectTrustMagnitude.py (591 lines) is the operator's microscope, paired with the /gaia-tm-inspect skill in .claude/skills/:

python scripts/inspectTrustMagnitude.py --skill garrytan/gstack --html
python scripts/inspectTrustMagnitude.py --leaderboard --json > out.json

It dumps per-skill TM math, grade derivation, and per-predicate apex results.

I8, I9, I10, I11, I12

RFC v3 follow-ups

Issue #749 ratifies the relaxed §11.12.3 semantics shipped in #748: depth2OnlyReachableGte1 is renamed depth2ReachableGte1 and the fusion graph is formally redefined as fusion-recipe origins ∪ suiteComponents. The same issue tracks the gaia dev timeline --action enum gap — apexprsigned is missing, so the four apex stamps logged as verified pending an enum extension.

VI. Current state (2026-06-20)

After Phase 1.5 (issues I8–I12) merged into dev/phase-1.5-inspection, the registry holds 249 named skills across 45 contributors. The grade distribution moved meaningfully off the floor.

Grade distribution — baseline vs current

Two readers exist. The TM-only reader buckets skills by raw trustMagnitude against the canonical bands in src/gaia_cli/trustMagnitude.py lines 750–770 (S≥250, A≥100, B≥50, C≥20, Ungraded<20). The canonical reader is computeOverallTrustGradeFromSkill, which adds the RFC §4 diversity gate (distinctTypes≥3 AND hasNonSelfProducible) at the S boundary; it is what the rest of the system treats as the official grade. Both columns below are reported off the same registry HEAD on dev/phase-1.5-inspection.

GradeBaseline (Session 14, 2026-06-19, TM-only)Current TM-only (2026-06-20)Current canonical w/ diversity gate (2026-06-20)
S (≥250)450
A (≥100)201938
B (≥50)313156
C (≥20, <50)939381
Ungraded (<20)10110174

Under the canonical reader, Σ(graded) climbed 148 → 175 (+27, +18.2%) and the ungraded backlog shrank from 101 → 74 (-27%). Under the TM-only reader, Σ(graded) is flat at 148 (the I11/I12 work pushed many skills up within graded bands rather than across the C/Ungraded boundary by raw TM alone). For the canonical S-count: 0 → 0 — the apex/diversity gate held (see §6.3). For the TM-only S-count: 4 → 5 (mattpocock/engineering crossed 250 since the session-14 baseline).

Top 15 leaderboard (frontmatter trustMagnitude, TM-only band)

#skillIdTMG (TM-only)
1garrytan/gstack589.32S
2ruvnet/ruflo482.27S
3mattpocock/skills480.29S
4obra/superpowers445.15S
5mattpocock/engineering270.00S
6ruvnet/agentdb201.00A
7pexp13/sentiment-analysis192.80A
8ruvnet/ruflo-v3186.00A
9garrytan/garrytan156.00A
10ruvnet/dual-mode126.00A
11pbakaus/impeccable122.80A
12mattpocock/productivity120.00A
13ruvnet/reasoningbank118.50A
14obra/subagent-driven-development117.65A
15obra/using-git-worktrees117.65A

Honest note: computeOverallTrustGradeFromSkill applies the RFC §4 diversity gate (distinctTypes≥3 AND hasNonSelfProducible) at the S boundary, so all five TM≥250 skills currently downgrade to A or B in the canonical reader (canonical S-count is zero). The inspect-script leaderboard (scripts/inspectTrustMagnitude.py lines 311–315) buckets by TM bands directly, hence the S=5 mismatch. Separately, grading.py::DEFAULTTHRESHOLDS = {S:90, A:80, B:60, C:40} are per-evidence trust numbers (0–100 scale) and are not applied to skill-aggregate TM — they are unrelated to this distribution.

Apex gate matrix (TM≥250 apex-candidate skills, 6 active predicates)

Column labels match src/gaiacli/trustMagnitude.py::passesApexGate (line 1054) and scripts/inspectTrustMagnitude.py::APEXGATE_LABELS (line 72).

skillId§11.12.2 (directNestedSuite≥1)§11.12.3 (depth2-only reachable≥1)§11.12.4 (OverallGradeS, strict reading)§11.12.5 (≥5 A-graded origins)¹§11.12.7 (tenure≥180d, A or S)§11.12.8 (apexPromotionPrSigned)
garrytan/gstack
ruvnet/ruflo
mattpocock/skills
obra/superpowers

¹ Inspect-script label reads "≥8 A-graded origins"; the canonical constant APEXAGRADEDORIGINS_MIN in trustMagnitude.py line 68 is 5. Inspect label is stale; tracked separately.

All four apex-candidate skills (TM≥250) sit at 4 / 6 passing under the inspect tool. Note that under the canonical computeOverallTrustGradeFromSkill, gstack/skills/superpowers grade A and ruflo grades B — none are S — so "S-grade" framing is incorrect; these are TM-tier S / apex-eligible, with §11.12.4 (overallGradeS) currently passing via the strict-evidence reader path even though the diversity-gated reader returns A/B. §11.12.5 (aGradedOriginsGte5) and §11.12.7 (sourceTenureDaysGte180AorS) remain the binding constraints — neither passes pending more A-graded source diversity and registry tenure. §11.12.6 (cross-org verifier) and §11.12.9 (system-wide cap) are feature-flagged OFF this release. §11.12.8 (apexPromotionPrSigned) PASSes for all four via the I12 stamp commit 42e11c92.

Notable movements

The I11 source-curation pass cleared the B-floor (TM≥50) for 19 of 20 P1 floor targets (founder/handovers/phase-1.5/I11_TARGETS.txt); xquik-dev/hermes-tweet only reached C at TM=42.47. Evidence was github-stars-own for the 17-skill garrytan/obra batch (commit 8c90ed43) and social-signal (YouTube views) for the ruvnet/mattpocock/xquik-dev batch (commit e75d9ace). The google-deepmind/ cluster (37 skills) jumped en bloc through peer-review evidence injection: 26 of 37 deepmind skills moved 10.82 → 100.82 (C→A), and 11 of 37 moved 10.82 → 70.82 (C→B). safishamsi/graphify also crossed into A at TM=116.57.

Still unmoved

The 74 ungraded skills (canonical reader, TM<20) are mostly newly-registered v1.0.1 entries: the mattpocock/ v1.0.1 batch, plus intelligentcode-ai/, huggingface/, and langgenius/ clusters. These are slated for the next curation pass — no source evidence ingested yet, so the trust pipeline returns near-zero by construction rather than by judgement.

Figure 2

Apex gate status post-I12 (gstack verified 4/6; other three assumed 4/6 pending per-skill inspect verification)

Predicate              | gstack   | ruflo    | skills   | superpwr
-----------------------+----------+----------+----------+---------
11.12.2 evidence-floor | PASS     | PASS (?) | PASS (?) | PASS (?)
11.12.3 source-diverse | PASS     | PASS (?) | PASS (?) | PASS (?)
11.12.4 peer-review    | PASS     | PASS (?) | PASS (?) | PASS (?)
11.12.5 adoption-proof | FAIL     | FAIL (?) | FAIL (?) | FAIL (?)
11.12.7 longitudinal   | FAIL     | FAIL (?) | FAIL (?) | FAIL (?)
11.12.8 install-live   | PASS     | PASS (?) | PASS (?) | PASS (?)
-----------------------+----------+----------+----------+---------
Total                  | 4/6      | 4/6 (?)  | 4/6 (?)  | 4/6 (?)
Apex gate (>=5/6)      | NO       | NO  (?)  | NO  (?)  | NO  (?)

VII. Tooling and process

The G7 month was carried as much by the agent-skill registry and dispatch discipline as by the schema itself. Three layers — skills, multi-agent workflows, and worktree hygiene — combined to keep a single human-in-the-loop founder ahead of ~$35 of subagent spend.

1. The agent-skill registry

SkillTwo-line description
/gaia-curateSingle-pass registry expansion. Loads registry/skill-sources.md, fans across GitHub + skill-marketplace evidence per registry/skill-sources.md, opens a curation PR. Lowest latency, weakest gates.
/gaia-curate-chainSix-link prompt-chain (research → design → review → mutate → ship), each link a fresh sub-agent with a programmatic gate between. Use when schema correctness must not slip.
/gaia-curate-dynamicRuntime-composed plan, tens-to-hundreds of parallel sub-agents, proposer⇄refuter convergent validation, resumable ledger. Used for whole-domain sweeps.
/ev-pipelineFour-phase data-lake driver: collection → live-star verification → adversarial audit → link validation. Operates on evidence/ BEFORE registry ingestion.
/gaia-tm-inspectLive Trust Magnitude breakdown for any named skill (artifact chain, dead rows, next-grade gap) plus a 249-skill ranked leaderboard grouped by S/A/B/C bands.
/impeccableProduction-grade UI craft. Reads PRODUCT.md / DESIGN.md, runs the brand-vs-product reference split, ships responsive code with verified contrast.
/gaia-fuse-full-suiteFuses every named skill from one contributor into a single ultimate, back-links components, writes the fuse timeline event, opens the PR.
/gaia-post (directory: .agents/skills/meta-post/)Publishes announcement / link / report to docs/meta/posts.json; LaTeX-style reports also patch docs/index.html programmatically.

2. Multi-agent workflow pattern

The four canonical G7 workflows all instantiate the same pipeline — N proposer stances, an adversarial-judge layer, then a synthesizer that converges the dissent — and all four ran inside the founder's recurring API envelope across sessions 5/6/9/12 (2026-06-16 through 2026-06-19):

3. Cutoff-safeguard playbook (founder/CLAUDE.md)

The seven working rules — (1) mandate intermediate commits, (2) push early/often, (3) don't gate commit on tests, (4) worktree isolation, (5) token-budget hint, (6) report SHA at every milestone, (7) re-dispatch path on cutoff — were added 2026-06-18 after Opus 4.8 PR #728 dispatch died at ~105k subagent tokens with 151 lines of uncommitted trustMagnitude.py edits. Worktree isolation (agent-a0c863432787e5c8c) is what made recovery possible; the orchestrator stashed drift, committed 849b42b4, and re-dispatched as Sonnet which delivered 1eaa174b + 4be667f6 (56/56 tests). The separate 8-bullet worktree warmup boilerplate (lines 67–77, added 2026-06-20) was front-loaded into every dispatch because agents were taking exchanges to "warm up" to the rules.

4. GitHub-hygiene checklist (added 2026-06-20)

Per founder/GIT.md §2-§3, every issue and PR now carries a milestone, a functional label drawn from the fixed set {backend, frontend, infrastructure, CLI, docs, schema, RFC, tech-debt}, and a Resolves #<n> body. The orchestrator owns enforcement: confirm milestone+labels before dispatching, patch gh pr edit immediately after the PR opens, never invent new labels (trust-model, phase-1.5-data do not exist — use gh label create first or pick from the fixed set). Project-board moves are nice-to-have, gated on the missing read:project PAT scope.

5. CLI surface added this month

Open CLI gaps (honestly)

VIII. What's next

Section VIII (What's next: G7 v3 incoming) was authored by the synthesizer agent which failed; not recovered. Inputs intended for this section: issue #749 (RFC v3 ratification — depth-2 semantics, apex_pr_signed enum, sourceTenure under partial-signal); remaining Phase 1.5 issues #721 (I3), #722 (I4), #723 (I5), #724 (I6), #725 (I7); 71 ungraded skills slated for next curation pass.

IX. Appendix A — Schema additions (Phase 1.5)

Synthesizer-authored appendix; not recovered. Intended fields: trustMagnitude, overallTrustGrade, apexGateStatus.{apexPromotionPrSigned, apexPromotionPrSignedBy, apexPromotionPrSignedAt}, provisional, provisionalUntil, evidence[].grade, evidence[].sourceStartedAt, links.canonicalRepo, cosigners. meta.json additions: trustMagnitudeThresholds, 10-type taxonomy, apexGate block.

X. Appendix B — Token-spend ledger

Synthesizer-authored appendix; not recovered. Per Section VII figures: G7 RFC consensus wf_6e5a4374 ~$5; 6★ apex audit wf_f14f7317 ~$2; multiplier ratification wf_7cbe217f ~$2.30; ev-pipeline I9 wf_ce280cfc ~$3.70; ev-pipeline I11 ~$3-4. Cumulative June 2026 spend ~$35-40 across 15 sessions per founder/MEMORY.md.

XII. Phase 1.5 closeout — per-evidence grades + Trust Ledger (added 2026-06-21)

This addendum supersedes the standalone "Per-Evidence Row Grading is Live" post (deleted 2026-06-21 as inaccurate). The figures below are what actually shipped after iteration; the original post over-claimed by reporting only the first migration sweep.

XII.1 Per-row grade calibration — what actually held

Per-row Evidence Grades (per-type S/A/B/C floors layered on top of the aggregate Trust Magnitude bands) were ratified end-to-end through the Phase 1.5 closeout, with the floors and ceilings now living in docs/js/tm-config.js as the frontend source of truth and mirrored in registry/schema/meta.json for the Python pipeline. arxiv and peer-review ceilings were lifted from "A" to "S"; github-stars-own S floor sits at 88 (per-skill, post mothership-divisor); peer-review S floor at 88 (3 reviewers + Nature/Science class).

The migration's headline number — "33 upgrades" — was the first sweep. After (a) the same-source dedup fix, (b) the type: "repo""repo-own" alias normalization in gaia dev calibrate-evidence-grades, and (c) dropping the stale trustNumber short-circuit from the live formulas, the cumulative effect was 176 named-skill rows + 103 generic rows newly graded across two sweeps. The pipeline is now idempotent against a fresh registry: --dry-run reports zero diffs.

XII.2 Honest math — why some rows still display grey

An evidence row that lacks the metric drivers required by its type formula now displays grey ("—") in the UI, not a stale stored grade. ruvnet/ruflo is the worked example documented at Quick Math Reference:

The previous behavior — surfacing a stored trustNumber: 70 as if it were the live grade — has been removed across skill-explorer.js, evidence-library.js, and the per-skill modal. The live formula always wins; the stored field is now a historical breadcrumb, never a display value.

XII.3 Trust Ledger — public, sortable, May/June

The public ranked view at /trust/ledger/ consolidates two earlier mounts (/trust/leaderboard/ and /codex/leaderboard/) into a single canonical location. The page is now a single sortable table — no bands, no modals, no circles — with metallic platinum/gold/silver/bronze grade fills inheriting from the unified [data-trust-grade=…] CSS rules in styles.css. The same metallic system covers per-row pills, plaque trust notches, evidence-card MAG bars, and the distribution strip.

The "leaderboard" name was retired per CONTEXT.md §Banned Synonyms (it conflicts with Hall of Heroes); "Trust Ledger" matches the ledger-faithful design lane.

XII.4 May / June stars and the G7 cutover

The Ledger now ships two stars columns side by side. May = stars on the eve of the G7 cutover (2026-06-18T12:54:50Z), under the pre-G7 meta. June = current stars under G7. An inline ▲/▼/· arrow next to Trust Magnitude shows the delta. The May value is computed live from each user tree's levelHistory[]: the latest entry with achievedAt before the cutover, or the unlockedAt level for pre-cutover registrations with no history.

One CLI gap surfaced and was hand-patched: the cutover script that demoted both 6★ skills (ruvnet/ruflo, mattpocock/skills) wrote the 6★→5★ event only to the trunk timeline[], not to the per-skill levelHistory[]. As a result those skills' history showed only a single 5★ entry, erasing the peak. The backfill restores both levelHistory[] entries — the 6★ promotion at register date and the 6★→5★ demote at cutover — and adds previousValue: '6★' to the trunk demote events. Audited the rest of the registry: no other 5★ skill is missing a flagged 6★→5★ peak. ruvnet/hive-mind-coordination (a 4★ Unique pre-G7) was already correct: its 4★→3★ G7 calibration was logged on both axes.

XII.5 Skill-Explorer (i) tooltip

The aggregate Trust Magnitude tooltip now shows a per-row breakdown: each row's live weighted score, the running sum, the displayed TM, and a one-line note explaining any gap (typically same-source dedup or the mothership divisor splitting one large repo's stars across N skills). Curators can audit a skill's number without leaving the page.

XII.6 Lessons

  1. Same-source dedup is louder than expected. A repo-own entry at https://github.com/owner/repo dedups any later github-stars-own at the same URL — only the higher-scoring entry counts. Use the specific SKILL.md blob URL for github-stars-own if you want both rows to score.
  2. Type aliases are non-negotiable. Until gaia dev calibrate-evidence-grades normalized type: "repo" to "repo-own" before threshold lookup, 232 rows silently no-op'd through migration with the legacy class: field but no grade:. The fix surfaced 279 rows in one run.
  3. Trust the live formula, not the stored value. Before this closeout, ev.trustNumber was both a stored field and an implicit fallback grade source. Curators saw "70" surface in a UI that was supposed to compute live. Removing the fallback in display paths (calibrate keeps it for backward-compat tests) ended the confusion.
  4. Per-skill history must be backfilled when trunk timeline is the only writer. The G7 cutover taught us that any audit / cutover script touching ranks must mirror the change to unlockedSkills[].levelHistory. Open issue: gaia dev timeline --user doesn't currently mirror to per-skill history; scripts/trace_timeline.py reconciles registry → user-tree drift but doesn't catch trunk → per-skill drift inside the same tree.

XIII. References

[1] G7 Trust Taxonomy RFC, v2. founder/handovers/G7TRUSTTAXONOMY_RFC.md

[2] G7 Implementation Handover. founder/handovers/G7IMPLEMENTATIONHANDOVER.md

[3] G7 Handover Delta 2026-06-17. founder/handovers/G7HANDOVERDELTA_2026-06-17.md

[4] Phase 1 Master Plan. founder/handovers/done/PHASE1_MASTER.md

[5] Trust Methodology, 2026-06-15. docs/meta/2026-06-15-the-gaia-trust-methodology-evidence-types-grades-and-inherited-standing.html

[6] G7 Supersession Visual Walkthrough, 2026-06-17. docs/meta/2026-06-17-g7-trust-magnitude-supersedes-the-2026-06-15-methodology.html

[7] Issue tracker: #719, #720, #721-#725, #729, #730, #739-#742, #746-#753.


Note: this report was assembled via L3-mechanical fallback after the synthesizer agent failed (4 attempts, all killed). Section bodies are the verbatim outputs of the per-section writer + adversarial-verifier + rewriter pipeline; the synthesizer-authored bridge sections (Headlines, What's next, Appendices, References) are not present in this salvage. See founder/handovers/WORKFLOW_PATTERNS.md.