Readiness register
What must be true for the programme to be in control of itself, in five layers ordered by dependency rather than by subject. Each layer is a precondition for the one after it: a condition in a later layer cannot be meaningfully closed while an earlier one is open.
26 of 35 conditions are open. The measured ones are computed against the database each time this page is loaded; nobody can mark them met. The asserted ones name who read what, and when — or say that nobody has yet.
L1 IDENTITY · 7 of 10 open · the layer in front
Can the programme say what it is?
1 of 3 recorded vocabularies in force · measured · Board · FD-2026-09-03; reference_epochs
Two epochs are recorded. E1 is in force; E2 is the vocabulary the founder decision adopts but the standards suite has not yet been rewritten to express.
7 of 7 methodologies carry a family code outside vocabulary E1 · measured · Board · methodologies.family against methodology_families of the in-force epoch
Today every methodology carries an E2 code while E1 is in force. The project wizard hid this by stripping the MCC_ prefix before display, so an E2 code rendered as an E1 code.
0 of 10 family rows name no vocabulary · measured · Administration · methodology_families.epoch_code
The five E1 rows carry no epoch_code at all, which is why L1.2 cannot presently find a single conforming methodology.
0 of 4 methodologies open for application carry MCC_HYB, abolished by FD-2026-09-03 D1 · measured · Board · FD-2026-09-03 D1; methodologies."creditType"
Restated on 8 September. It read "no methodology carries" and failed on two RETIRED rows that still record MCC_HYB. Erasing an abolished code from a retired row would rewrite the record of what the Programme once offered, which is the opposite of what this register is for; the live question is whether anything a project could apply under carries it. The two retired rows are recorded in the code register instead.
3 of 7 registered methodologies are described by no instrument in the corpus: MCC-M004, MCC-M005, MCC-M006 (a register row is not a methodology) · measured · Administration · methodology_provenance, from the corpus read of 8 September 2026; document_register; code_register
Measured from 9 September 2026, having been asserted the day before. The finding is unchanged: M004, M005 and M006 are described by no instrument in the corpus. Each is RETIRED with no project, and each exists as a name, a family code and a status on a register row and nowhere else. The reason this is recorded rather than derived matters. The obvious measure - look for the code in an instrument - gives the wrong answer confidently. MCC-200 v2.0 cl. 0120 does use M004, for Coral Reef Restoration and Sequestration, while the register holds M004 as the Kelp Forest to Biochar Pathway. The code is described; the methodology is not. That is the same failure L1.10 made by comparing printed names as strings, and the remedy is the same: a recorded judgement with its reasons. M001, M002 and M003 are described by MCC-F01 M001-M003 v0.2, a candidate draft. M008 is described by MCC-M008 v1.1, in force and adopted by FD-2026-09-01 - the only one of the seven whose describing instrument is in force rather than draft. The condition asks for description, not adoption, so the drafts count. A methodology with no corpus read recorded against it fails this condition rather than passing by default: silence is not description.
1 of 1 code(s) carried between vocabularies do not denote the same body: STANDARDS_COMMITTEE (E2: DIFFERENT) · measured · Board · governance_bodies (epoch-keyed); governance_appointments.epoch_code; MCC-700 v3.1 cl. 4.2; MCC-700 v4.0-draft cl. 4.6 and Decision Matrix rows 2-5
Re-measured 9 September 2026. The earlier measure counted any code appearing on more than one row of governance_bodies. That register is keyed by vocabulary epoch, so a code carried through a rename appears twice by design, and the measure was penalising the only code that survived unchanged. Every other body was renamed between E1 and E2: GOVERNING_BOARD to INDEPENDENT_GOVERNING_BOARD, SAFEGUARDS_PANEL to SAFEGUARDS_AND_RIGHTS_PANEL, REGISTRY_OVERSIGHT_AUTHORITY to REGISTRY_OVERSIGHT_COMMITTEE, REVIEW_AND_APPEALS_AUTHORITY to INDEPENDENT_APPEALS_PANEL. No code names two bodies inside one vocabulary, so on the register's own terms the old measure's finding was an artefact. The accident was pointing at something real. STANDARDS_COMMITTEE IS NOT THE SAME BODY IN THE TWO VOCABULARIES. MCC-700 v3.1 cl. 4.2.1 makes it responsible for the APPROVAL of all technical standards, methodologies and programme rules, with nine members in stated quotas deciding by simple majority. MCC-700 v4.0-draft cl. 4.6 makes it a body that RECOMMENDS, after public consultation and with written reasons, with approval reserved to the Independent Governing Board at rows 2 to 4 of the Decision Matrix and retained by the committee only for minor and technical revisions at row 5; composition becomes an independent technical majority rather than a quota. A body that approves methodologies and a body that recommends them to someone else are not the same body. Both rows print the same name, which is why the identity is recorded in a column rather than compared as a string - the trap L1.10 fell into on 8 September, when comparing printed names reported 7 of 7 conflicts where the true figure was 5 of 7. The measure now has three limbs: no code names two bodies within a vocabulary; a code carried between vocabularies is recorded SAME, DIFFERENT or NOT_DETERMINED with reasons, and anything but SAME fails; and every appointment names a body its own vocabulary contains. The third limb is new and is now satisfied by construction. Appointments carried a bare body code. Both existing appointments cite GOVERNING_BOARD, which exists in E1 and DOES NOT EXIST IN E2 AT ALL. Today that resolves because E1 is in force; on the day E2 commences those appointments would point at a code outside the vocabulary and nothing in the record would say so. governance_appointments now carries epoch_code, backfilled to E1 on the evidence of the appointing instrument (GB-2026-001 under FD-2026-08-24, decided under MCC-700 v3.1), NOT NULL, and a foreign key to (epoch_code, code) so the case cannot recur silently. What remains for the Board: STANDARDS_COMMITTEE is contested on a second front already recorded at L1.8 and L3.2. MCC-001 v2.0 never uses the name - it vests standard-setting in the Methodology Review Committee - while MCC-700 uses it and MCC-001 cl. 0084 gives the Tier 1 name precedence. This condition does not turn on that; it turns on the fact that one code is doing duty for two different bodies across the vocabularies, and the record now says so.
3 of 7 methodologies are not shown to sit in the family that names their activity (0 filed against a family that does not name it, 3 described by no instrument, so not placeable): MCC-M004 NOT_DETERMINABLE, MCC-M005 NOT_DETERMINABLE, MCC-M006 NOT_DETERMINABLE · measured · Board · methodology_family_fit, from the corpus read of 9 September 2026; MCC-100 Annex - Definitions Register v1.0 s2; methodologies
THE PREVIOUS NOTE ON THIS CONDITION WAS WRONG AND IS REPLACED. It read: "M008 is gear recovery, filed MCC_F04 (pollution prevention and removal) while MCC_F03 (fisheries and fishing-gear interventions) names the activity." That description of F03 is the E2 vocabulary, seeded from FD-2026-09-03 item D2, which the epoch table records as not in force. Under the taxonomy that governs, the Definitions Register v1.0 s2 gives F04 plastic, GHOST GEAR, nutrient run-off and marine debris - the activity named in terms - and F03 sustainable fisheries and aquaculture and habitat protection. The served F04 guidance names M008 as the family reference methodology. The served F03 guidance mentions gear only as gear restrictions on fishing effort and as diving equipment, never recovery. M008 SITS CORRECTLY, and the two drafts that would move it to F03 are not in force. The Definitions Register governs because it is Tier 3 under MCC-001 cl. 0081, because MCC-001 cl. 0084 resolves conflict in favour of the higher tier, and because MCC-100 cl. 0012 incorporates it by reference. MCC-200 is Tier 4; the Buffer Policy and the SDCF are Tier 5; MCC-400 and the Applicant Terms are placed in no tier at all. The answer, recorded per methodology with its activity and evidence: FOUR OF SEVEN FIT. M001 mangrove, M002 seagrass and M003 salt marsh each sit in F01, which names their ecosystem; M008 sits in F04, which names ghost gear. THREE CANNOT BE PLACED - M004, M005 and M006, the same three L1.5 records as described by no instrument in the corpus. A methodology whose activity cannot be established cannot be shown to sit in the family that names it, so they fail this condition rather than being excused from it. This was never a decision for the Board. Reading the register against the instruments is administration. What the Board decides is what follows: whether M004 to M006 are struck from the register or given describing instruments, and whether the F02 seagrass references in MCC-400 art. 32 and the Applicant Terms fee key are corrected or the Register is. Recorded so the Board is asked that question and not this one.
18 of 21 served codes carry more than one meaning · measured · Board · contested_codes; code_register
The register records every meaning with its source. A code with two meanings does not identify anything, and no rule written about it can be complied with or breached determinably.
4 of 18 contested codes map to more than one successor, so no mechanical migration of them exists · measured · Board · contested_codes.distinct_successors
This is the condition that decides whether the codes can be kept. Where a code maps to more than one successor there is no function from the old code to the new one, only from the old code plus the document it was read in — so no mechanical migration exists and re-lettering is the only resolution.
5 of 7 registered methodologies sit on a code the standard in force gives to a different methodology · measured · Board · code_register, METHODOLOGY rows against the methodologies register
Five of the seven registered methodologies - M003, M004, M005, M006 and M008 - sit on a code the standard in force gives to a different methodology. PAR-2026-001 WP-J s.2.1 states this as "every code from M003 to M008", which is six codes and overstates its own table by one: M007 has no registry row at all, so that code denotes nothing in the register rather than something different. The same paragraph says four of the ten locked codes have no row when its table shows three - M007, M009 and M010. Corrected here on 8 September 2026 after an adversarial check; the measurement was always right and only the prose was inflated. Until this closes, whether FD-2026-08-24 item D14 complied with MCC-200 cl. 0118 is not answerable, because M004 does not identify a methodology.
L2 CORPUS · 5 of 7 open
Can the programme say what its rules are?
12 of 25 documents in force cannot be shown to have been adopted as served: 8 have no instrument anywhere, 2 have an instrument that is unsigned, 2 have an instrument adopting an earlier version than the one registered. Documents: MCC-001, MCC-100, MCC-200, MCC-400, MCC-700, MCC-800, MCC-850, MCC-BPM, MCC-CADCP, MCC-ESS, MCC-HCA, MCC-SDCF · measured · Board · document_register.provenance_state, from the corpus read across all five surfaces, 8-9 September 2026
Measured from provenance_state from 9 September 2026. It was measured from adopting_instrument IS NULL, which answers whether a field is filled in rather than whether the Programme can show it decided to serve the document. The count was the same twelve; the finding was not. THE TWELVE DIVIDE INTO THREE STATES CALLING FOR THREE DIFFERENT ACTS. Eight have no instrument anywhere: MCC-001, MCC-200, MCC-800, MCC-BPM, MCC-CADCP, MCC-ESS, MCC-HCA, MCC-SDCF - the rulebook, the methodology standard and five policies, all served as binding. Two have an instrument that is unsigned: MCC-400 v1.1 and MCC-700 v3.1, both resting on MCC-BDR-2026-002, which is the record L2.2 and L2.3 turn on. Two have an instrument that adopts an EARLIER VERSION than the register carries: MCC-100 Am.1 adopts into v2.1 against a registered v2.2, and the MCC-850 amendments adopt into v1.1 against a registered v1.2. Those two version numbers were advanced editorially, which is the practice FD-2026-08-24 item D16(a) forbids. A document served as binding with nothing adopting it is a document the Programme cannot show it decided to serve. The remedy differs by state: eight need an instrument taken now, two need signature, and two need the served version instrumented or the register corrected to the instrumented version. The public instruments page says three cite MCC-BDR-2026-002 and the remaining nine cite nothing anywhere. The column says four and eight, about the same twelve rows. The column is right and the banner is corrected separately.
2 of 8 recorded decisions are unsigned: FD-2026-10-01, MCC-BDR-2026-002 · measured · Board · decision_register.signed_on
THE ONE UNSIGNED DECISION IS MCC-BDR-2026-002, and it is named here because the measure reported a count without one. It is dated 17 August 2026 and records a meeting of the Governing Board; the Governing Board was constituted on 26 August 2026, nine days later, by GB-2026-001. Attendance, apologies, chair, quorum count and voting tallies are blank. A SIGNATURE IS THE WRONG REMEDY. Signing it would attest that a board meeting occurred on a date when the board did not exist. The defect is not that the record is unsigned but that the meeting it records could not have occurred as described, and signature would convert a defective record into a false attestation. What it carries matters: it is the only adoption evidence for MCC-100 Am.1, MCC-850 Am.1 and Am.2, and MCC-400 Add.1. Disposing of it therefore cannot be a bare withdrawal - the four instruments must be re-based in the same act onto FD-2026-08-24, which GB-2026-001 item 2 ratified as to substance, or L2.1 worsens by four documents. The determination is drafted as MCC-REC-2026-001 and is complete to the signature block: the facts sourced, the re-basing resolved instrument by instrument, the stays under FD-2026-09-03 item D8 expressly preserved, and the search that establishes the record carries four instruments and no more set out so it can be repeated. It cannot be signed by the Board of two. It disposes of a record prepared in the founder's sole-officer period and bearing on his own conduct, so MCC-ROI v1.0-draft cl. 11.14 applies in order and limb (b), cure by appointment, is available: it is taken by a Board of three after the appointment resolution of MCC-QUO-2026-001, and not before. Preparing it needs no appointment; signing it does. See L2.3: it is the same record.
1 of 2 board decisions record no quorum: MCC-BDR-2026-002 · measured · Board · decision_register.quorum_recorded
THE ONE BOARD DECISION WITH NO QUORUM RECORDED IS MCC-BDR-2026-002 - the same record as L2.2, which the register did not previously say. The other board decision, GB-2026-001, records quorum. An unsigned board decision with no quorum recorded cannot be shown to have been taken by the board. Here it is stronger than that: the board that is said to have met on 17 August 2026 was constituted on 26 August 2026, so no quorum of it could have been present, and filling in the quorum field would be recording something that did not happen. L2.2 and L2.3 close together or not at all, on the same determination, which is MCC-REC-2026-001.
0 of 147 migration files are unclassified · measured · Administration · migration_ledger.state
UNKNOWN means nobody can say whether the file ran. Twenty-three of the open rows create no database object at all (grants, policies, data), so they need a different kind of evidence than the rest.
the served files contradict the register: probe run 2026-11-03 13:24 UTC from github-actions: 182 probed, 174 held, 8 failed - SD-078 (CORRECTED): expected /submission onward/ PRESENT in FILE of apps/web/src/app/page.tsx; SD-080 (CORRECTED): expected /took up the foundational decisions/ PRESENT in FILE of apps/web/src/app/page.tsx; SD-108 (CORRECTED): expected /FD-2026-08-24 was taken up for ratification at GB-2026-001 item 2/ PRESENT in FILE of apps/web/src/app/news/page.tsx; SD-109 (CORRECTED): expected /which has never been constituted; M001/ PRESENT in FILE of apps/web/src/app/news/page.tsx; SD-110 (CORRECTED): expected /this codification carries no Board ratification/ PRESENT in FILE of apps/web/src/app/news/page.tsx; SD-111 (CORRECTED): expected /Two projects have been submitted and are under review/ PRESENT in FILE of apps/web/src/app/news/page.tsx; SD-112 (CORRECTED): expected /this item previously credited the Claims and Use of Credits Policy/ PRESENT in FILE of apps/web/src/app/news/page.tsx; SD-120 (CORRECTED): expected /submission onward/ PRESENT in FILE of apps/web/src/app/about/page.tsx · measured · Administration · served_defect (71 rows on 10 September 2026, from the sweeps of 8 September (PRs #288, #291, #294), the corpus search of 4 September, the named-third-party pass of 7 September, PAR-2026-001, PAR-2026-002 and the document face read (L2.7)); served_defect_probe_runs, written by apps/web/scripts/check-served-defects.ts on every Schema drift run
Measured from 10 September 2026. The two notes below this one, of 8 September, recorded what two sweeps found and what a third had missed; they are kept as the history of the finding and this note is the measurement. Every known defect in a served surface now has a row: what it is, who found it, its state, whose act closes it, and a probe that a machine runs against the served file daily to show the state is still true. The statement is read plainly: a defect under notice is still served and still known to be wrong, so NOTICED counts against the condition as OPEN does. This condition therefore FAILS until the last notice is lifted by amendment, determination or withdrawal, and it is meant to. What the register shows on the day it was written: no defect is served without a notice; 55 are served under notice; 16 are corrected in the body of the file, and every probe holds. Of the 55, 8 close by an act of administration and are the next thing to do - the F03 livelihood figure, the quick start budget, timeline and Indonesian-tuna lines, the F01 credit-type list in the quick start and in the F01 guidance itself, and two tonne-denominated descriptions of the MCC-MCU in F01 and F02 - because a reader copies the figure, not the notice, which is the reasoning PR #294 applied to the links; 25 wait on a methodology determination that MCC-001 cl. 0045 gives to a Methodology Review Committee that MCC-MRC-2026-001 and -002 would constitute; and 22 sit in adopted instruments or fee and family boundaries that only the Governing Board can amend, and are before it on 23 September 2026. One thing the register makes visible that no note did: three of the six guidance files were withheld from publication on 25 August 2026 by the Programme's own errata and are served today under notices. Whether to keep serving them so, or withdraw them, is a decision for the Board and is added to the board paper at G3. The probes are deliberately narrow. A CORRECTED row proves its text is gone from the body below the notice; a NOTICED row proves its notice is still served. Neither proves the notice is right - that is what the sweeps and the audit papers are for - and a probe that passes says only that the file has not drifted from the register since a person last read both. Re-asserted 8 September 2026 after a line-by-line check of every served applicant guidance file. ALL SIX CONTAIN AT LEAST ONE NUMERIC OR DIMENSIONAL ERROR; none is clean. The two most serious are not arithmetic. First, MCC-HYB is offered as a credit type in three places - the quick start offers it in three of its five methodology branches, F01 defines it and designates its worked example with it, and F02 recommends it - after founder decision FD-2026-09-03 item D1 abolished it with no successor unit. The registry refuses it and the applicant portal already closes F02 and F05 on that ground, so the platform and the guidance disagreed and an applicant reading the guidance would have designed a project the portal will not accept. Second, F01 and F02 describe the MCC-MCU as approximately one tonne of CO2e plus co-benefits, which is the tonne-denominated claim the Claims Policy correction of 6 September 2026 records the Programme may not make. The arithmetic, largest first: F01 s4.2 divides a per-hectare leakage rate by a whole-project rate, understating leakage by a factor of one hundred - 0.4 per cent where it is 40.9 - so issuable credits fall from 764 to 454 tCO2e a year and the thirty-year total from 22,920 to 13,618, the published figure being 68 per cent too high. F02 s6 multiplies a carbon stock by thirty years and labels Mg C as Mg CO2e, overstating by a factor of eight, and its only worked example quantifies coral reef carbon, a pathway MCC-200 v3.0-draft cl. 13.12 suspends and whose sign the Programme has already recorded as wrong. F05 labels Mg C as Mg CO2e through section 7 while section 3 of the same file converts correctly, doubles a recovery rate, and twice reports a per-year figure as a thirty-year total. F04 lists a twenty per cent incinerated fraction in the example it offers as the remedy for a failing project and then omits it from the balance; corrected, the remedy is net negative too, so the document has no worked example that produces a positive result. F03 alone survived: its emissions chains were recomputed in full and are sound, and only its livelihood support figure was wrong. Beyond those, several contradictions that arithmetic cannot resolve: F01 section 10 states two baselines differing by a factor of 9.4 and five further internal contradictions; F05 gives three different MPA buffer rates; the quick start fee table names families that do not exist and puts F01 seagrass and kelp projects in two fee bands at once. WHY THE EXAMPLES ARE WITHDRAWN RATHER THAN REWRITTEN: where arithmetic forces one answer the corrected figure is published and may be relied on; where the document contradicts itself, arithmetic cannot say which figure was intended, and that is a methodology question. MCC-001 cl. 0045 requires a Methodology Review Committee to settle it and none has been appointed, which is L3.2. Publishing replacement examples with nobody competent to check them would repeat the failure being corrected. Carried forward from the earlier assertion and not re-verified in this sweep: the served F01 guidance was recorded as contradicting the methodology text, which forbids ex-ante issuance. These are guidance templates and not adopted instruments, so they are corrected in place, as the VVB directory listing was on 7 September 2026. ADDED 8 SEPTEMBER 2026, LATER THE SAME DAY. The sweep above searched the platform repository and not the folder holding the instruments in force and the audit papers, and it missed five things. First and worst: all six guidance files still send applicants to mcc-registry.org/apply and carry addresses at mcc-credits.org. The Programme recorded on 4 September 2026 that both domains return NXDOMAIN and have never been reachable; that sweep covered the served markdown and the instruments served as files and never reached /templates, and the /templates pass of 7 September corrected only a directory of verification bodies. THE APPLICANT PORTAL URL HAS NEVER RESOLVED, and two sweeps went past it. Second, there are eight safeguards principles and not nine (ESS Policy v1.0 cl. 0011, in force); F01 says nine twice and F02 and F05 once each, and the sweep had said the safeguards sections were unaffected. That sentence is struck in both files rather than deleted. Third, MCC-100 v2.2 cl. 0183.1 assigns F01 the MCC-CC unit, so F01 offering MCC-HYB was outside the Standard before the abolition of 3 September, not only after it. Fourth, illustrative credit prices are served in F01, F05 and the quick start; price is not a programme parameter and a printed figure reads as one. Fifth, an unadopted errata instrument already covers F01, F02 and F05: Applicant Guidance Errata and Clarifications No. 1, prepared 25 August 2026, which found the same leakage error and reaches the same 40.9 per cent, and which records that THOSE THREE GUIDANCES WERE WITHHELD FROM PUBLICATION ON 25 AUGUST 2026 because of these errors. They are being served. The errata cannot be adopted as drafted: it treats MCC-HYB as a live unit for F02 and F05, it asks a determination of a Standards Committee that MCC-001 does not create, and it cites MCC-700 s10.1.1 as the Board's power to act in an unconstituted body's place - the Pilot Phase clause six served surfaces have already been corrected for citing that way. Where the errata and today's notices give different corrected figures they answer different questions: the notices carry the published example through to its own conclusion, the errata redesigns it so that it would pass. On F02 the errata is the better answer because it also corrects the stock - 85 Mg C/ha is a mature reef and the site is at 15 per cent cover - giving about 2,600 credits over thirty years rather than 5,200 or the published 42,000. That is recorded and not substituted, because neither instrument is adopted. This is the incomplete-search failure the Programme had recorded at least seven times by 4 September 2026, committed again by the same means: searching one folder rather than the corpus.
every function's newest definition in the repository matches the database: 115 checked, 2 known divergence(s) recorded in the baseline with reasons; run 2026-11-03 13:24 UTC from github-actions · measured · Administration · function_drift_runs, written by apps/web/scripts/check-function-drift.ts on every run; function-drift-baseline.json
Measured from 10 September 2026. Until that morning this condition could not have been measured by anyone: the script that answers it had never been able to run. The Schema drift workflow reported two green runs with its three checks skipped for want of secrets; when the secrets were set, the scripts could not start because their compiler options were unquoted; when that was fixed, the runtime was Node 20 and the Supabase client could not be constructed; and when that was fixed, one of the three sibling checks passed on an empty set. Four layers, each hiding the next. The first real run reported 99 functions checked, none diverged, two known divergences recorded in the baseline with reasons - validate_batch_ca_update, deliberately absent, and mcc_readiness_measure, which diverges from its newest CREATE by construction because eight migrations patch it in place and a tree run in order reproduces production. The measure reads the most recent recorded run. It refuses a run older than 48 hours: a daily check that has not run in two days reports NOT_MEASURABLE, not a stale PASS. That refusal is the point. The condition was asserted for three days on the strength of a check nobody had watched run.
13 of 25 documents in force say something about themselves the record does not bear out: 6 are contradicted by the record, 7 assert an approval no instrument evidences. MCC-001 UNEVIDENCED, MCC-100 CONTRADICTED, MCC-100 Am.1 CONTRADICTED, MCC-200 UNEVIDENCED, MCC-400 CONTRADICTED, MCC-700 CONTRADICTED, MCC-800 CONTRADICTED, MCC-850 CONTRADICTED, MCC-BPM UNEVIDENCED, MCC-CADCP UNEVIDENCED, MCC-ESS UNEVIDENCED, MCC-HCA UNEVIDENCED, MCC-SDCF UNEVIDENCED · measured · Board · document_face, read from the served files on 8 September 2026; document_register; decision_register
This condition exists because L2.1 was passing documents whose covers are wrong. L2.1 asks whether an instrument put a document in force. This asks whether the document tells the truth about itself, and the two come apart: MCC-100 Amendment 1 has a recorded adopting instrument and states on its face that the Governing Board adopted it "by the two-thirds majority required under clause 0021" - a vote no record contains, at a meeting of a body constituted nine days later. Read from the served files, not the register: 25 in force, 12 consistent, 6 contradicted, 7 asserting an approval no instrument evidences. TWO FINDINGS STAND OUT. MCC-700 v3.1 - the Tier 2 governance instrument, the one FD-2026-08-24 item D11 makes the sole governance architecture - carries "Status: DRAFT - For Foundational Review" on its cover while being served as in force. And MCC-400 v1.1 states that Section 18 enters into force on 17 September 2026, which FD-2026-09-03 item D8 stayed; that date is nine days away and the served text still announces it. The seven UNEVIDENCED are the March 2026 texts that print "Status: APPROVED" with no approver, no date of approval and no instrument: MCC-001, MCC-200, MCC-BPM, MCC-CADCP, MCC-ESS, MCC-HCA, MCC-SDCF. Nothing contradicts them; nothing supports them either, and the first of them is the Constitution every other authority derives from. The remedy is not the same as L2.1's. L2.1 needs instruments taken. This needs the served files corrected or withdrawn, which is administration's work, and then - for the six contradicted - a determination on what the corrected face should say, which is the Board's.
L3 BODIES · 8 of 8 open
Can the programme apply its rules?
8 of 9 bodies of vocabulary E1 have no serving appointee · measured · Board · governance_bodies; governance_appointments
This is the layer most easily mistaken for paperwork. A body with no members cannot meet, and a decision reserved to it cannot be taken by anyone else.
METHODOLOGY_REVIEW_COMMITTEE exists in the register and has no serving appointee · measured · Board · MCC-001 v2.0 cll. 0013, 0045-0048 and 0082; amendment_capability
Separated from L3.1 because it is the binding one, and restated on 8 September because it was measuring the wrong body. It read "the body that approves a methodology has a serving appointee" and counted appointees on STANDARDS_COMMITTEE - which is what MCC-700 v3.1 calls the function. MCC-001 v2.0 vests it in the Methodology Review Committee and cl. 0084 makes the Tier 1 name prevail. That committee is in the register under neither name, so no appointment to the Standards Committee would satisfy cl. 0082. The condition carried the same defect it exists to detect.
1 of 2 serving appointees have declared no interests · measured · Administration · interest_disclosures.appointmentId
0 accredited verification bodies available to the Programme. The path self-tests 0 of 1 hops reached, 0 blocked in the corpus, 0 broken, 0 not yet taken. A body could complete every step of the assessment and there would be nobody able to grant it. · measured · Board · vvb_accreditations; vv_bodies; mcc_vvb_trace_selftest, which walks the accreditation path in a rolled-back subtransaction; MCC-400 v1.1; MCC-001 v2.0
The owner is changed from EXTERNAL to BOARD, and that is the finding. This condition was recorded as waiting on the market: no verification body has applied, so none is accredited. The path has now been walked end to end, the way the unit path was, and the market is not what it is waiting on. EVERY MECHANICAL HOP WALKS. The self-test builds a complete accreditation and takes it through the whole legal sequence - APPLICATION_SUBMITTED, ASSESSOR_ASSIGNED, DESK_REVIEW, COMPETENCE_ASSESSMENT, WITNESS_AUDIT, FULLY_ACCREDITED - with the transition guard on, so the sequence is the one the controls allow. The controls refuse an accreditation with no expiry and a suspension or withdrawal with no reason. The platform is ready. ONE HOP IS BLOCKED AND IT IS THE DECISION ITSELF. MCC-400 v1.1 art. 17 gives the recognition decision to the Programme Administrator. MCC-001 cl. 0016 defines that function to include coordination with validation and verification bodies, and cl. 0017 vests it in the Project Governance Team - a body that has never been constituted and has no appointee. MCC-400 v2.0-draft cl. 3.1 would move the decision to the VVB Oversight Committee, which exists only in a vocabulary not in force and has no appointee either. The decision is unassignable under the instrument that governs and under the instrument that would replace it. So a body could complete every step of the assessment and there would be nobody able to grant it. That is a condition the Programme controls, not one it waits for, and the cure is the same shape as MCC-MRC-2026-002: standing orders for the Project Governance Team and an appointment. It is the second condition to turn on that body, after L3.8 INC-005. Two further gaps the walk surfaced, both recorded as hops rather than as prose. An accreditation scope is free text and nothing checks it against the family vocabulary in force, so a body can be accredited for a scope the Programme does not issue - and "F02" means seagrass on MCC-400 and coral, kelp and oyster on the Definitions Register that governs. And nothing enforces that the assessor is independent of the applicant; the only rule the corpus states is the general conflict duty at MCC-700 v3.1 s13, in an instrument that has not commenced.
1 of 5 tiers cannot be amended by anyone today (Tier 4) · measured · Board · MCC-001 v2.0 cll. 0079-0083; amendment_capability
A tier whose amendment clause names a body that does not exist is a tier whose rules cannot lawfully be changed at all - not by the Board, not by the founder, not by anyone. That is a harder condition than an unfilled seat, and it is the reason the methodology codes cannot be settled in the same act as the family taxonomy.
8 of 9 bodies of vocabulary E1 are unconstituted, and for 8 of them no instrument in force states who acts in their place: METHODOLOGY_REVIEW_COMMITTEE, PROJECT_GOVERNANCE_TEAM, REGISTRY_OPERATIONS_TEAM, REGISTRY_OVERSIGHT_AUTHORITY, REVIEW_AND_APPEALS_AUTHORITY, SAFEGUARDS_PANEL, SD_EXPERT_PANEL, STANDARDS_COMMITTEE. The only text that does, MCC-700 v4.0-draft cl. 23.2, is not in force. · measured · Board · governance_interim_authority, read from the instruments on 10 September 2026; governance_appointments; MCC-001 v2.0; MCC-700 v3.1; MCC-700 v4.0-draft s23; decision_register
Measured from 10 September 2026. Eight of nine bodies are unconstituted, and FOR NONE OF THE EIGHT DOES AN INSTRUMENT IN FORCE SAY WHO ACTS IN ITS PLACE. MCC-001 v2.0 contains no transitional, interim or founder clause - zero occurrences. MCC-700 v3.1, served as in force and never commenced, contains none for bodies. The only text that says who acts is MCC-700 v4.0-draft cl. 23.2 - "its functions ... are exercised by the founder" - and its consultation has not opened. cl. 23.1 of that draft states as a fact that the Programme is governed by the founder under plenary authority, and no instrument in force is the source of that authority. The chain that exists ends at silence: GB-2026-001 item 2 ratifies FD-2026-08-24 as to substance; its item D11 gives MCC-700 v3.1 operative effect; and v3.1 says nothing about a body that does not exist. For the three MCC-001 bodies, cl. 0024 places the functions under the authority and accountability of the Board, which is authority over a function and not permission to exercise it, and cll. 0019 and 0021 forbid one body holding both standard-setting and programme administration. So every founder decision since 26 August 2026 - the approval of M008, the adoption of its text, the acceptance of the integrity review, the omnibus of 7 September - was an exercise of a function that no instrument in force authorises the founder to exercise. The decisions are recorded, attested and tabled for ratification; ratification by a Board that itself has no in-force authority to act for the other eight bodies does not cure it. The cure is not a founder decision saying the founder may act. It is either commencing MCC-700 v4.0 s23, which states the position honestly, or constituting the bodies. MCC-MRC-2026-001/-002 does the second for the one body that unblocks Tier 4.
9 of 9 bodies of vocabulary E1 cannot be appointed to: 6 are specified only by an instrument that is not in force, 3 by an instrument in force that states no seat count, term or appointment procedure · measured · Board · governance_seat_specification, read from the instruments on 9 September 2026; MCC-001 v2.0; MCC-700 v3.1
L3.1 reports that eight of nine bodies have no serving appointee. That is true and it is not the useful fact. NOBODY CAN BE APPOINTED TO SIX OF THEM. Six - the Governing Board, Standards Committee, Registry Oversight Authority, Review and Appeals Authority, Safeguards Panel and SD Expert Panel - have their composition stated only by MCC-700 v3.1, which says "Status: DRAFT - For Foundational Review" on its cover and whose own cl. 18.1 reads "shall enter into force upon approval by the Governing Board on [Date to be inserted]". The date is still not inserted in the file the Programme serves. An appointment to a composition no instrument in force states is an appointment to nothing. The other three - Methodology Review Committee, Registry Operations Team, Project Governance Team - are constituted by MCC-001 v2.0, which is in force, but it states no seat count, no term, no voting rule and no appointment procedure for any of them. cl. 0047 describes who should sit on the Methodology Review Committee without saying how many, for how long, or appointed how. So the answer to whether these bodies can be appointed to today is: none of the nine. Six for want of an instrument, three for want of a specification. THE SHORTEST PATH OUT is the Methodology Review Committee. It is constituted by a Tier 1 clause in force that directs the Board to delegate to it (cl. 0045), it needs no amendment to any instrument, and it is the only body that can amend Tier 4 - the tier L3.5 records as amendable by nobody. What it needs from the Board is a seat count, a term and an appointment procedure, which is a resolution and not an instrument. What the Board must be asked for the other six is not "who should sit on them" but "which composition governs" - MCC-700 v3.1, which never commenced, or the v4.0 draft, which is not adopted. That question is prior to every name.
3 of 6 recorded incompatibilities are unreached only because the bodies concerned do not operate, and would be breached on the day they did: INC-003, INC-004, INC-005. No serving appointee holds two roles an instrument keeps apart. · measured · Board · governance_incompatibility, read from the instruments on 9 September 2026; governance_appointments
Written before the appointments exist rather than after, so that the rule is not shaped by whoever happens to hold office. Six incompatibilities are recorded from the instruments, each with the clause that creates it. No serving appointee holds two roles an instrument keeps apart - there are two appointees and both sit on the Governing Board. The condition nonetheless fails, on three that are unreached only because the bodies concerned do not operate: INC-003, the Review and Appeals Authority hears appeals from its own first-instance decisions (MCC-700 v3.1 cl. 4.4.1(a),(b) with (c)) - breached on the first day it operated, and abolished in terms by MCC-700 v4.0-draft cl. 10.3 for that reason. INC-004 and INC-005, where MCC-001 and MCC-700 each vest the same function in a different body: standard-setting in the Methodology Review Committee (cl. 0013) and in the Standards Committee (cl. 4.2.1); programme administration in the Project Governance Team (cl. 0017) and in the Review and Appeals Authority (cl. 4.4.1). MCC-001 cl. 0084 resolves both in favour of Tier 1, so on the instrument that governs the two MCC-700 bodies hold neither function. A latent incompatibility fails rather than passes because the appointment is the moment to see it. Filling seven seats on a body that will hear appeals from itself is harder to undo than declining to fill them. One further gap is recorded on the specifications rather than here: SIX SEATS ACROSS THREE BODIES REQUIRE AN INDEPENDENT MEMBER, AND NO INSTRUMENT IN FORCE DEFINES INDEPENDENT. MCC-ROI v1.0-draft cl. 3.8 defines it by reference to the Definitions Register, and the Definitions Register does not define it - its only use of the word is inside the definition of a VVB.
L4 CONTROLS · 1 of 5 open
Do the rules operate?
0 of 58 declared controls are absent or disabled · measured · Administration · pg_trigger against the control list held inside mcc_readiness_measure()
The expected list is compiled into the function, not stored in a table. A register that reads its own expectations from rows can be satisfied by editing a row.
58 controls screened; 3 guard a path nothing takes and every one is declared dormant with the instrument that makes it so (screen last run 0.4 days ago) · measured · Administration · mcc_control_reachability_inputs(); scripts/check-control-reachability.ts; control_reachability_results; control_reachability_expectations
Measured from 9 September 2026, having been asserted the day before. The screen compares each control against every writer of the table it guards - application code, the seed, database functions and migration files - and its finding stands: THE THREE CONTROLS ON corresponding_adjustments GUARD A TABLE NOTHING WRITES. What the screen cannot see is why. The Corresponding Adjustment and Double Counting Prevention Policy v1.0 cl. 0056 requires an adjustment when a credit is transferred internationally and used by a buying country toward its climate target, and cl. 0063 puts it at the point of retirement by that buyer. THE PROGRAMME HAS NO UNIT THAT CAN BE USED TOWARD A CLIMATE TARGET: its only approved methodology issues the marine conservation unit, which carries no greenhouse-gas claim, and no unit of any kind has ever been issued. No corresponding adjustment can presently arise. The table is empty for a reason, not by oversight, and building a write path to satisfy a static scan would be building machinery for a pathway the Programme does not have. So the three controls are declared dormant by design, each citing the instrument that makes it so and stating what must become true before the path opens. An unreachable control that nothing accounts for still fails this condition, and so does a declaration that has outlived its reason - a register must not carry a statement that has stopped being true. A SECOND FINDING IS RECORDED RATHER THAN FIXED. corresponding_adjustments is not the register cl. 0065 requires either. That clause requires an International Transfer Registry carrying host country, buying country, quantity, serial numbers, transfer date, retirement date and adjustment status. The table carries host country, batch, project, status, reference, confirmation date, authority and NDC period: four of the seven required fields are absent. Whether this table is meant to be that registry or a batch-level flag beside it is a design question nobody has answered, and it cannot be answered by adding columns to a table nothing writes. A THIRD FINDING CONCERNS THE SCREEN ITSELF, AND IT MATTERS MORE THAN THE FIRST TWO. As written on 8 September the screen counted any INSERT, UPDATE or DELETE appearing in a migration file as administration by migration. The negative-test suite of the same day embeds a forbidden INSERT or UPDATE for almost every guarded table inside rolled-back probe strings. Run against the repository as it stood this morning, the screen therefore reported ALL 56 CONTROLS REACHABLE and the Article 6 finding would have disappeared from the report without anyone deciding to withdraw it. A test suite had silently satisfied the check that was supposed to police it. Three corrections were made: DML inside a dollar-quoted block is no longer counted, because it is a function body or a probe string and not a statement the migration executes; the scan now covers the database seed and the operational scripts as well as the web application; and it recognises Prisma model writes as well as the supabase-js from-table idiom, resolving model to table through the schema's own @@map directives. The last two were needed together: with the probe strings discounted, the abolished-instrument control on methodologies read as unreachable, and the screen's own header had claimed that register was administered by migration. It is not. It is written by prisma.methodology.upsert in the seed, which the screen had never scanned and could not have recognised. That claim in the header was resting on the negative-test migration - the control's reachability was being evidenced by its own test. The screen proves unreachability and cannot prove reachability - finding a writer shows a path exists, not that anyone walks it - so the controls it reports as reachable are reviewed, not proved. Three earlier false-positive classes had already been closed: writes through database functions such as issue_credit_batch, which no grep of the application sees; INSERT firing unconditionally on a trigger declared INSERT OR UPDATE OF, which had reported the repaired claim-language control as unreachable; and administration by migration, which is real for the document register even though it was not for methodologies. A first run said 23 controls had no writer. Almost all were wrong.
48 of 48 refusing controls have been shown to refuse what they guard (last run 0.4 days ago) · measured · Administration · mcc_test_controls(); mcc_control_probe()
Measured from 8 September 2026, having been unanswerable before. Each test performs the forbidden action in a rolled-back subtransaction and the suite counts only refusals raised BY THE NAMED CONTROL, read from PG_EXCEPTION_CONTEXT. A refusal by a different control or by a table constraint leaves the named one unproven, and two currently sit there. A broken fixture reports as a broken test, never as a refusal, because a test that fails to set up its own data would otherwise look exactly like a working control.
0 of 63 live triggers are not declared as a control or as not-a-control · measured · Administration · mcc_declared_controls() against pg_trigger
Added 8 September 2026 after an adversarial check found that the Programme kept two hand-maintained lists of its own controls, of 46 and 50 entries, which disagreed with each other and with the database: four live enforcement controls sat in neither, so the presence check reported no controls absent while being blind to those four. There is now one compiled list, and this condition makes it impossible for a trigger to exist unclassified. An undeclared trigger is not a small bookkeeping matter - it is a rule nobody has decided is a rule.
21 of 57 scoped reads shown to return nothing outside scope; 36 examined nothing because the table holds no row to withhold (last run 10.1 h ago) · measured · Administration · mcc_declared_policy_tests(); mcc_test_policies(); policy_test_results
Added 10 September 2026 after the RLS audit (W2) found that row-level security policies - the controls that decide who reads what - had never been proved by anything that runs more than once. A verification body could read every project; the fix (20260913120000) carried a self-test that ran at apply time and never again. This condition runs the same kind of test daily: a VVB with no assignment, a project developer with no organisation and an anonymous reader each read every table the list names, and the count is compared with what the definer sees. A test on an empty table examines nothing and is recorded VACUOUS, never as a proof; today most tables are empty, so the condition reads VACUOUS until fixtures are added or the register fills. Write policies are not yet tested.
L5 CHAIN · 5 of 5 open
Can a unit be traced end to end?
0 of 0 issued units do not reach a named verification · measured · Administration · credit_units; credit_batches."verificationId"
0 of 0 buffer withholdings say nothing about where their rate came from · measured · Administration · verification_records."bufferRateBasis"; buffer_entry_provenance
0 of 0 projects past submission have no safeguards assessment · measured · Administration · projects; safeguards_assessments
0 of 0 retirements carry no claim text for the control to read · measured · Administration · retirements; enforce_claim_language
no unit has been issued, so none has been traced; the walk is written and self-tests 0 of 1 hops on a unit built and rolled back inside the test - THE SELF-TEST IS NOT CLEAN · measured · Administration · mcc_unit_trace(); mcc_unit_trace_selftest()
Measured from 9 September 2026, having been asserted NOT_MEASURABLE the day before. The assertion was right about the data and wrong about what could be built: no unit exists to trace, but the walk itself can be written, and writing it now is the point. A trace written against real data is written to fit that data - every hop it cannot make becomes a hop it was never asked to make. Written first, it says what the chain must contain, and the first unit either satisfies it or does not. Fifteen hops: unit, batch, issuance request, governance decision, verification, project, application, validation, methodology, safeguards, host country, buffer, holding, retirement, certificate. Each is REACHED, BROKEN or NOT_YET, the last only where the hop does not apply at the unit's stage - a unit still held has not been retired, a batch that withheld no buffer has no entry. Nothing else is excused: an absent governance decision on an issued unit is BROKEN, not not-yet. THE SELF-TEST IS WHY THIS SHIPS TODAY. mcc_unit_trace_selftest() builds a complete unit - verification body, project, validation, verification, safeguards, host-country determination, issuance request, governance decision, batch, unit, holding, retirement, certificate - inside a subtransaction that is always rolled back, and walks it. ALL FIFTEEN HOPS REACH. That is a stronger statement than the condition itself makes: it says the chain is constructible, that every control on the path permits a lawful unit through, and that the record a person would read is complete at every step. If the chain could not be constructed, that would be a larger finding than any single broken hop. The fixture retires from the programme account and not the buffer pool. A first version took the first registry account by id, which is the pool, and a fixture that retires out of the pool proves less than it appears to - debit_retirement_holding excludes that account when it chooses one for itself, and the fixture had bypassed the choice by naming an account. The condition is VACUOUS rather than PASS: no real unit has been traced, and a self-test is not a unit. The day the first one is issued this measures it.
How to read the states. Met and Not met mean what they say. Nothing to test means the condition holds only because no data exists that could break it — no credits have been issued, so no issued credit is untraceable. That is not the same claim as every issued credit being traceable, and it is counted as open. Unanswered marks a condition that needs a person to read something and where nobody has. Cannot be answered yet marks one where somebody looked and found the question premature.
There is deliberately no single overall percentage. Averaging across layers would let closed identity conditions offset an unconstituted Standards Committee, and they do not offset: the committee is the body that approves a methodology, and no dossier can be approved while its seats are empty.