Nishi Family › Compare › Nishi PM Engine

Nishi Compare · capabilities, evidence and delivery

Nishi PM Engine

Compare capabilities and delivery evidence. Source discovery, qualification, deployment and accepted outcomes are separate; an open contract names work still to verify.

Work selection computed from measured capability boards -- versus the field where priority is a human opinion field. Every DONE here is a measured symbol, never a status column.

Overview

The purpose, declared position and evidence coverage of this domain. Source presence and completed acceptance are different measures.

Where we are. Shipped and measured: journaled intake, the debt ledger with artifact-verified closure, RACI plane, the ws-cycle conductor, frontier velocity watch, the hive queue, publish receipts -- and as of 2026-08-18 the computed ranker: priority derived from the capability boards and the version ladder, filed into intake automatically. Open: ranking coverage beyond charsim+graphics, the pm board rendering the comparerank- planes, closed-loop re-rank on the beat.

Where we need to go. Work selection is never random and never a seat taste: every domain declares a version ladder, the ranker computes the critical path to the next version, Nishi PM drives the queue, and a seat that works off-path is working against a published number it must argue with.

The unit. 1 u = one measured session-leg (same calibration as charsim.plan).
Beach-led estate investment, 2026-09-09: OPEN. Extend PR6 sponsorship, PR7 actual costs, PR8 outcome read-back and PR9 portfolio allocation using Beach as the acceptance pilot. Balance measured delivery benefit and dependency reuse against implementation/build/deploy cost, uncertainty and risk. Preserve deferred capabilities. Superiority over assistant planning requires comparative outcomes; it is not established by a rank score.
Independent Claude and DORA review 2026-09-12: MEASUREMENT CORRECTION REQUIRED. Root live API1789235595 reproduces nx_dora88pct PROXY: open incident-keyword debts divided by DONE work items, not failed production deployments. Do not infer actual failure rate or current ELITE qualification. Official DORA2026 five metrics require per-application change/deploy/incident/recovery/rework linkage; existing nx_dora shipjoin is reusable BUILD-to-SHIPPED evidence, not commit lead time. Existing PR8 investment must include evidence freshness and accepted Beach outcomes. Retained independent review knowledge/gates/claude-review-20260912.json; source/runtime fixes and public emission remain pending.
Who maintains standards, practices and PM comparisons: Existing estate owners. Operator direction 2026-09-30 applies across RACI and every capability, not only example products. ecosystem:EC63/EC80 own the standards/practices and derived standards-view contract. Current owners choose applicable requirements and check recipes through governed workflows; source changes propose versioned updates, never silently rewrite acceptance. The model tutors and implements missing mechanisms, then Nishi must demonstrate their use from recorded inputs.

Latest recorded release

2026-09-26 · PR5

W14 PM-RELEASE-PLUMBING: the raci- lane plane that PR5 joins onto the ranked queue (and that nx_pm_board, nx_pm_cockpit, nx_pm_roi_lib and nx_law_warden read) is now a derived view of the one RACI authority knowledge/store/raci: nx_raci_reconcile lanes-project (reviewed by plan hash) and lanes-project-regenerate rewrite only the R A C I columns of lanes whose id is an authority activity, keep lane status and notes byte-exact and never give a lane-only row values; production drift 1 to 0 (research A pm to researcher, adjudicated from the record on ecosystem EC71). Readers still read: nx_pm_cockpit_gate 17/17 GREEN (RACI emitter contract, JSON retains RACI); nx_pm_board_gate 6/6 GREEN after its subject ladder fix (it had forked /tmp/nx_pm_board.sov.elf, a path no builder writes; SHIPPED b8ed8070, first promote, registered, /api/gate_run GREEN). 103 lanes remain lane-only and are named for the RACI owner (debt 1790461667).

Release history and work log

Release entries describe recorded changes; they do not establish that every capability passed evaluation.

15 of 29 capability source symbols found|3 of them authored stronger-claims|14 open|coverage 517/1000|adoption 13 full / 2 partial

Evidence profile — what the gaps on this board actually are

Measured by nx_swcompare_evidence, read back by nx_evprofile_lib. Every figure is a count with its denominator — there is deliberately no score, no grade and no percentage anywhere in this band, because a stored scalar is a field a seat can edit and a counted partition is not.

evidence|grounded 15/19|unsupported 4|gates green 3/3|proven able to fail 3/3|never bitten 0|green at 0/0 1|open gaps 10|of them unnamed 0|of them proof withheld 0|flips ready 2

proven able to fail counts the gates that have a RECORDED RED — nx_gate_bite mutated the gate subject, rebuilt it, watched the gate go red, and that record is inside the shared TTL. never bitten is its complement over the same denominator: those gates ran and were green, and nothing has ever shown them able to detect anything, so their green is a statement about this run and not about the gate. green at 0/0 is a separate and much weaker observation — the gate printed GREEN on a zero denominator, so its own tooth counter says it examined nothing. A gate can be green, non-zero, and still never bitten; that is the common case and it is now visible instead of implied.

partition: grounded + unsupported = 19 vs present 19 · named + unnamed + withheld = 10 vs open 10 · both reconcile

liar-kill conj=gPQN · first failing conjunct: grounded

graded document: BUILDROOT tree, 13738 bytes · gates map: PRIMARY · stamped 0d 7h ago · source ../knowledge/status/evstamp_pmdash.verdict

Gap classWhat it is, and the work it names
UNSUPPORTED-CLAIMA row published as measured names a symbol that is NOT in the organ file it cites. This is the one class worse than an open gap, because it is a published claim carrying a source line beside it as apparent proof.
FLIP-READYA watch contract symbol is now present in the organ it named: the cell can flip on a pure data edit with no new code. These are the cheapest closures on this board and they belong before any new work.
VACUOUS-GATEA gate reported GREEN on a ZERO denominator. A gate with real teeth and a broken counter, and a gate with no teeth at all, are indistinguishable from outside; that indistinguishability is the finding, so it is reported here and never convicted.
This band reports the referee counts. The per-axis worklist rows — which axis is unsupported, which watch is ready to flip, which gap is unnamed — are printed by nx_swcompare_evidence pmdash itself and are not carried on the stamp, so this page names the classes and the producer names the rows. That split is stated rather than hidden: a count without a worklist is not actionable, and this band is honest about which half of that it is.

Production map

Follow the dependencies, declared acceptance criteria and recorded priorities. Inspect source binding before treating a rank as executable work.

Ranking source binding: STALE_INCONSISTENT. Recorded priorities require current acceptance evidence and resource checks before execution.

Recorded ranking withheld

Retained ranking is not bound to the current plan and matrix: STALE_INCONSISTENT. Historical data remains retained. Refresh the ranking after resolving the input differences. Latest execution outcome is unverified.

Declared roadmap — contract, acceptance, executor, effort

RungCloses withDefinition of done (pre-declared)ExecutorEst.
Ranker live on two domains (PR1)rk_list_scannx_compare_rank runs on charsim+graphics, publishes comparerank- planes and files top critical rungs into pm intakeOrgan0.5 u
Every plan carries a version ladder (PR2)
after PR1
rk_list_oneAll six .plan domains declare ver rows; the ranker refuses ambiguity by labeling missing laddersData0.5 u
PM board renders the ranking (PR3)
after PR1
pb_rank_panenx_pm_board gains a pane reading the comparerank- planes so the dashboard shows the computed queue, not a hand listOrgan1 u
Re-rank on the compare beat (PR4)
after PR3
cb_rank_tickThe beat re-runs the ranker after each regen so a landed symbol reorders the queue the same dayOrgan1 u
RACI joined to the ranked queue (PR5)
after PR3
raci_rank_joinEach ranked rung carries its owner role from the raci- plane; unowned critical rungs are a named breachOrgan1 u

Milestones

MilestoneRungsCumulative
P0 · Computed ranking drives intakePR1,PR21 u
P1 · The dashboard is the queuePR3,PR43 u
P2 · Owned, beating, closed-loopPR54 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
Sponsorship feedback as a ranker signal (PR6)
after PR1
rk_sponsor_termOperator verdicts land as sponsor- plane rows (domain/rung, direction, weight, date, verbatim words) the moment they arrive, and the ranker multiplies value by the sponsorship coefficient -- revealed preference becomes a number, not a correction after the factOrgan1 u
Estimates that learn from actuals (PR7)
after PR4
rk_cost_recalWhen a rung lands, its measured session-leg cost writes back beside the plan estimate; the unit row recalibrates from history instead of staying a guessOrgan1 u
Outcome read-back per investment (PR8)
after PR6
rk_outcome_joinEach landed rung joins its before/after on the panel score, surface usage and the sponsor verdict, so a paying investment is distinguishable from a busy oneOrgan2 u
The estate-wide portfolio run (PR9)
after PR6
rk_portfolioOne dr_ocm pass across EVERY domain critical path, weighted by sponsorship + the maturity rollup, under the real token/box budget -- the weekly campaign plan computed, never hand-rankedOrgan1.5 u

Milestones

MilestoneRungsCumulative
P3 · The intelligent investment leaderPR6,PR7,PR8,PR98.5 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
Per-lane gap-to-optimal in the ranker (PR10)
after PR1
rk_lane_gapThe ranker reads lane rows (representation, use-cases, optimal-bar, current) and adds a gap-to-THIS-lane-optimal term to value, so a lane scoring below its bar is DRIVEN UP, never culled. The referee cjc_panel supplies the current per-render measure. Operator 2026-08-19: rank every lane to its optimal for its use cases, never pick a winner. Done-rule: on charsim splat and mesh both rank by their OWN shortfall, and the printed derivation names each lane optimal and gapOrgan2 u

Milestones

MilestoneRungsCumulative
P4 · Every lane driven to its own optimalPR1010.5 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
Outside dependency priced into the ranking (PR11)
after PR1
rk_selfsuff_termThe ranker discounts each rung value by a coefficient derived ONLY from measured dependency counts in nx_selfsuff's ledger (outside services the organ dials plus a witnessed autonomy gap), prints the ledger row that fired by id beside the number, and floors the coefficient so a dependency DEMOTES a rung but never hides it. ACCEPT RULE, pre-declared: nx_selfsuff_gate must prove BOTH directions -- POSITIVE control, a zero-dependency ledger leaves every ranked priority identical to no ledger at all; penalty direction, a measured dependency lowers at least one priority and raises none; floor, a huge dependency clamps the multiplier at one quarter and still leaves every rung in the ranking; and the three abstain states (no ledger, organ absent from the census, no matrix row) are each named rather than priced as zeroOrgan1 u

Milestones

MilestoneRungsCumulative
P5 · Sovereignty priced into every rankingPR11,PR1212.5 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
The published project pulse (NAP1)pp_emitOne organ composes a domain's rank artifact, its nishi_project plane (tasks, states, notes) and its watch contracts into a PUBLIC page at /compare/<dom>/project/ -- the team's journal, findings and recommendations visible beside the board they serve; refuses on a missing rank or empty planeOrgan1 u
Plan-to-project sync with evidence-derived state (NAP2)
after NAP1
pp_syncA rung row becomes a project task (deps, effort from est u, owner by executor class); a task is DONE only when its contract symbol lands AND its gate is green -- state is derived from evidence, never asserted; re-sync is idempotentOrgan1 u
The loop files its own recommendations (NAP3)
after NAP1
pp_recommendDrift the pulse detects (UNMAPPED rungs, stale estimates, blocked chains, rank-vs-state disagreement) is filed to pm intake as marker-idempotent REQs -- the feeder pattern; proven the day it was designed: the gen ranker's UNMAPPED flag on G2 became a matrix fix within the hourOrgan1 u
Executor dispatch per ranked rung (NAP4)
after NAP2
nap_dispatchThe NOW rungs each emit a promptpack executor scaffold carrying the rung's contract, done-rule and gate; organ-authorable rungs route to auto_builder DATA specs instead of a seatOrgan1.5 u
Proposal tournament before build (NAP5)
after NAP4
nap_tournamentCo-scientist-class: N candidate approaches per critical rung, judged by the estate panel with pre-declared accept rules; the winner's grounds are published on the pulse before a build starts [coscientist]Organ2 u
Evaluator-driven candidate evolution (NAP6)
after NAP5
nap_evolveAlphaEvolve-class: candidate organ variants scored by the EXISTING gate fleet as automated evaluators, best survivor promoted under the promote ruler; bounded actions per unit time and a time-boxed off-switch by construction [alphaevolve]Organ3 u

Milestones

MilestoneRungsCumulative
P6 · The autonomous project loop on one crown jewelNAP1,NAP2,NAP316 u
P7 · Tournament and evolutionNAP4,NAP5,NAP621 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
The debt board's ranked drain, end to end (PR12)dt_rank_drainnx_debt_triple emits ranker args and holds the position-to-row-id map, but the ranker's callable surface takes bare v m c integers on argv and carries no row identity (nx_dr_ocm_cli.nx usage line: nx_dr_ocm <budget> [v m c]...), so the join from a ranked position back to a debt row lives outside both organs and the published order is only as reproducible as the seat that carried the map between them. Contract: one verb running feeder to ranker to a published ranked drain keyed by row id, INHERITING the feeder's saturation exit so it refuses to publish an order rather than ranking on a degenerate feature.Organ1 u
Dependency-order and cost-inversion bench over every board (PR13)
after PR1
rk_depbenchA ruler reads every published .rank beside its .plan and counts (a) open rungs ranked above a direct open prerequisite and (b) organ clusters whose printed cost order inverts the declared est order, per board and fleet with the partition summing; it runs on the fleet beat and the board renders both counts as a trajectory; PRE-DECLARED accept rule for any ranker change: neither count may rise. First measurement by hand 2026-09-21 on speech and scripturestudy before the fix: 6 of 32 open rungs above a direct prerequisite (SP4 over SP3, SP6 over SP5, SP3 over SP2, SS4 over SS5, SS7 over SS6, SS11 over SS3) and a 3.3x cost inversion (SP5 4 u priced 40 tenths, SP6 6 u priced 12)Organ1 u
The intake front door on the emitted site: session-gated /backlog form (PR14)pbp_serveGET /backlog serves the intake list with a native POST form under the opaque session and POST appends a REQ frame through the strict backlog owner (nx_host_backlog_post_t342 pbp_serve; daemon nx_sites_daemon_backlog_t343 BUILT 597,120 B and UNPROMOTED on 2026-09-22, while the live /backlog is the legacy read-only list rendered from knowledge/status/pm_intake.jrnl); done-rule: a POST from a real session on nishifamily.com lands a REQ the list then shows, deployed by the release owner through the sites deploy row under the never-brick health check, and an operator accept- row (three-party completion)Daemon1 u
Intake routed to the boards by the estate: REQ to rungs, sponsor row, FILED (PR15)
after PR6
ir_proposenx_intake_route (lib, CLI, gate 51/51 with the fork leg exercised): propose tokenizes the REQ text into whole words under knowledge/intake_route.conf (topk, loghead, stop rows -- every bound is DATA, no length or count threshold) and ranks every rung row and every _ABSENT_ watch row of every board on regen.list by whole-word BM25F (nx_bm25_lib: title 3 body 1, k1 1.2 b 0.75, idf over the whole corpus), publishing the top-k with every score, the idf per term and the top1-top2 gap; file resolves every dom:rung target on its plan before any write, then lands ONE sponsor- row scoped to the targets' symbols with the verbatim words (the ranker's PR6 term reads the bare sponsor- prefix), TRIAGE and FILED frames through nx_pm_intake, and a marker-idempotent log queue row per target plan; done-rule: the calibration request 1790106111 routes by the organ and a second file changes nothing (gate T17); SHIPPED 2026-09-22 v1 sha d296daa3 then v2 sha a90de75f (whole-word BM25F, the thresholds retracted), registered, gate rosteredOrgan2 u

Milestones

MilestoneRungsCumulative
P8 · Intake to boards, end to endPR14,PR1524 u
RungCloses withDefinition of done (pre-declared)ExecutorEst.
The living request: every frame a person writes about a request is its query, and a newer frame re-proposes it (PR16)
after PR15
ir_text_joinnx_intake_route (lib + gate): a sibling seat measured on the live journal that refinements arrive as TRIAGE frames after the REQ while the router read the REQ alone (391 TRIAGED requests were never routed and a refined request never re-proposed). The frame kinds that carry request text are DATA (textkind rows in knowledge/intake_route.conf: REQ and TRIAGE; none declared = the REQ alone, the pre-2026-09-23 behaviour); the router's own TRIAGE and FILED frames are excluded by the prefixes it writes them with (one const each, IR_OWN_TRIAGE_PFX and IR_OWN_FILED_PFX); every proposal records text_frames= and text_epoch=; the sweep's ledger row carries the text epoch it consumed (a row without the field read the REQ alone and resolves to the REQ's epoch) and the sweep proposes a request in ANY state whose newest text frame is newer than what its row consumed, printing candidates= refined= reproposed= with the partitions summing; done-rule: the gate proves the join (F routes on REQ + TRIAGE to ga:A1 with text_frames=2), the REQ-only neg-control (the same F routes to gb:B1), the default (no textkind row reads the REQ alone), the re-proposal on a later TRIAGE frame (C moves to ga:A2, then the next sweep is idempotent), the legacy-row rule (E consumed, F refined) and the router's own frame excluded (after filing A its query is still one frame); live: the hourly sweep re-proposes the TRIAGED requests it never routed and every later refinement, and xcheck agrees on the joined queryOrgan2 u
The decisive living request: how often a person wrote a word is the query's own signal (PR17)
after PR16
ir_qtf_weight_millinx_intake_route (lib + gate + nx_bm25_lib): PR16 measured that an 848-term living request near-ties (gap 4 permil) because ir_terms deduped the query, so a word written in 17 frames weighed the same as a word written once. qtf is counted per distinct term; each term's query weight is BM25's own third component (k3+1)qtf/(k3+qtf) (Robertson and Zaragoza 2009, section 3.3), k3 the conf row qtf_k3_milli (absent or 0 = every distinct term once, the pre-PR17 ranking byte for byte); nx_bm25_lib gains bm_index_score_w_milli (a weight per term) and the unweighted scorer delegates to it; the digest carries query_weight, qtf_k3_milli, and qtf + w_milli per term; every sweep ledger row records the k3 it ranked under (ranker=qtf:k3) and the sweep re-proposes every row ranked under another value (reranked=), so a ranker change reaches every routed request at sweepmax per beat; done-rule: the gate proves the count (T3f), the weight KAT (2454 milli for qtf 3 under k3 8000), the conf row as data with 0 by default, a fixture whose noise frame wins under k3 0 and whose repeated subject wins under k3 8000 (T22, T22c), a term written once unmoved (T22e), the repeated row scaled by the weight within a milli per term (T22f), the re-rank sweep with summing partitions (T23 to T23d) and its by-ranker-not-by-time neg-control; live: the production row calibrated on the two judged requestsOrgan2 u
A request that is many requests reaches every board it asks for: each human frame is routed on its own words (PR18)
after PR17
ir_frame_routenx_intake_route (lib + gate + nx_bm25_lib): PR17 measured that no query weight decides a request that is several requests (1790132172, 18 frames on unrelated topics, a near tie at every k3). Each human text frame is ranked alone by the same BM25F and query weights, the frames' top-k are fused by reciprocal rank fusion (Cormack, Clarke and Buettcher, SIGIR 2009; 1/(k+rank) summed in micro, k = the frame_rrf_k conf row, 0 = off), an intent is a document some frame ranks first, a fused tie goes to the whole request's own ranking, and the digest publishes every frame's route, the intents with the frames that named each, and the fused top-k with each row's symbol; machine rows declare the writers whose frames are receipts, never request text; the sweep ledger records the fusion and the text-frame count so a fusion or filter change re-proposes exactly the rows it touches, and the last row in append order is a request's state. Done-rule: frame routing off and every one-frame request byte-identical to the incumbent (gate neg-controls), per-frame routes and intents proven on a fixture with a no-match frame and a hostile head that cannot steer the ledger, a fused tie decided by the joined ranking where corpus order would decide otherwise (T28b), a machine receipt dropped from the text while a request the machine files keeps its own (T27b and its neg-control), the sweep re-framing and re-filtering exactly the rows a change touches and idempotent on the next beat (T26, T29 to T29c); live: the production rows calibrated on the judged requestsOrgan3 u
Source intent refinement is an owned decision before requirement completion (PR19)
after PR18
_ABSENT_:pm_semantic_refinement_acceptSOURCE-BOUND PLANNING CONTRACT 2026-09-24. Extend the existing inventory and PM plan owners with source-bound review decisions. Retain every original utterance identity and association, explicit confirmed/rejected/added links, reviewer and finding; unresolved references, mixed future products and incomplete acceptance become named refinement work with the appropriate product/research/technical owner. Prove the full source partition and bidirectional requirement links against the immutable transcript, plus a rejected false association and a multi-intent source requiring refinement. Agent adjudication does not imply a second independent coder, owner acknowledgement, semantic completeness or delivered outcome. PM coordinates and routes; the relevant owner writes the refined contract and the operator retains acceptance. The first reviewed inventory has 849 sources; this is fixture extent, never a code ceiling. Effort unestimated.Workflowunestimated u
Dependency declarations have resolvable contracts and independent graph evidence (PR20)
after PR13
_ABSENT_:pm_dependency_repair_acceptSOURCE-BOUND PLANNING CONTRACT 2026-09-24. Reuse the existing canonical plan parser and dependency validator. Resolve every declared predecessor against its authoritative board with provenance; dangling references, duplicate ids, malformed records and cycles remain explicit blockers. Repair requires source-owner evidence for the intended predecessor and a reviewed board revision, never fabricating a missing rung or deleting an edge to turn the graph green. Observed correction: lang LN46 exists at canonical line 246. The full native run retained a false predecessor lang:-\\r because CRLF framing was included in the final dependency field, blocking LN46, LN49 and LN60. Preserve the earlier absent-LN46 interpretation and actual failed graph as superseded evidence. Repair the shared parser boundary with LF, CRLF, mixed-ending, internal-CR and final-no-newline controls; rerun the actual source-bound plan and verify affected ordering. New topological readiness never means accepted prerequisites or dispatch permission. Effort unestimated.Workflowunestimated u
Human PM, Nishi PM and partnership compared on organizational outcomes (PR21)
after PR8,PR9,NAP6,codeeffectiveness:CE12
_ABSENT_:pm_organizational_outcomes_acceptFUTURE OUTCOME 2026-09-30. Compose PR7/PR8/PR9, the existing RACI/intake/execution/evidence/recovery owners, and codeeffectiveness:CE12. Predeclare organizational goals, acceptance, scope, resources, uncertainty and observation horizon. Compare human-led PM, Nishi PM and their partnership on accepted value delivered, time, quality, cost, risk, rework, missed dependencies, intervention effort and team experience; retain confounding and unfinished work. The PM must explain selection, scheduling and reprioritization with source-bound evidence and exercise recovery under unchanged authority. Higher output counts alone cannot establish better PM. If results support a shift, offer evidence-backed options for moving human talent toward greater value, with accountable human decisions. No automatic personnel decisions or measured superiority are asserted. Compare/PM machinery emits this comparison from retained receipts.Workflowunestimated u
Ladder verdict. NOT DECLARED. This board names no dated best-in-class or frontier target and no rung roles (sotatarget and rungrole rows on its plan); the ranker labels it NO-LADDER until it does, and until then its rungs climb toward a target nobody has written down. Bars read STALE against the current month 2026-10.
Bar freshness, counted
ClassCountNote
bars1sotabar rows on the plan
fresh0the bar month is the current month
attested0an older bar with a this-month barscan reporting no newer entry
stale0a this-month scan saw a newer month the bar ignores
unattested1nobody looked this month
malformed0a sotabar row missing a field
duplicate0bar ids an earlier row already carries
bars, summed1RECONCILED: the parts sum to the total 1
current month2026-10the month every bar is judged against
Treatment verdict. PARTIAL -- a declared row is unmet: the ranker refuses this board until every declared row verifies. The declared rows, the rungs and the evidence read are counted in the table below, the row partition re-derived beside its total. The complete effective clock view could not be read. Agent absence remains UNPROVEN; restore that observation before claiming completion.
Treatment verdict, counted
ClassCountNote
rows4treat rows declared on the plan
complete0every declared step verifies against the evidence
partial4a declared step is unmet
malformed0a treat row missing a field
rows, summed4RECONCILED: the parts sum to the total 4
rungs27rungs on the plan
undeclared23rungs with no treat row
allowlist bytes read207076the MCP allowlist the ranker reads
roster bytes read119881the gate roster
clock plane bytes read0the clock DESIRED plane
RungMCP rowAPI routePrimitiveWorkflowAgent beatVerdict
PR15nx_intake_route present/api/tools/call presentnx_intake_route_lib presentintakeroute presentintakeroute declaredPARTIAL
PR16nx_intake_route present/api/tools/call presentnx_intake_route_lib presentintakeroute presentintakeroute declaredPARTIAL
PR17nx_intake_route present/api/tools/call presentnx_intake_route_lib presentintakeroute presentintakeroute declaredPARTIAL
PR18nx_intake_route present/api/tools/call presentnx_intake_route_lib presentintakeroute presentintakeroute declaredPARTIAL

Inspect a rung and its prerequisites

Declared nodes 27. Rank input binding: STALE_INCONSISTENT. Dependency order is authored. Implementation, acceptance evidence, authority and resource readiness are unverified. No action is recommended or dispatched here.

Plan SHA-256 be529f467d1051627d8e942a336944e5254955a28f2155721aa817a327d9b4ab. Target rows 0; role rows 0. Existing risks and release worklog retain their own scope; no node completion is inferred.

Runtime observation coverage: 0 of 27 rungs have current, identity-bound execution observations. Observation may report RED. Accepted completion remains unknown; source presence, qualification and deployment do not establish it.

Use Enter or Space on a rung to inspect its contract. Prerequisite links locate another rung in this list; open its summary to inspect it. Estimates are authored effort, not forecasts.

  1. PR1 — Ranker live on two domains

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: rk_list_scan

    Acceptance: nx_compare_rank runs on charsim+graphics, publishes comparerank- planes and files top critical rungs into pm intake

    Authored effort: 0.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  2. PR2 — Every plan carries a version ladder

    Prerequisites: PR1 (acceptance unverified)

    Contract: rk_list_one

    Acceptance: All six .plan domains declare ver rows; the ranker refuses ambiguity by labeling missing ladders

    Authored effort: 0.5. Executor kind: Data. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  3. PR3 — PM board renders the ranking

    Prerequisites: PR1 (acceptance unverified)

    Contract: pb_rank_pane

    Acceptance: nx_pm_board gains a pane reading the comparerank- planes so the dashboard shows the computed queue, not a hand list

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  4. PR4 — Re-rank on the compare beat

    Prerequisites: PR3 (acceptance unverified)

    Contract: cb_rank_tick

    Acceptance: The beat re-runs the ranker after each regen so a landed symbol reorders the queue the same day

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  5. PR5 — RACI joined to the ranked queue

    Prerequisites: PR3 (acceptance unverified)

    Contract: raci_rank_join

    Acceptance: Each ranked rung carries its owner role from the raci- plane; unowned critical rungs are a named breach

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  6. PR6 — Sponsorship feedback as a ranker signal

    Prerequisites: PR1 (acceptance unverified)

    Contract: rk_sponsor_term

    Acceptance: Operator verdicts land as sponsor- plane rows (domain/rung, direction, weight, date, verbatim words) the moment they arrive, and the ranker multiplies value by the sponsorship coefficient -- revealed preference becomes a number, not a correction after the fact

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  7. PR7 — Estimates that learn from actuals

    Prerequisites: PR4 (acceptance unverified)

    Contract: rk_cost_recal

    Acceptance: When a rung lands, its measured session-leg cost writes back beside the plan estimate; the unit row recalibrates from history instead of staying a guess

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  8. PR8 — Outcome read-back per investment

    Prerequisites: PR6 (acceptance unverified)

    Contract: rk_outcome_join

    Acceptance: Each landed rung joins its before/after on the panel score, surface usage and the sponsor verdict, so a paying investment is distinguishable from a busy one

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  9. PR9 — The estate-wide portfolio run

    Prerequisites: PR6 (acceptance unverified)

    Contract: rk_portfolio

    Acceptance: One dr_ocm pass across EVERY domain critical path, weighted by sponsorship + the maturity rollup, under the real token/box budget -- the weekly campaign plan computed, never hand-ranked

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  10. PR10 — Per-lane gap-to-optimal in the ranker

    Prerequisites: PR1 (acceptance unverified)

    Contract: rk_lane_gap

    Acceptance: The ranker reads lane rows (representation, use-cases, optimal-bar, current) and adds a gap-to-THIS-lane-optimal term to value, so a lane scoring below its bar is DRIVEN UP, never culled. The referee cjc_panel supplies the current per-render measure. Operator 2026-08-19: rank every lane to its optimal for its use cases, never pick a winner. Done-rule: on charsim splat and mesh both rank by their OWN shortfall, and the printed derivation names each lane optimal and gap

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  11. PR11 — Outside dependency priced into the ranking

    Prerequisites: PR1 (acceptance unverified)

    Contract: rk_selfsuff_term

    Acceptance: The ranker discounts each rung value by a coefficient derived ONLY from measured dependency counts in nx_selfsuff's ledger (outside services the organ dials plus a witnessed autonomy gap), prints the ledger row that fired by id beside the number, and floors the coefficient so a dependency DEMOTES a rung but never hides it. ACCEPT RULE, pre-declared: nx_selfsuff_gate must prove BOTH directions -- POSITIVE control, a zero-dependency ledger leaves every ranked priority identical to no ledger at all; penalty direction, a measured dependency lowers at least one priority and raises none; floor, a huge dependency clamps the multiplier at one quarter and still leaves every rung in the ranking; and the three abstain states (no ledger, organ absent from the census, no matrix row) are each named rather than priced as zero

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  12. NAP1 — The published project pulse

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: pp_emit

    Acceptance: One organ composes a domain's rank artifact, its nishi_project plane (tasks, states, notes) and its watch contracts into a PUBLIC page at /compare/<dom>/project/ -- the team's journal, findings and recommendations visible beside the board they serve; refuses on a missing rank or empty plane

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  13. NAP2 — Plan-to-project sync with evidence-derived state

    Prerequisites: NAP1 (acceptance unverified)

    Contract: pp_sync

    Acceptance: A rung row becomes a project task (deps, effort from est u, owner by executor class); a task is DONE only when its contract symbol lands AND its gate is green -- state is derived from evidence, never asserted; re-sync is idempotent

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  14. NAP3 — The loop files its own recommendations

    Prerequisites: NAP1 (acceptance unverified)

    Contract: pp_recommend

    Acceptance: Drift the pulse detects (UNMAPPED rungs, stale estimates, blocked chains, rank-vs-state disagreement) is filed to pm intake as marker-idempotent REQs -- the feeder pattern; proven the day it was designed: the gen ranker's UNMAPPED flag on G2 became a matrix fix within the hour

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  15. NAP4 — Executor dispatch per ranked rung

    Prerequisites: NAP2 (acceptance unverified)

    Contract: nap_dispatch

    Acceptance: The NOW rungs each emit a promptpack executor scaffold carrying the rung's contract, done-rule and gate; organ-authorable rungs route to auto_builder DATA specs instead of a seat

    Authored effort: 1.5. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  16. NAP5 — Proposal tournament before build

    Prerequisites: NAP4 (acceptance unverified)

    Contract: nap_tournament

    Acceptance: Co-scientist-class: N candidate approaches per critical rung, judged by the estate panel with pre-declared accept rules; the winner's grounds are published on the pulse before a build starts [@coscientist]

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  17. NAP6 — Evaluator-driven candidate evolution

    Prerequisites: NAP5 (acceptance unverified)

    Contract: nap_evolve

    Acceptance: AlphaEvolve-class: candidate organ variants scored by the EXISTING gate fleet as automated evaluators, best survivor promoted under the promote ruler; bounded actions per unit time and a time-boxed off-switch by construction [@alphaevolve]

    Authored effort: 3. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  18. PR12 — The debt board's ranked drain, end to end

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: dt_rank_drain

    Acceptance: nx_debt_triple emits ranker args and holds the position-to-row-id map, but the ranker's callable surface takes bare v m c integers on argv and carries no row identity (nx_dr_ocm_cli.nx usage line: nx_dr_ocm <budget> [v m c]...), so the join from a ranked position back to a debt row lives outside both organs and the published order is only as reproducible as the seat that carried the map between them. Contract: one verb running feeder to ranker to a published ranked drain keyed by row id, INHERITING the feeder's saturation exit so it refuses to publish an order rather than ranking on a degenerate feature.

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  19. PR13 — Dependency-order and cost-inversion bench over every board

    Prerequisites: PR1 (acceptance unverified)

    Contract: rk_depbench

    Acceptance: A ruler reads every published .rank beside its .plan and counts (a) open rungs ranked above a direct open prerequisite and (b) organ clusters whose printed cost order inverts the declared est order, per board and fleet with the partition summing; it runs on the fleet beat and the board renders both counts as a trajectory; PRE-DECLARED accept rule for any ranker change: neither count may rise. First measurement by hand 2026-09-21 on speech and scripturestudy before the fix: 6 of 32 open rungs above a direct prerequisite (SP4 over SP3, SP6 over SP5, SP3 over SP2, SS4 over SS5, SS7 over SS6, SS11 over SS3) and a 3.3x cost inversion (SP5 4 u priced 40 tenths, SP6 6 u priced 12)

    Authored effort: 1. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  20. PR14 — The intake front door on the emitted site: session-gated /backlog form

    Prerequisites: None declared; this does not establish execution eligibility.

    Contract: pbp_serve

    Acceptance: GET /backlog serves the intake list with a native POST form under the opaque session and POST appends a REQ frame through the strict backlog owner (nx_host_backlog_post_t342 pbp_serve; daemon nx_sites_daemon_backlog_t343 BUILT 597,120 B and UNPROMOTED on 2026-09-22, while the live /backlog is the legacy read-only list rendered from knowledge/status/pm_intake.jrnl); done-rule: a POST from a real session on nishifamily.com lands a REQ the list then shows, deployed by the release owner through the sites deploy row under the never-brick health check, and an operator accept- row (three-party completion)

    Authored effort: 1. Executor kind: Daemon. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  21. PR15 — Intake routed to the boards by the estate: REQ to rungs, sponsor row, FILED

    Prerequisites: PR6 (acceptance unverified)

    Contract: ir_propose

    Acceptance: nx_intake_route (lib, CLI, gate 51/51 with the fork leg exercised): propose tokenizes the REQ text into whole words under knowledge/intake_route.conf (topk, loghead, stop rows -- every bound is DATA, no length or count threshold) and ranks every rung row and every _ABSENT_ watch row of every board on regen.list by whole-word BM25F (nx_bm25_lib: title 3 body 1, k1 1.2 b 0.75, idf over the whole corpus), publishing the top-k with every score, the idf per term and the top1-top2 gap; file resolves every dom:rung target on its plan before any write, then lands ONE sponsor- row scoped to the targets' symbols with the verbatim words (the ranker's PR6 term reads the bare sponsor- prefix), TRIAGE and FILED frames through nx_pm_intake, and a marker-idempotent log queue row per target plan; done-rule: the calibration request 1790106111 routes by the organ and a second file changes nothing (gate T17); SHIPPED 2026-09-22 v1 sha d296daa3 then v2 sha a90de75f (whole-word BM25F, the thresholds retracted), registered, gate rostered

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  22. PR16 — The living request: every frame a person writes about a request is its query, and a newer frame re-proposes it

    Prerequisites: PR15 (acceptance unverified)

    Contract: ir_text_join

    Acceptance: nx_intake_route (lib + gate): a sibling seat measured on the live journal that refinements arrive as TRIAGE frames after the REQ while the router read the REQ alone (391 TRIAGED requests were never routed and a refined request never re-proposed). The frame kinds that carry request text are DATA (textkind rows in knowledge/intake_route.conf: REQ and TRIAGE; none declared = the REQ alone, the pre-2026-09-23 behaviour); the router's own TRIAGE and FILED frames are excluded by the prefixes it writes them with (one const each, IR_OWN_TRIAGE_PFX and IR_OWN_FILED_PFX); every proposal records text_frames= and text_epoch=; the sweep's ledger row carries the text epoch it consumed (a row without the field read the REQ alone and resolves to the REQ's epoch) and the sweep proposes a request in ANY state whose newest text frame is newer than what its row consumed, printing candidates= refined= reproposed= with the partitions summing; done-rule: the gate proves the join (F routes on REQ + TRIAGE to ga:A1 with text_frames=2), the REQ-only neg-control (the same F routes to gb:B1), the default (no textkind row reads the REQ alone), the re-proposal on a later TRIAGE frame (C moves to ga:A2, then the next sweep is idempotent), the legacy-row rule (E consumed, F refined) and the router's own frame excluded (after filing A its query is still one frame); live: the hourly sweep re-proposes the TRIAGED requests it never routed and every later refinement, and xcheck agrees on the joined query

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  23. PR17 — The decisive living request: how often a person wrote a word is the query's own signal

    Prerequisites: PR16 (acceptance unverified)

    Contract: ir_qtf_weight_milli

    Acceptance: nx_intake_route (lib + gate + nx_bm25_lib): PR16 measured that an 848-term living request near-ties (gap 4 permil) because ir_terms deduped the query, so a word written in 17 frames weighed the same as a word written once. qtf is counted per distinct term; each term's query weight is BM25's own third component (k3+1)qtf/(k3+qtf) (Robertson and Zaragoza 2009, section 3.3), k3 the conf row qtf_k3_milli (absent or 0 = every distinct term once, the pre-PR17 ranking byte for byte); nx_bm25_lib gains bm_index_score_w_milli (a weight per term) and the unweighted scorer delegates to it; the digest carries query_weight, qtf_k3_milli, and qtf + w_milli per term; every sweep ledger row records the k3 it ranked under (ranker=qtf:k3) and the sweep re-proposes every row ranked under another value (reranked=), so a ranker change reaches every routed request at sweepmax per beat; done-rule: the gate proves the count (T3f), the weight KAT (2454 milli for qtf 3 under k3 8000), the conf row as data with 0 by default, a fixture whose noise frame wins under k3 0 and whose repeated subject wins under k3 8000 (T22, T22c), a term written once unmoved (T22e), the repeated row scaled by the weight within a milli per term (T22f), the re-rank sweep with summing partitions (T23 to T23d) and its by-ranker-not-by-time neg-control; live: the production row calibrated on the two judged requests

    Authored effort: 2. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  24. PR18 — A request that is many requests reaches every board it asks for: each human frame is routed on its own words

    Prerequisites: PR17 (acceptance unverified)

    Contract: ir_frame_route

    Acceptance: nx_intake_route (lib + gate + nx_bm25_lib): PR17 measured that no query weight decides a request that is several requests (1790132172, 18 frames on unrelated topics, a near tie at every k3). Each human text frame is ranked alone by the same BM25F and query weights, the frames' top-k are fused by reciprocal rank fusion (Cormack, Clarke and Buettcher, SIGIR 2009; 1/(k+rank) summed in micro, k = the frame_rrf_k conf row, 0 = off), an intent is a document some frame ranks first, a fused tie goes to the whole request's own ranking, and the digest publishes every frame's route, the intents with the frames that named each, and the fused top-k with each row's symbol; machine rows declare the writers whose frames are receipts, never request text; the sweep ledger records the fusion and the text-frame count so a fusion or filter change re-proposes exactly the rows it touches, and the last row in append order is a request's state. Done-rule: frame routing off and every one-frame request byte-identical to the incumbent (gate neg-controls), per-frame routes and intents proven on a fixture with a no-match frame and a hostile head that cannot steer the ledger, a fused tie decided by the joined ranking where corpus order would decide otherwise (T28b), a machine receipt dropped from the text while a request the machine files keeps its own (T27b and its neg-control), the sweep re-framing and re-filtering exactly the rows a change touches and idempotent on the next beat (T26, T29 to T29c); live: the production rows calibrated on the judged requests

    Authored effort: 3. Executor kind: Organ. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  25. PR19 — Source intent refinement is an owned decision before requirement completion

    Prerequisites: PR18 (acceptance unverified)

    Contract: _ABSENT_:pm_semantic_refinement_accept

    Acceptance: SOURCE-BOUND PLANNING CONTRACT 2026-09-24. Extend the existing inventory and PM plan owners with source-bound review decisions. Retain every original utterance identity and association, explicit confirmed/rejected/added links, reviewer and finding; unresolved references, mixed future products and incomplete acceptance become named refinement work with the appropriate product/research/technical owner. Prove the full source partition and bidirectional requirement links against the immutable transcript, plus a rejected false association and a multi-intent source requiring refinement. Agent adjudication does not imply a second independent coder, owner acknowledgement, semantic completeness or delivered outcome. PM coordinates and routes; the relevant owner writes the refined contract and the operator retains acceptance. The first reviewed inventory has 849 sources; this is fixture extent, never a code ceiling. Effort unestimated.

    Authored effort: unestimated. Executor kind: Workflow. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  26. PR20 — Dependency declarations have resolvable contracts and independent graph evidence

    Prerequisites: PR13 (acceptance unverified)

    Contract: _ABSENT_:pm_dependency_repair_accept

    Acceptance: SOURCE-BOUND PLANNING CONTRACT 2026-09-24. Reuse the existing canonical plan parser and dependency validator. Resolve every declared predecessor against its authoritative board with provenance; dangling references, duplicate ids, malformed records and cycles remain explicit blockers. Repair requires source-owner evidence for the intended predecessor and a reviewed board revision, never fabricating a missing rung or deleting an edge to turn the graph green. Observed correction: lang LN46 exists at canonical line 246. The full native run retained a false predecessor lang:-\\r because CRLF framing was included in the final dependency field, blocking LN46, LN49 and LN60. Preserve the earlier absent-LN46 interpretation and actual failed graph as superseded evidence. Repair the shared parser boundary with LF, CRLF, mixed-ending, internal-CR and final-no-newline controls; rerun the actual source-bound plan and verify affected ordering. New topological readiness never means accepted prerequisites or dispatch permission. Effort unestimated.

    Authored effort: unestimated. Executor kind: Workflow. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

  27. PR21 — Human PM, Nishi PM and partnership compared on organizational outcomes

    Prerequisites: PR8 (acceptance unverified), PR9 (acceptance unverified), NAP6 (acceptance unverified)

    Contract: _ABSENT_:pm_organizational_outcomes_accept

    Acceptance: FUTURE OUTCOME 2026-09-30. Compose PR7/PR8/PR9, the existing RACI/intake/execution/evidence/recovery owners, and codeeffectiveness:CE12. Predeclare organizational goals, acceptance, scope, resources, uncertainty and observation horizon. Compare human-led PM, Nishi PM and their partnership on accepted value delivered, time, quality, cost, risk, rework, missed dependencies, intervention effort and team experience; retain confounding and unfinished work. The PM must explain selection, scheduling and reprioritization with source-bound evidence and exercise recovery under unchanged authority. Higher output counts alone cannot establish better PM. If results support a shift, offer evidence-backed options for moving human talent toward greater value, with accountable human decisions. No automatic personnel decisions or measured superiority are asserted. Compare/PM machinery emits this comparison from retained receipts.

    Authored effort: unestimated. Executor kind: Workflow. Responsible, accountable and verifier not established. Inspect retained worklog.

    Runtime observation: UNKNOWN; outcome UNKNOWN; observed epoch -1. Declared owner: . Receipt , SHA-256 . Identity-bound observation is not accepted completion. Qualification and deployment remain unverified by this projection.

Learning and practice paths

No structured learning path is declared for this plan. Existing research, roadmap and worklog remain available above.

Rung dossiers — every record that bears on a rung, in one place

Joined by symbol, never typed. Each dossier is assembled on every publish from the rows this board already carries: the plan's rung row, the matrix row that carries its contract symbol (its status re-measured by the one symbol ruler), the gate the organ declares and the verdict the evidence referee recorded on its last run, the reference marks in the rung text, the design rows that name the rung and the work log filed against it. The capability matrix links each cell to its dossier and each dossier links back to its cell and forward to the rungs it stands on; a dependency naming no rung on this plan is written as UNRESOLVED rather than linked. Absences are named: NO-MATRIX-ROW, NO-GATE-DECLARED, UNRECORDED.
Gate verdicts: UNSTAMPED — no per-gate verdict artifact is published for this domain yet (nx_swcompare_evidence pmdash writes it beside its stamp); every gate below reads UNRECORDED until it runs.
Gate declarations: knowledge/organ_gate.conf read from this working directory (1 rows) and from the estate root (196 rows); rows in both counted once: 0; declarations read: 197. Every declaration in either copy counts, so a stub beside the publisher can never hide the root.
PR1 Ranker live on two domains · cell PRESENT · gate UNRECORDED
Contractrk_list_scan · executor Organ · 0.5 u · stands on nothing
Definition of donenx_compare_rank runs on charsim+graphics, publishes comparerank- planes and files top critical rungs into pm intake
Matrix cellPM: priority COMPUTED from the capability boards · runtime/nx_compare_rank.nx · PRESENT decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
PR2 Every plan carries a version ladder · cell PRESENT · gate UNRECORDED
Contractrk_list_one · executor Data · 0.5 u · stands on PR1
Definition of doneAll six .plan domains declare ver rows; the ranker refuses ambiguity by labeling missing ladders
Matrix cellPM: version-staged critical path (0.1 -> 1.0 -> 2.0) · runtime/nx_compare_rank.nx · PRESENT decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
PR3 PM board renders the ranking · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contractpb_rank_pane · executor Organ · 1 u · stands on PR1
Definition of donenx_pm_board gains a pane reading the comparerank- planes so the dashboard shows the computed queue, not a hand list
Matrix cellNO-MATRIX-ROW — no matrix row carries pb_rank_pane; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work logno log row names this rung yet
PR4 Re-rank on the compare beat · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contractcb_rank_tick · executor Organ · 1 u · stands on PR3
Definition of doneThe beat re-runs the ranker after each regen so a landed symbol reorders the queue the same day
Matrix cellNO-MATRIX-ROW — no matrix row carries cb_rank_tick; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work logno log row names this rung yet
PR5 RACI joined to the ranked queue · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contractraci_rank_join · executor Organ · 1 u · stands on PR3
Definition of doneEach ranked rung carries its owner role from the raci- plane; unowned critical rungs are a named breach
Matrix cellNO-MATRIX-ROW — no matrix row carries raci_rank_join; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work log2026-09-23 measure 2026-09-23 plan accounting:849 source rows are classified (836 candidate-linked/13context; source semantic review remains open),81 requirement families have proposed next-action owners (32foundation/28delivery/7research/14future). Phase is a preference among dependency-ready work, not a hard barrier.23 requirements have37 reviewed board scope links;58 need mappings.70 canonical prerequisites are ordered;33 need activity bindings. Prior rejections gameengine:GE12 and charsim:R23 remain visible; all current delivery remains unassessed and evidence age UNKNOWN. Full accounting: knowledge/gates/estate-pm-plan-release-review-20260923.json SHA7a95ccb48f208fd774d9510362e419fc69876ae447e7eeda6c5181d085630593.
2026-09-24 measure 2026-09-23 coverage clarification: the849 source rows partition836MAPPED and13CONTEXT; their review statuses partition70TUTOR_REVIEWED and779CANDIDATE. Zero unclassified links does not mean semantic completeness or delivery. Current exact-artifact unrelated-domain ship control was IDENTICAL181514B; separate full HTML/JSON captures differ only in existing observation-time fields. Earlier raw DIFFERS/coverage0 and observation ambiguity remain retained, not relabeled. Primary-gate argument forwarding incompatibility and management16384B response capture are release-composition debt; full native retained output was reviewed before adoption. Evidence knowledge/gates/pm-compare-adoption-evidence-20260923.json SHA846e87139fba621891f6d765e8ee02097f721ea28452eaa343c3b113de04990f.
2026-09-26 land W14 PM-RELEASE-PLUMBING: the raci- lane plane that PR5 joins onto the ranked queue (and that nx_pm_board, nx_pm_cockpit, nx_pm_roi_lib and nx_law_warden read) is now a derived view of the one RACI authority knowledge/store/raci: nx_raci_reconcile lanes-project (reviewed by plan hash) and lanes-project-regenerate rewrite only the R A C I columns of lanes whose id is an authority activity, keep lane status and notes byte-exact and never give a lane-only row values; production drift 1 to 0 (research A pm to researcher, adjudicated from the record on ecosystem EC71). Readers still read: nx_pm_cockpit_gate 17/17 GREEN (RACI emitter contract, JSON retains RACI); nx_pm_board_gate 6/6 GREEN after its subject ladder fix (it had forked /tmp/nx_pm_board.sov.elf, a path no builder writes; SHIPPED b8ed8070, first promote, registered, /api/gate_run GREEN). 103 lanes remain lane-only and are named for the RACI owner (debt 1790461667).
2026-09-26 queue W14 PM-RELEASE-PLUMBING declared builds NOT promoted: (1) nx_pm_cockpit_gate was built and run by nx_sov_build_run --qualify only (17/17 GREEN) to prove the cockpit still reads the derived raci- view; it stays BUILT-UNPROMOTED with its owner's staged .new untouched. (2) nx_pm_cockpit_investment_t343 was built and run --qualify json only: from the buildroot CWD it read ZERO lanes and zero debts and printed them as clean zeros, because its plane prefixes are CWD-relative bare paths (the same literal is right from nishihost and silent from buildroot); it is a BUILT-UNPROMOTED stage copy of nx_pm_cockpit on the same roi lib, an EC71 parallel-tool candidate for its owner, so its post-projection read stays UNVERIFIED. The promoted nx_pm_cockpit json run from nishihost (job 1790461943) reads the research lane as R researcher A researcher C workstream I pm. Also for the RACI owner: lane-only row vault-suite is column-shifted (title in R, R= A= C= I= labels one column right), so the cockpit renders it as garbage; it is outside the projection by design (lane-only rows are never written) and belongs to the lane-only classification in debt 1790461667.
PR6 Sponsorship feedback as a ranker signal · cell LANDED · gate UNRECORDED
Contractrk_sponsor_term · executor Organ · 1 u · stands on PR1
Definition of doneOperator verdicts land as sponsor- plane rows (domain/rung, direction, weight, date, verbatim words) the moment they arrive, and the ranker multiplies value by the sponsorship coefficient -- revealed preference becomes a number, not a correction after the fact
Matrix cellPM: sponsorship feedback as a ranker coefficient · runtime/nx_compare_rank.nx · LANDED decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
PR7 Estimates that learn from actuals · cell WATCHING · gate UNRECORDED
Contractrk_cost_recal · executor Organ · 1 u · stands on PR4
Definition of doneWhen a rung lands, its measured session-leg cost writes back beside the plan estimate; the unit row recalibrates from history instead of staying a guess
Matrix cellPM: estimates that learn from actuals · runtime/nx_compare_rank.nx · WATCHING decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
PR8 Outcome read-back per investment · cell WATCHING · gate UNRECORDED
Contractrk_outcome_join · executor Organ · 2 u · stands on PR6
Definition of doneEach landed rung joins its before/after on the panel score, surface usage and the sponsor verdict, so a paying investment is distinguishable from a busy one
Matrix cellPM: outcome read-back per investment · runtime/nx_compare_rank.nx · WATCHING decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work log2026-09-09 queue 2026-09-09 operator direction retained: use hard Beach deliverables to test shared estate investment; ranker source audit found existing dependency/cluster/sponsor/version logic and explicitly missing uncertainty estimates. This record does not claim runtime changes or live UI delivery.
PR9 The estate-wide portfolio run · cell WATCHING · gate UNRECORDED
Contractrk_portfolio · executor Organ · 1.5 u · stands on PR6
Definition of doneOne dr_ocm pass across EVERY domain critical path, weighted by sponsorship + the maturity rollup, under the real token/box budget -- the weekly campaign plan computed, never hand-ranked
Matrix cellPM: the estate-wide portfolio run · runtime/nx_compare_rank.nx · WATCHING decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
PR10 Per-lane gap-to-optimal in the ranker · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contractrk_lane_gap · executor Organ · 2 u · stands on PR1
Definition of doneThe ranker reads lane rows (representation, use-cases, optimal-bar, current) and adds a gap-to-THIS-lane-optimal term to value, so a lane scoring below its bar is DRIVEN UP, never culled. The referee cjc_panel supplies the current per-render measure. Operator 2026-08-19: rank every lane to its optimal for its use cases, never pick a winner. Done-rule: on charsim splat and mesh both rank by their OWN shortfall, and the printed derivation names each lane optimal and gap
Matrix cellNO-MATRIX-ROW — no matrix row carries rk_lane_gap; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work logno log row names this rung yet
PR11 Outside dependency priced into the ranking · cell PRESENT · gate UNRECORDED
Contractrk_selfsuff_term · executor Organ · 1 u · stands on PR1
Definition of doneThe ranker discounts each rung value by a coefficient derived ONLY from measured dependency counts in nx_selfsuff's ledger (outside services the organ dials plus a witnessed autonomy gap), prints the ledger row that fired by id beside the number, and floors the coefficient so a dependency DEMOTES a rung but never hides it. ACCEPT RULE, pre-declared: nx_selfsuff_gate must prove BOTH directions -- POSITIVE control, a zero-dependency ledger leaves every ranked priority identical to no ledger at all; penalty direction, a measured dependency lowers at least one priority and raises none; floor, a huge dependency clamps the multiplier at one quarter and still leaves every rung in the ranking; and the three abstain states (no ledger, organ absent from the census, no matrix row) are each named rather than priced as zero
Matrix cellPM: outside dependency priced into the ranking · runtime/nx_compare_rank.nx · PRESENT decl
Gatenx_compare_rank_caps_gate · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
NAP1 The published project pulse · cell LANDED · gate UNRECORDED
Contractpp_emit · executor Organ · 1 u · stands on nothing
Definition of doneOne organ composes a domain's rank artifact, its nishi_project plane (tasks, states, notes) and its watch contracts into a PUBLIC page at /compare/<dom>/project/ -- the team's journal, findings and recommendations visible beside the board they serve; refuses on a missing rank or empty plane
Matrix cellNAP: the published project loop -- a plan becomes a live team page with journal, findings and recommendations · runtime/_hdl_build/nx_proj_pulse.nx · LANDED decl
Gatenx_proj_pulse · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
NAP2 Plan-to-project sync with evidence-derived state · cell WATCHING · gate UNRECORDED
Contractpp_sync · executor Organ · 1 u · stands on NAP1
Definition of doneA rung row becomes a project task (deps, effort from est u, owner by executor class); a task is DONE only when its contract symbol lands AND its gate is green -- state is derived from evidence, never asserted; re-sync is idempotent
Matrix cellNAP: evidence-derived task state -- DONE only when the contract symbol lands and its gate is green · runtime/_hdl_build/nx_proj_pulse.nx · WATCHING decl
Gatenx_proj_pulse · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
NAP3 The loop files its own recommendations · cell WATCHING · gate UNRECORDED
Contractpp_recommend · executor Organ · 1 u · stands on NAP1
Definition of doneDrift the pulse detects (UNMAPPED rungs, stale estimates, blocked chains, rank-vs-state disagreement) is filed to pm intake as marker-idempotent REQs -- the feeder pattern; proven the day it was designed: the gen ranker's UNMAPPED flag on G2 became a matrix fix within the hour
Matrix cellNAP: the loop files its own recommendations · runtime/_hdl_build/nx_proj_pulse.nx · WATCHING decl
Gatenx_proj_pulse · UNRECORDED — no recorded verdict for this gate (it is declared for the organ but the evidence referee's last run did not record it: it is not on this board's gates map, or the referee has not run since the per-gate record shipped)
Work logno log row names this rung yet
NAP4 Executor dispatch per ranked rung · cell WATCHING · gate NO-GATE-DECLARED
Contractnap_dispatch · executor Organ · 1.5 u · stands on NAP2
Definition of doneThe NOW rungs each emit a promptpack executor scaffold carrying the rung's contract, done-rule and gate; organ-authorable rungs route to auto_builder DATA specs instead of a seat
Matrix cellNAP: executor dispatch per ranked rung · runtime/nx_nap_dispatch.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_nap_dispatch; declare nx_nap_dispatch TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
NAP5 Proposal tournament before build · cell WATCHING · gate NO-GATE-DECLARED
Contractnap_tournament · executor Organ · 2 u · stands on NAP4
Definition of doneCo-scientist-class: N candidate approaches per critical rung, judged by the estate panel with pre-declared accept rules; the winner's grounds are published on the pulse before a build starts [coscientist]
Matrix cellNAP: proposal tournament before build · runtime/nx_nap_tournament.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_nap_tournament; declare nx_nap_tournament TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
NAP6 Evaluator-driven candidate evolution · cell WATCHING · gate NO-GATE-DECLARED
Contractnap_evolve · executor Organ · 3 u · stands on NAP5
Definition of doneAlphaEvolve-class: candidate organ variants scored by the EXISTING gate fleet as automated evaluators, best survivor promoted under the promote ruler; bounded actions per unit time and a time-boxed off-switch by construction [alphaevolve]
Matrix cellNAP: evaluator-driven candidate evolution · runtime/nx_nap_evolve.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_nap_evolve; declare nx_nap_evolve TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
PR12 The debt board's ranked drain, end to end · cell WATCHING · gate NO-GATE-DECLARED
Contractdt_rank_drain · executor Organ · 1 u · stands on nothing
Definition of donenx_debt_triple emits ranker args and holds the position-to-row-id map, but the ranker's callable surface takes bare v m c integers on argv and carries no row identity (nx_dr_ocm_cli.nx usage line: nx_dr_ocm <budget> [v m c]...), so the join from a ranked position back to a debt row lives outside both organs and the published order is only as reproducible as the seat that carried the map between them. Contract: one verb running feeder to ranker to a published ranked drain keyed by row id, INHERITING the feeder's saturation exit so it refuses to publish an order rather than ranking on a degenerate feature.
Matrix cellPM: the ranked drain runs end to end, from the board to a selected worklist · runtime/nx_debt_triple.nx · WATCHING decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_debt_triple; declare nx_debt_triple TAB <gate> and the ship loop proves it and the verdict lands here.
Work logno log row names this rung yet
PR13 Dependency-order and cost-inversion bench over every board · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contractrk_depbench · executor Organ · 1 u · stands on PR1
Definition of doneA ruler reads every published .rank beside its .plan and counts (a) open rungs ranked above a direct open prerequisite and (b) organ clusters whose printed cost order inverts the declared est order, per board and fleet with the partition summing; it runs on the fleet beat and the board renders both counts as a trajectory; PRE-DECLARED accept rule for any ranker change: neither count may rise. First measurement by hand 2026-09-21 on speech and scripturestudy before the fix: 6 of 32 open rungs above a direct prerequisite (SP4 over SP3, SP6 over SP5, SP3 over SP2, SS4 over SS5, SS7 over SS6, SS11 over SS3) and a 3.3x cost inversion (SP5 4 u priced 40 tenths, SP6 6 u priced 12)
Matrix cellNO-MATRIX-ROW — no matrix row carries rk_depbench; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work log2026-09-21 measure 2026-09-21 the ranker DISAGREED with a seat's hand order on two fresh boards and the evidence went against the ranker: it ranked SP4 (v 28) second while SP4 depends on SP3 (sixth) which depends on SP2 (seventh); SP6 (6 u) fifth above SP5 (4 u) twelfth because five contracts on one organ file divided SP6's cost by five; SS7 (v 5, c 1) third above SS1 (v 24, c 5) fourth, the corpus every other rung stands on. Method: direct dep edges from each plan against the rank rows of each .rank artefact, whole population of both boards
2026-09-21 land nx_compare_rank.nx: the cluster divisor no longer divides (the cluster size is still measured and printed) and a DEP-PULL pass raises every open prerequisite until its priority reads one above the highest open dependent that pulls it, to a fixpoint, each pull printed by id; no coefficient, only the board's dep edges. Sovereign build clean, nx_behaveprobe live-vs-staged DIFFERS STRONG on speech (37,319 vs 43,373 bytes, both rc 0), nx_organ_ship in flight
2026-09-21 lesson A ranker that prices a dependent above its own prerequisite is answering which node is most valuable, not what to do next; the seat's order was right for the wrong reason (taste) and the ranker was wrong for the right reason (arithmetic with a missing edge term). Put the edge in the arithmetic, then let the ranker decide
2026-09-21 measure AFTER the fix, live binary sha 71b07255 shipped through nx_organ_ship (caps gate 17 of 17 GREEN, approved loss = 2 compiler source-path runs, lost_other 0): speech DEP-PULL pulls=41 passes=11 open=18, scripturestudy pulls=13 passes=5 open=14; dependency-order violations over every direct dep edge of both .rank artefacts 6 of 32 -> 0 of 32; cost order now follows declared est (SP5 4 u at 40 tenths before SP6 6 u at 60). Speech order SP0 SP1 SP2 SP3 SP4 SP11 SP5 SP6 SP7 SP8 SP12; scripturestudy SS0 SS1 SS2 SS5 SS3 SS4 SS11. Imprecision chosen and named: the pull compares the pre-scale integer priority (value times momentum over cost) so each pull steps a whole unit of cost, which orders correctly and inflates raised values coarsely; the child's scaled priority carries the published number
2026-09-21 lesson Where the ranker still disagreed after the fix it was right: SP17 (register the lane) sat twelfth because the plan declared no edge from it, and the remedy was the missing dep row on SP4, never a hand override. A ranker that respects edges makes the plan's honesty the only lever
2026-09-21 land SOVEREIGN RULER SHIPPED (operator 2026-09-21: the bench must be sovereign, not a seat's hand count): nx_depbench_lib (db_count over a board's rung rows and its published rank rows: an open rung ranked above a direct open prerequisite), nx_depbench CLI (exit 0 GREEN, 1 RED, 3 UNREADABLE, verdict last), nx_depbench_gate 11 of 11 on planted boards (inversion counted once, clean order zero, done prerequisite not an edge, comma deps each an edge, neg-control BITE-PROVEN fires on bad and silent on good); shipped through nx_organ_ship sha ef3a5048, registered, offc twin installed. The gate's first run read 9 of 11 RED and both reds were fixture errors (an inverted neg-control flag, a miscounted planted edge), corrected in the fixture, never in the ruler
2026-09-21 measure SOVEREIGN AFTER-STATE on the shipped ranker 71b07255: nx_depbench speech rungs=18 ranked=18 edges_checked=18 violations=0 GREEN; nx_depbench scripturestudy rungs=14 ranked=14 edges_checked=13 violations=0 GREEN. The BEFORE-STATE (6 of 32) remains a hand count over the pre-fix artefacts, which the re-rank overwrote; the gate's planted inversion is the proof the ruler counts that class. PR13 is CLOSED for the ruler; the fleet beat row that runs it over every board and renders the trajectory is what remains, and the fleet re-rank on the new binary (nx_compare_rank_fleet, job 1790021346) was still running at journal time
2026-09-22 queue STALE LABEL, named not hidden: the ranker's summary line still prints rule=(...)/(est_tenths/cluster) although the arithmetic no longer divides by the cluster since 71b07255; the literal was left so the promote ruler lost no run. The next ranker ship rewrites that label to (est_tenths) with DEP-PULL named, under an enumerated allow_loss for that one run
2026-09-22 land 2026-09-22 nx_depbench all mode shipped sha 6c5f59c4f5c07991ef99fed2a745e075dd10c7492945795b8b8e112f43a1e9bd (gate 11/11, content loss = the old usage line only, probe on lang IDENTICAL STRONG): one DEPBENCH line per board on regen.list, unranked and noplan boards counted and never judged, one row appended per run to knowledge/status/depbench.jrnl, DEPBENCH-ALL summary last with the partition printed; clock row depbenchall 86400 ./nx_depbench.elf all put to the desired plane (rows 209)
2026-09-22 measure 2026-09-22 FIRST FLEET ROW: domains 118 = ranked 117 + unranked 1 + noplan 0, edges_checked 658, violations 12, red_domains 4 (mangagen 1, devguardrails 2, gameengine 7, engineshift 2), verdict RED. Every RED board was then re-ranked with the DEP-PULL ranker and every one was REFUSED before ranking, so their .rank artefacts are fossils of the pre-fix ranker: mangagen RANK REFUSED malformed graph (R11 names a missing dep R1), devguardrails RANK REFUSED malformed graph (7 rung rows DG10..DG13 carry 6 fields of 8 and prose in the dep column), gameengine RANK REFUSED BAR-STALE (11 bars: 5 fresh, 4 attested, 2 stale), engineshift RANK REFUSED LADDER-PARTIAL (one rungrole declared twice). The 12 violations therefore measure four boards the ranker cannot re-derive until their owning lanes repair the data; the 113 boards the ranker can rank read 0 violations
2026-09-22 lesson 2026-09-22 a fleet ruler that reads a rank artefact cannot tell a live rank from a fossil one: a board the ranker now refuses keeps the .rank its last successful run wrote, and every violation on it is a claim about a ranker generation that no longer runs. The all mode counts these honestly as violations; the remedy is a rank artefact that carries the sha of the plan it ranked so the ruler can read RANK-STALE by content, never by mtime
2026-09-22 queue 2026-09-22 owed: the .rank artefact records the plan sha it was derived from and nx_depbench all reports RANK-STALE per board (counted apart from violations); the four data repairs belong to the mangagen, devguardrails, gameengine and engineshift lanes and are named here, not edited from this seat
2026-09-22 land 2026-09-22 PM MACHINERY LANDED FOR THE LANGUAGE PROGRAM: the RACI store carries LANG-superiority-program (R architect+researcher+referee, A pm, C adversary+operator, I all-crew); the board hygiene ritual is the plan plane plan-lang-board-hygiene- (nx_barfresh, nx_ladder, nx_depbench, nx_compare_refs_gate over lang) and it executes under the plan runner shipped 593e196c, which retires closed rows by name, names a malformed row by its rule and refuses an all-retired plane by name; the ranker files the language top-3 into pm_intake.jrnl on every rank; the team playbook is knowledge/library/nishi_team_playbook_2026-09-22.md. Approval is data: removal of any archived artifact (ecosystem EC71) and acceptance of any rung (the three-party rule) are accept- rows the operator writes, and the PM board reads them, never a seat's word
2026-09-22 queue 2026-09-22 owed on this board: nx_compare_refs_gate needs a per-domain scope so a domain ritual can read green for its own board while the fleet gate still names every other lane's uncited references (measured: step 4 of the lang ritual reads rc=1 on authz, deepresearch, deploy, dataio, browser and civicmap references with zero lang offenders); the ritual plane keeps the fleet step until then so no red is hidden
PR14 The intake front door on the emitted site: session-gated /backlog form · cell PRESENT · gate NO-GATE-DECLARED
Contractpbp_serve · executor Daemon · 1 u · stands on nothing
Definition of doneGET /backlog serves the intake list with a native POST form under the opaque session and POST appends a REQ frame through the strict backlog owner (nx_host_backlog_post_t342 pbp_serve; daemon nx_sites_daemon_backlog_t343 BUILT 597,120 B and UNPROMOTED on 2026-09-22, while the live /backlog is the legacy read-only list rendered from knowledge/status/pm_intake.jrnl); done-rule: a POST from a real session on nishifamily.com lands a REQ the list then shows, deployed by the release owner through the sites deploy row under the never-brick health check, and an operator accept- row (three-party completion)
Matrix cellPM: the intake front door on the emitted site, a session-gated form · runtime/_hdl_build/nx_host_backlog_post_t342.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_host_backlog_post_t342; declare nx_host_backlog_post_t342 TAB <gate> and the ship loop proves it and the verdict lands here.
Work log2026-09-22 measure 2026-09-22 live https://nishifamily.com/backlog answers 200 with the legacy nx_pm_intake list (new=5 codex REQs plus 1790106111); the session-gated GET form and POST owner (t342-t344) are BUILT-UNPROMOTED; deploying the front door is the release owner's act under EC68, not a seat's
2026-09-22 measure 2026-09-22 the live /backlog list is a FOSSIL of daemon start: the same 2312-byte body (new=5) before and after REQ 1790106111 was appended, triaged and filed, while pm_intake.jrnl grew past 1.8 MB; the session-gated variant reads per request -- debt filed for the release owner
2026-09-23 queue 2026-09-22 ALPHA OF THE FRONT DOOR, release state by evidence (operator: always get an alpha out): READY = nx_sites_daemon_backlog_t343 BUILT 597120 B in _build (nx_catalog BUILT-UNPROMOTED), its owner lib nx_host_backlog_post_t342 (GET form under the opaque session, POST appends a REQ frame through the strict backlog owner); WAITING = deploy_targets.conf carries NO backlog row (nx_txtscan count backlog = 0 over 20153 B), so /api/deploy cannot take it and the never-brick health-checked deploy is the release owner's act under EC68 (site-release RACI, publisher AR); NEEDS-INTERVENTION = none on the seat side. Recipe for the owner: (1) add the deploy row (src <x>.elf.new, health probe on the daemon's port, rollback slot), (2) nx_stage_alias the built daemon into the row's src, (3) /api/deploy target=<row> confirm=yes expect_sha256=<staged sha> and read DEPLOYED-GREEN listen=VERIFIED, (4) nx_page_verify https://nishifamily.com/backlog and a POST from a real session lands a REQ the list then shows, (5) an operator accept- row (three-party). Until then the live /backlog stays the fossil list (debt 1790108275) and the intake path is nx_pm_intake ask through a plan plane, which is what carried REQ 1790106111
PR15 Intake routed to the boards by the estate: REQ to rungs, sponsor row, FILED · cell PRESENT · gate NO-GATE-DECLARED
Contractir_propose · executor Organ · 2 u · stands on PR6
Definition of donenx_intake_route (lib, CLI, gate 51/51 with the fork leg exercised): propose tokenizes the REQ text into whole words under knowledge/intake_route.conf (topk, loghead, stop rows -- every bound is DATA, no length or count threshold) and ranks every rung row and every _ABSENT_ watch row of every board on regen.list by whole-word BM25F (nx_bm25_lib: title 3 body 1, k1 1.2 b 0.75, idf over the whole corpus), publishing the top-k with every score, the idf per term and the top1-top2 gap; file resolves every dom:rung target on its plan before any write, then lands ONE sponsor- row scoped to the targets' symbols with the verbatim words (the ranker's PR6 term reads the bare sponsor- prefix), TRIAGE and FILED frames through nx_pm_intake, and a marker-idempotent log queue row per target plan; done-rule: the calibration request 1790106111 routes by the organ and a second file changes nothing (gate T17); SHIPPED 2026-09-22 v1 sha d296daa3 then v2 sha a90de75f (whole-word BM25F, the thresholds retracted), registered, gate rostered
Matrix cellPM: intake routed to the capability boards by the estate and flagged as a wanted outcome · runtime/nx_intake_route_lib.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_intake_route_lib; declare nx_intake_route_lib TAB <gate> and the ship loop proves it and the verdict lands here.
Work log2026-09-22 land 2026-09-22 SHIPPED nx_intake_route (buildroot/runtime/nx_intake_route_lib.nx 49,728 B, CLI, gate _hdl_build/nx_intake_route_gate.nx 43/43 GREEN on the NAS, both through nx_organ_ship: organ sha d296daa3 registered and offc-twinned, gate sha a474c395 promoted); conf knowledge/intake_route.conf; laptop twins byte-identical; the operator's own request (REQ 1790106111, landed through plan-intake-carexplode-0922- via nx_pm_intake ask) was the first subject
2026-09-22 measure 2026-09-22 CALIBRATION on REQ 1790106111 over 118 boards (117 read, trafficsafety refused duplicate-rung-id TS11, debt 1790107811): conf minlen 3, minscore 2, maxwords 24 routed 98 boards (cleanserve best 7) because the goal mapper matches SUBSTRINGS and art, car, view, print, design hit nearly every board; conf minlen 5, minscore 3, maxwords 16 routed exactly ONE board -- stem's watch gap ct_assembly_explode at score 3 -- and no rung on any board, which named the three rungs the PM tier then authored (stem R7, dcc DC17, supimacotton CT6). Both runs journaled under knowledge/store/planrun-intake-route-1790106111- and -v2-
2026-09-22 queue owed: whole-word matching in nx_goalmap_lib gm_has_ci (substring saturates every short word, so the conf had to climb to minlen 5); the trafficsafety TS11 duplicate (debt 1790107811, the board's own lane); an intake-route step on the clock or a plan ritual so every NEW REQ is proposed on the beat and the PM tier only confirms targets; a cap naming nx_intake_route for the MCP surface (minted 2026-09-22 nonce 1790107900)
2026-09-22 land 2026-09-22 FIRST REAL FILE by the organ: nx_intake_route file 1790106111 operator plus2 stem:R7,dcc:DC17,supimacotton:CT6 -> sponsor row intake-1790106111 on the bare sponsor- plane (rows=22), TRIAGE and FILED frames written, 3 queue rows written; nx_compare_rank then printed sponsor[intake-1790106111:plus2] sponsor_mult_x4=6 on stem R7, dcc DC17 and supimacotton CT6 -- the flag is a number the ranker reads, not a sentence
2026-09-23 retract 2026-09-22 the v1 calibration rows above (minlen 5 / minscore 3 / maxwords 16 routing exactly one board) are RETRACTED as the METHOD, not as measurements: a length-and-count threshold over a substring mapper is not a ranker (operator: that sounds unintelligent and hacky, look at how sota it is as of today); the measurements stand as the record of why the substring family was root-fixed on the search board (T1)
2026-09-23 land 2026-09-22 v2 ROUTER: ir_propose ranks every rung row and every _ABSENT_ watch row of every board on regen.list by whole-word BM25F (nx_bm25_lib: idf table and average field lengths cached once per query, title 3 / body 1, k1 1.2, b 0.75, saturate once over the weighted pseudo-tf, the Robertson and Zaragoza form the search board's SB-LEX bar names) and publishes the top-k with every score, the idf per term and the top1-top2 gap; conf knowledge/intake_route.conf = topk
2026-09-23 lesson 2026-09-22 THE SHORT-WORD SATURATION WAS THE TOKENIZER, NOT THE WORDS: the estate's BM25 family (nx_bm25.nx 29 importers; _hdl_build/nx_bm25f.nx 3) counted tf and df by SUBSTRING, so car scored card, scar and carpet everywhere; root-fixed on the search board as T1 (nx_wordb_lib, the one word boundary over nx_ascii; nx_bm25f_gate 9/9 with the car-vs-card neg-control, nx_cms_search_gate 3/3, the nx_bm25_test KAT 5/5 and building on the NAS for the first time since its direct import resolved to a _hdl_build twin). Two seat errors banked: an nx_absent listing is CAPPED at 12 of N and was read as the population (a caller of cl_lower was missed and the ship named it); stop words are DATA rows and a length rule is a hack
2026-09-23 land 2026-09-22 SHIPPED v2 through nx_organ_ship: nx_intake_route sha a90de75f1098fe4b68beb147facaa679331417661d006e70e9890174948b67ce (135296 B, promoted, _offc twin installed, registered; live was d296daa3 226496 B), prove GREEN (gate 51/51, closure bank CURRENT), content loss 131 runs approved by evidence record 067bbda0 (106 v1 goalmap and seg-store symbol names + 25 v1 threshold digest fields), behaviour reviewed from the retained observation 7e8a3fba (both generations run on knowledge/intake_route_probe.conf, review knowledge/status/harness/intake_route_v2_review.txt sha dde5e2c3, evidence intake_route_v2_review_evidence.txt sha 3dd4144a), harness manifest hc455230744b72cec. nx_intake_route_gate admitted to knowledge/gateroster.conf (trial GREEN 74 ms, journal knowledge/status/gatetrial_intake_route_0922.jrnl); nx_rungclose check pmdash PR15 reads stage LIVE, weakest tested = no GREEN roster row since the land yet: the daily beat moves it to ALPHA, wired and operated wait on an intake beat (queue below)
2026-09-23 measure 2026-09-22 LIVE v2 PROPOSAL on REQ 1790106111 (MCP nx_intake_route propose): 41 terms after 159 stop rows, corpus 3616 documents = 2021 rungs + 1595 watch rows over 118 boards read, 0 unreadable (v2 scores a duplicate rung id as two rows, so trafficsafety is no longer refused), 1971 scored; ranked: 1 supimacotton CT6 142239 milli, 2 dcc DC17 102423, 3 dcc EXPLODE watch 101385, 4 stem R7 76132, 5 supimacotton PRODUCT watch 53364, 6 stem Twin-CAD watch 38394, 7 procgen PG30 ex3_pose 25688 (the exploded-view engine the PM tier had to find by hand under v1), then browser, pmdash PR14, growth, autodev, graphics, synthroom, aesthetictwin, search; top1-top2 gap 279 permil. The three authored targets are ranks 1, 2 and 4 with no threshold in the path
2026-09-23 queue 2026-09-22 owed for BETA and OPERATED under the close ruler: a beat verb that proposes every NEW REQ frame in pm_intake.jrnl on the clock and writes the digest beside the journal (then a treat row mcp=nx_intake_route api=/api/tools/call prim=nx_intake_route_lib wf=plan-intake-route agent=intakeroute); the numeric and one-letter tokens the REQ text carries (2026, 09, 22, t) are discounted by idf, not by a rule, and stay as measured; search T2 stemming (cars and car conflate today only through idf, not through nx_stem)
2026-09-23 land SWEEP VERB SHIPPED: nx_intake_route sha 38fb2575 (nx_organ_ship, prove=GREEN 67/67 on the fresh gate, behaveprobe IDENTICAL STRONG on the propose workload, one lost run approved by allow_loss_v1=45ee7078 = the v1 usage string, offc twin installed, registered). nx_intake_route sweep <journal> [conf] proposes every NEW REQ, at most sweepmax (knowledge/intake_route.conf row, provisional 5) per run oldest first: one ledger row per request in knowledge/status/intake_route_sweep.jrnl keyed id=<id> between tabs, the digest under knowledge/status/intake_route/<id>.json, knowledge/status/intake_route_sweep.status truncate-written summary-line-last; nothing on a board moves. TREATMENT AS DATA: treat row PR15 mcp=nx_intake_route api=/api/tools/call prim=nx_intake_route_lib wf=intakeroute (plane plan-intakeroute- step 1 = nx_intake_route sweep knowledge/status/pm_intake.jrnl) agent=intakeroute (clock row intakeroute 3600 nx_plan_run.elf intakeroute; sizeguard-intakeroute 3600 at the status-journal budget 1048576/20000). nx_treatment pmdash reads COMPLETE, board TREATED; close ruler: live and wired HOLD, tested waits on the roster beat, operated on the clock's first run
2026-09-23 measure FIRST LIVE SWEEP (job 1790132380, nx_intake_route sha 38fb2575): ids=12462 new=12069 triaged=390 filed=3 proposed_now=5 already=0 deferred=12064 routed=5 nomatch=0 refused=0 write_failed=0 sweepmax=5 elapsed_s=45 -- 9 s per proposal, because ir_propose re-read every board (regen.list, 100+ .plan and .matrix files) on every call; the instrument is being fixed (corpus loaded ONCE per sweep, ir_corpus_load + ir_propose_on), sweepmax stays PROVISIONAL until the per-proposal cost is re-measured on the refactored organ
2026-09-23 measure THE CLOCK RAN THE SWEEP ON ITS OWN (row intakeroute, DESIRED plane put 1790132500, folded LIVE and fired at epoch 1790137120, read from the actlog by nx_rungclose: operated=HOLDS run=1790137188 agent_plane=live): ids=12464 new=12070 triaged=391 filed=3 proposed_now=5 already=5 deferred=12060 routed=5 sweepmax=5 elapsed_s=67 -- 13.4 s per proposal on the loaded box against 9 s on the hand run, the same re-read-every-board cost; 10 ledger rows now, none moved on a board; the hourly beat is live and its per-run cost is the number the refactor is measured against
2026-09-23 land CORPUS LOADED ONCE PER SWEEP: nx_intake_route SHIPPED sha 1e87660b50252be368d73cec4c323fdcc98f15435a4ae25ef1d9bb78fefb51af (156464 B) through nx_organ_ship, harness hb4f050d074746cbd -- ir_propose split into ir_corpus_load (every board's plan and matrix read ONCE into a cp[] descriptor: doms, counts, the six document arrays) and ir_propose_on (one request's terms, idf table, scores, top-k, digest, REQ-ABSENT refusal); ir_sweep loads the corpus once and scores every proposal on it; propose composes both so its digest is unchanged. PROOFS: nx_contentdiff lost_from_live=0 gained=3 GREEN; nx_behaveprobe live-vs-staged on the probe workload IDENTICAL (6543 B both, first_diff_off=-1); nx_intake_route_gate 67/67 GREEN rebuilt fresh in the ship (bank DRIFTED, so the loop rebuilt it) and promoted separately; _offc twin installed
2026-09-23 lesson A PER-CALL RE-READ OF A SHARED CORPUS IS A COST THAT ONLY SHOWS UP WHEN A BATCH VERB ARRIVES: propose read every board on every call and nobody paid for it until sweep called propose five times and paid five times. FIX THE INSTRUMENT, NEVER TUNE THE BUDGET TO IT: sweepmax was first set to 5 because 9 s per proposal fit an hourly beat, which is a threshold calibrated on a defect; the corpus is loaded once now and sweepmax is re-derived from the measured per-proposal cost of the refactored organ
2026-09-23 retract THE 'RE-READS EVERY BOARD' MECHANISM WAS WRONG, refuted by the instrument I put in the sweep: nx_intake_route sha 6e4c3dba (shipped through nx_organ_ship, lost=0, behaveprobe IDENTICAL) prints load_ms= and propose_ms= (sys_now_ms around ir_corpus_load and around every ir_propose_on); the live run (job 1790138325) read elapsed_s=49 load_ms=134 propose_ms=43256 for 5 proposals -- the corpus load is 134 ms and the scoring pass is 8.65 s per proposal. The refactor stands (loading once is right) but the lesson row at 1790137800 named the wrong cost; the cost is inside the BM25F scoring pass (idf table + per-document score over 3616 documents x 21..111 terms, each a whole-word scan of the document text per term), not the board reads
2026-09-23 measure TIMED SWEEP (job 1790138325, sha 6e4c3dba): ids=12464 new=12070 triaged=391 filed=3 proposed_now=5 already=15 deferred=12050 routed=5 sweepmax=5 elapsed_s=49 load_ms=134 propose_ms=43256 -- 15 ledger rows now; per-proposal scoring 8651 ms against a 134 ms corpus load = the scan-per-term shape (documents are re-tokenized once per query term per proposal); the remedy is a per-document term table built once at corpus load in nx_bm25_lib (the one BM25 family), scored by lookup, proven byte-identical to the scan path on the fixture and on the live corpus before sweepmax is derived
2026-09-23 land THE TOKEN INDEX SHIPPED: nx_intake_route sha 52c90ffd4af87b522529b5f603ccc427d0b9df2c377166d35bc59cd32d726bb5 (176152 B) through nx_organ_ship, harness hb97a13777022fd4b -- nx_bm25_lib (the ONE BM25 family, extended never twinned) gains bm_index_build/query/score_milli/tf/df/dl/avg + bm_index_xcheck: each field tokenized ONCE at corpus load (nx_wordb_lib boundary, lowercased into an arena, per-document distinct tokens sorted by a 7-byte packed prefix key then bytes, with tf and dl), tf and df by binary search confirmed on the bytes (exact by construction, no hash); ir_corpus_load builds it (cp[CP_INDEX]), ir_propose_on scores by lookup; the scan path stays as the brute-force ORACLE and nx_intake_route xcheck <journal> <id> [conf] ships the comparison as a verb (exit 7 DISAGREE). PROOFS: nx_intake_route_gate 78/78 GREEN (T18 xcheck AGREE on the fixture, T18b-i index KATs incl. neg-control-index-SUBSTRING car-vs-card, neg-control-index-tampered-xcheck-FIRES); nx_contentdiff lost_from_live=1 = the old usage string superseded by the one naming xcheck (allow_loss_v1 47ad6c9d, evidence record retained); nx_behaveprobe live-vs-staged on the probe workload (41 terms, 3616 docs) IDENTICAL 6543 B both sides; gate promoted 75993c88
2026-09-23 measure THE ORACLE ON THE LIVE BOARDS (nx_intake_route xcheck, job 1790143514, sha 52c90ffd): docs=3617 terms=41 score_mismatch=0 df_mismatch=0 avg_mismatch=0 scan_ms=13755 index_ms=136 verdict=AGREE -- the token index reproduces the scan path exactly on every live document for the operator's request and answers 101x faster
2026-09-23 measure TIMED SWEEP ON THE INDEX (job 1790143517, sha 52c90ffd): ids=12472 new=12078 triaged=391 filed=3 proposed_now=5 already=25 deferred=12048 routed=5 sweepmax=5 elapsed_s=9 load_ms=726 propose_ms=732 -- 146 ms per proposal against 8651 ms before (59x); the corpus load grew 134 -> 726 ms because it now builds the index once; the run's other 7.5 s sits OUTSIDE load and propose (pass 1 over 12472 ids, the per-id ledger checks, the writes) and is the next number to attribute before any budget is derived from it
2026-09-23 measure THE RESIDUE ATTRIBUTED (nx_intake_route sha 5ba04d18 with pass1_ms/loop_ms/write_ms, job 1790143794, sweepmax=60): ids=12472 new=12078 proposed_now=60 already=30 deferred=11988 routed=60 elapsed_s=13 load_ms=478 propose_ms=5872 pass1_ms=470 loop_ms=5762 write_ms=20 -- 98 ms per proposal; the 5762 ms loop residue is 12078 needle scans of the ledger (one gm_find per NEW request over every ledger row), which grows with every proposal: quadratic in the backlog it exists to drain; pass 1's 470 ms is the same shape (a linear scan of the ids seen so far per frame). Both become O(1) lookups through one id SET (ir_idset_*, sized from the rows) in the next ship
2026-09-23 lesson A CORRECT FIX THAT UNCOVERS THE NEXT COST IS THE INSTRUMENT WORKING: the index took a proposal from 8651 to 98 ms, and only then could the sweep's summary show that its own membership checks were the next quadratic -- one sys_now_ms around each stage, printed in the receipt, is what turned 'elapsed_s=13' into a worklist of two named loops; a level without its partition would have read as 'the sweep is slow'
2026-09-23 land THE ID SET SHIPPED: nx_intake_route sha 6910e86c2b84c149f19a2411cfc1a024e3e0de1158222063e150f6c2e3ef1cfc (179264 B) through nx_organ_ship, harness h38eaa89a942cd7c9, contentdiff lost=0 gained=4, behaveprobe IDENTICAL 6543 B, gate 78/78 GREEN rebuilt and promoted 0f7542ca -- ir_idset_slot/put/has (open addressing, sized at twice the rows) replace the per-frame distinct scan in pass 1 (jset) and the per-request gm_find over the ledger (lset via ir_ledger_ids, column 1 id=)
2026-09-23 measure TIMED SWEEP ON THE ID SET (job 1790144064, sha 6910e86c, sweepmax=60): ids=12472 new=12078 proposed_now=60 already=90 deferred=11928 routed=60 elapsed_s=4 load_ms=657 propose_ms=3187 pass1_ms=17 loop_ms=125 write_ms=28 -- 53 ms per proposal; the residue fell 5762 -> 125 ms and pass 1 470 -> 17 ms; the run that read 45 s for 5 proposals at 1790132380 reads 4 s for 60 now, and every stage prints its own cost so the next seat starts from a partition, not a level. The hourly clock row drains the 11928 deferred requests in about 8.3 days at 60 per beat; nx_rungclose PR15 stays LIVE with tested waiting on the daily roster beat and operated on the next clock run after this land
2026-09-25 measure PM seat: the operator goal of 2026-09-25 filed verbatim as REQ 1790355000 (from=operator) plus 13 children 1790355001..1790355013 via nx_pm_intake ask-id with deterministic ids (journal 1911475 to 1916573 B, all 14 COMMITTED durable); router propose on all 14 over 118 boards and 3634 docs was decisive only where a rung already spoke the request words -- R2 connect:CN5 gap 609, R8 connect:CN6 gap 658, R10 legalpractice passkey portal gap 298, R12 scripturestudy sc_index gap 156, R11 synthroom:SR9 gap 133 -- and near-tied on R1 56, R4 45, R5 37, R7 61, R9 33 permil because their homes (connect CN13 to CN18) were being declared in parallel; the parent top1 was folkgames FG7 Dice family on the homonym family (qtf 4, gap 369): a whole-word ranker cannot tell a family circle from a dice family; 11 children FILED through nx_intake_route file (sponsor rows intake-<id>, triage and filed frames, one log row per target board); R6 and R7 wait for the cross-domain board the XLADDER seat is admitting
2026-09-25 measure PM seat second pass after the homes landed (119 boards, 3674 docs): the router top1 equals a reviewed target or its same-symbol faithsocial twin on 12 of 13 operator-goal children (R1 connect CN13 gap 525, R2 faithsocial FS2 the CN5 twin 217, R3 CN14 226, R4 CN14 526, R5 CN15 335, R6 faithsocial FS5 101, R8 CN6 132, R9 CN18 288, R10 authz AZ9 28 a near tie, R11 authz AZ10 152, R12 CN16 202, R13 CN17 398), against 1 of 13 on the first pass before those rungs existed; the one disagreement is R7, top1 a familyatlas watch note naming FamilySearch Family Groups (gap 145) with faithsocial first at rank 15, because no rung speaks groups with roles and events (queued to the faithsocial owner); lesson: nx_intake_route file keys its log presence on board plus request id, not on rung, so the R8 re-file widening to connect CN7 and comms C1 reported logs_present=4 logs_written=0 while comms.plan held only the first filing C7 row -- a widened route journals nothing on a board it already touched (rows added by hand this hour)
PR16 The living request: every frame a person writes about a request is its query, and a newer frame re-proposes it · cell PRESENT · gate NO-GATE-DECLARED
Contractir_text_join · executor Organ · 2 u · stands on PR15
Definition of donenx_intake_route (lib + gate): a sibling seat measured on the live journal that refinements arrive as TRIAGE frames after the REQ while the router read the REQ alone (391 TRIAGED requests were never routed and a refined request never re-proposed). The frame kinds that carry request text are DATA (textkind rows in knowledge/intake_route.conf: REQ and TRIAGE; none declared = the REQ alone, the pre-2026-09-23 behaviour); the router's own TRIAGE and FILED frames are excluded by the prefixes it writes them with (one const each, IR_OWN_TRIAGE_PFX and IR_OWN_FILED_PFX); every proposal records text_frames= and text_epoch=; the sweep's ledger row carries the text epoch it consumed (a row without the field read the REQ alone and resolves to the REQ's epoch) and the sweep proposes a request in ANY state whose newest text frame is newer than what its row consumed, printing candidates= refined= reproposed= with the partitions summing; done-rule: the gate proves the join (F routes on REQ + TRIAGE to ga:A1 with text_frames=2), the REQ-only neg-control (the same F routes to gb:B1), the default (no textkind row reads the REQ alone), the re-proposal on a later TRIAGE frame (C moves to ga:A2, then the next sweep is idempotent), the legacy-row rule (E consumed, F refined) and the router's own frame excluded (after filing A its query is still one frame); live: the hourly sweep re-proposes the TRIAGED requests it never routed and every later refinement, and xcheck agrees on the joined query
Matrix cellPM: the living request, refinements route and re-propose · runtime/nx_intake_route_lib.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_intake_route_lib; declare nx_intake_route_lib TAB <gate> and the ship loop proves it and the verdict lands here.
Work log2026-09-23 measure THE DEFECT, MEASURED BEFORE THE FIX: pm_intake.jrnl TRIAGE frames 1790182556, 1790183091 and 1790184165 (seat codex, request 1790132172) each end with the sentence that the current router uses the first REQ only and needs later refinement propagation; the last sweep (epoch 1790176720) read ids=12477 new=12079 triaged=391 filed=7 and proposed only state NEW, so 391 requests a person had already touched were never routed; ir_req_text returned the first REQ frame only, and the ledger keyed on id alone, so a refined request could never re-propose
2026-09-23 land THE LIVING REQUEST SHIPPED: nx_intake_route sha 8b4b595270532abcf30f6f112f36f42aa5fb67d1a24ae1d90aac1589eeb8a54d (190408 B) through nx_organ_ship (harness hc6d56599c32715fc; contentdiff lost=2 = the renamed symbol ir_ledger_ids and an upstream STS-LOCK string, approved by allow_loss_v1 6624c257; behaviour DIFFERS by design 6543 to 6629 B = the five new fields exactly, reviewed under knowledge/status/harness/intake_route_v4_review.txt sha 237befdd with evidence intake_route_v4_review_evidence.txt sha 0f20ec42), _offc twin installed; gate rebuilt 91/91 GREEN (was 78/78) and promoted 5f18175572b52b501ce850444a37dd69df91625c1291e37e777487474fe36456 (314184 B); confs knowledge/intake_route.conf (4201 B) and intake_route_probe.conf (3498 B) carry textkind REQ and TRIAGE; lib 88238 B, gate source 39164 B. Compiler law paid for on the first build: a module const must be declared ABOVE its readers (no forward references), so the new consts live in the module's const block, not beside the functions that read them
2026-09-23 measure FIRST LIVE PROPOSAL ON THE SIBLING'S REFINED REQUEST (job 1790186977, request 1790132172): text_frames=18 text_epoch=1790185055 terms=848 scored=3491 of docs=3618 boards=118 ROUTED top1=video:V15 score_milli=193659 gap_permil=4 -- the 17 TRIAGE refinements are consumed now (v3 read the REQ alone), and the measurement names the next defect: an 848-term query scores 3491 of 3618 documents and its top two are 4 permil apart, a near tie, so the ranking of a long living request is not decisive yet (the estate's own law: a class decided by near-ties is a missing discriminator, not a scoring bug). FIRST LIVE SWEEP (job 1790186979, sha 8b4b5952, sweepmax=60): ids=12479 new=12080 triaged=391 filed=8 candidates=11729 already=750 proposed_now=60 deferred=11669 refined=0 reproposed=0 elapsed_s=9 load_ms=474 propose_ms=8177 pass1_ms=34 loop_ms=189 write_ms=133 -- the 391 TRIAGED and 8 FILED requests are candidates for the first time (no ledger row yet, so they count as unproposed, not refined; refined and reproposed count only ids with a prior row, and none of the 750 already-proposed carries a newer frame); 136 ms per proposal against 53 ms on v3 (joined texts are longer and each proposal walks the journal twice), 60 per beat still lands in 9 s, so the sweepmax row stands
2026-09-23 queue NEXT RUNG, FROM THE MEASUREMENT: a long living request (18 frames, 848 distinct terms) saturates BM25F: nearly every document scores and the top is a near tie (gap 4 permil). The field's answers for long queries are query-term selection by idf mass, a recency weight on the newest frames and title-field emphasis; declare it as a rung with a KAT on the fixture (a three-frame request must still rank its subject first by a gap above the noise floor) before any weighting is typed. Also owed: ir_text_join measures then copies over the whole journal per request; one pass per sweep is possible once pass 1 keeps the per-id frame offsets
2026-09-23 measure THE ORACLE ON THE JOINED QUERY (job 1790186978, nx_intake_route xcheck 1790132172 on sha 8b4b5952): docs=3618 terms=848 score_mismatch=0 df_mismatch=0 avg_mismatch=0 scan_ms=174711 index_ms=1713 verdict=AGREE -- the token index reproduces the brute-force scan exactly on an 848-term query over the live boards (102x faster); the near tie the proposal measured is therefore a property of the query, not of the index
PR17 The decisive living request: how often a person wrote a word is the query's own signal · cell PRESENT · gate NO-GATE-DECLARED
Contractir_qtf_weight_milli · executor Organ · 2 u · stands on PR16
Definition of donenx_intake_route (lib + gate + nx_bm25_lib): PR16 measured that an 848-term living request near-ties (gap 4 permil) because ir_terms deduped the query, so a word written in 17 frames weighed the same as a word written once. qtf is counted per distinct term; each term's query weight is BM25's own third component (k3+1)qtf/(k3+qtf) (Robertson and Zaragoza 2009, section 3.3), k3 the conf row qtf_k3_milli (absent or 0 = every distinct term once, the pre-PR17 ranking byte for byte); nx_bm25_lib gains bm_index_score_w_milli (a weight per term) and the unweighted scorer delegates to it; the digest carries query_weight, qtf_k3_milli, and qtf + w_milli per term; every sweep ledger row records the k3 it ranked under (ranker=qtf:k3) and the sweep re-proposes every row ranked under another value (reranked=), so a ranker change reaches every routed request at sweepmax per beat; done-rule: the gate proves the count (T3f), the weight KAT (2454 milli for qtf 3 under k3 8000), the conf row as data with 0 by default, a fixture whose noise frame wins under k3 0 and whose repeated subject wins under k3 8000 (T22, T22c), a term written once unmoved (T22e), the repeated row scaled by the weight within a milli per term (T22f), the re-rank sweep with summing partitions (T23 to T23d) and its by-ranker-not-by-time neg-control; live: the production row calibrated on the two judged requests
Matrix cellPM: the decisive living request, how often a word was written weights the query · runtime/nx_intake_route_lib.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_intake_route_lib; declare nx_intake_route_lib TAB <gate> and the ship loop proves it and the verdict lands here.
Work log2026-09-23 measure THE SIGNAL THE ROUTER DISCARDED, MEASURED BEFORE THE FIX (jobs 1790188447 and 1790188449 on 8b4b5952): ir_terms kept distinct terms only, so 1790132172's 848 terms carried no count of how often each was written across its 18 frames; its top two (video:V15 193659, observability:receipt_durability 192800) sat 4 permil apart while the operator's one-frame request 1790106111 separated its top two by 280 permil (supimacotton CT6 142177 over dcc DC17 102336, stem R7 76118 third)
2026-09-23 land THE DECISIVE LIVING REQUEST SHIPPED: nx_intake_route sha 59f746296358d94aa16c59ab2b77f3df4e22d6b3bf6a999461381843af57c3ab (193880 B) through nx_organ_ship (harness h46a546f96c1fb311; contentdiff lost=0 gained=13; behaviour DIFFERS by design 6629 to 7724 B = 41 terms x 23 + 119 + 18 + 15 exactly, reviewed under knowledge/status/harness/intake_route_v5_review.txt sha d24bcc41 with evidence intake_route_v5_review_evidence.txt sha 37c2e2d3), _offc twin installed; gate rebuilt 108/108 GREEN (was 91/91) and promoted 7a3ad58ac696d7297016995d6553be172973ac7146da324cccfc706e02c4b2d9 (328240 B); nx_bm25_lib.nx 27408 B (bm_index_score_w_milli; the unweighted scorer delegates with nw 0, byte for byte), nx_intake_route_lib.nx 90590 B, gate source 47934 B; knowledge/intake_route.conf dark-launched the row at 0 (5053 B) and then landed 8000 with its calibration in the file
2026-09-23 measure CALIBRATION ON THE LIVE ROUTER (jobs 1790190348 to 1790190364, probe confs intake_route_k3_1000/8000/100000.conf): 1790106111 keeps supimacotton CT6 / dcc DC17 / stem R7 as its top three boards at every k3, its top1 score reads 142177 / 170696 / 217420 / 238602 and its top1-top2 gap 280 / 307 / 336 / 345 permil at k3 0 / 1000 / 8000 / 100000 (the k3 0 run ranks byte for byte as v4 did: the dark launch moved nothing); 1790132172 stays a near tie at every k3, gap 4 / 9 / 14 / 3 permil between the same two rows (observability:receipt_durability and video:V15 swap places from k3 1000), so the qtf signal separates a subject from its noise but cannot decide a request that is many requests (17 refinements on unrelated topics: continuous improvement, beach scenes, loadgov, the tool registry, RACI, torrent, WebGPU); landed qtf_k3_milli 8000 (Terrier's deployed default): 336 of the 345 permil available while a word repeated in every frame saturates at nine times a word written once (at k3 100000 the sprawl's board order re-shuffled, gameengine rose to third)
2026-09-23 lesson A MISSING SIGNAL AND A MISSING DECOMPOSITION LOOK THE SAME FROM A GAP: the qtf signal widened a judged request's margin by a fifth and left the hodgepodge's near tie where it was, because that request IS several requests and no per-term weight can rank one board first for five topics at once; the honest remedy for a sprawl is to route its frames (or its topic clusters) separately and publish the union, not a stronger weight. Also paid for: a KAT on integer arithmetic states its tolerance per term (two terms scaled and floored separately differ from the floored product by up to one milli each); a ranker change must reach the backlog by construction (the ledger row carries the ranker it ranked under) or every already-routed request stays a stale claim; and the incumbent path of a shared scorer is extended by delegation with the unit case proven byte-identical, never by a second accumulation
2026-09-23 queue NEXT RUNGS, FROM THE MEASUREMENT: (1) frame-level routing for a request that is many requests: route each human frame (or each cluster of frames sharing terms) separately, publish the union of boards with the frames that named each, and report decisive per frame, so 1790132172's five topics each reach their board; (2) the first sweep after the k3 row re-ranks the 810 routed rows at 60 per beat (about 14 beats) ahead of the 11669 never-routed requests because candidates run in id order -- a priority order (never-routed first, re-ranks after) is one pass more; (3) ir_text_join still walks the journal twice per proposal (136 ms per proposal); (4) the gap_permil distribution over every routed row as a census verb on the ledger, so a decisive floor could be calibrated from the population instead of two requests
2026-09-23 measure FIRST LIVE SWEEP UNDER k3 8000 (job 1790190625, sha 59f74629, sweepmax=60): ids=12480 new=12081 triaged=391 filed=8 candidates=12480 reranked=810 refined=0 proposed_now=60 reproposed=60 already=0 deferred=12420 routed=60 nomatch=0 elapsed_s=11 load_ms=600 propose_ms=9111 pass1_ms=36 loop_ms=220 write_ms=140 -- every one of the 810 rows routed under k3 0 is a candidate again (the ledger's ranker=qtf field decides, not time), the 60 proposed this beat were all re-ranks because candidates run in id order and the routed rows are the oldest ids, so the 810 drain in about 14 hourly beats before the never-routed backlog resumes (queue item 2, the priority order); 152 ms per proposal (136 on v4: the weights loop and the longer digest); the oracle on the live index still AGREES (job 1790190560: docs=3619 terms=41 mismatches 0, scan 9294 vs index 95 ms); nx_rungclose PR17 = LIVE, tested/operated/page wait on the roster, clock and generator beats
PR18 A request that is many requests reaches every board it asks for: each human frame is routed on its own words · cell PRESENT · gate NO-GATE-DECLARED
Contractir_frame_route · executor Organ · 3 u · stands on PR17
Definition of donenx_intake_route (lib + gate + nx_bm25_lib): PR17 measured that no query weight decides a request that is several requests (1790132172, 18 frames on unrelated topics, a near tie at every k3). Each human text frame is ranked alone by the same BM25F and query weights, the frames' top-k are fused by reciprocal rank fusion (Cormack, Clarke and Buettcher, SIGIR 2009; 1/(k+rank) summed in micro, k = the frame_rrf_k conf row, 0 = off), an intent is a document some frame ranks first, a fused tie goes to the whole request's own ranking, and the digest publishes every frame's route, the intents with the frames that named each, and the fused top-k with each row's symbol; machine rows declare the writers whose frames are receipts, never request text; the sweep ledger records the fusion and the text-frame count so a fusion or filter change re-proposes exactly the rows it touches, and the last row in append order is a request's state. Done-rule: frame routing off and every one-frame request byte-identical to the incumbent (gate neg-controls), per-frame routes and intents proven on a fixture with a no-match frame and a hostile head that cannot steer the ledger, a fused tie decided by the joined ranking where corpus order would decide otherwise (T28b), a machine receipt dropped from the text while a request the machine files keeps its own (T27b and its neg-control), the sweep re-framing and re-filtering exactly the rows a change touches and idempotent on the next beat (T26, T29 to T29c); live: the production rows calibrated on the judged requests
Matrix cellPM: a request that is many requests reaches every board it asks for · runtime/nx_intake_route_lib.nx · PRESENT decl
GateNO-GATE-DECLARED — knowledge/organ_gate.conf carries no row for nx_intake_route_lib; declare nx_intake_route_lib TAB <gate> and the ship loop proves it and the verdict lands here.
Work log2026-09-23 land FRAME-LEVEL ROUTING SHIPPED: nx_intake_route sha 5d8d1839856fd4fbbe8888a841e6a3c86ddbcd869108305338aace661ed2a175 (216648 B) through nx_organ_ship (harness h2c6bf894ec255409; contentdiff lost=0, 7 runs gained; behaviour IDENTICAL 7724 B on propose 1790106111 under the probe conf, frame routing off), superseding the first cut 7c46b1fa (before the machine rows, the joined tie-break and the last-row ledger); gate nx_intake_route_gate 149 of 149 GREEN on a fresh rebuild, promoted 00b23b7161980d20c887e15927d5977a547a37b246945211864dcb5cd4a3fe26 (373984 B); sources nx_intake_route_lib.nx 112084 B, nx_bm25_lib.nx 27892 B (bm_rrf_term; the two-leg bm_rrf_milli delegates byte for byte), gate source 68335 B; knowledge/intake_route.conf 7750 B carries frame_rrf_k 60 and two machine rows with their calibration in the file
2026-09-23 measure CALIBRATION ON THE LIVE ROUTER (sha 5d8d1839; probe confs intake_route_rrf1, rrf60, rrf600, rrf60m): 1790132172 routes 18 of 18 frames to 9 intents at k 1, 60 and 600 with the same fused top four (video V17, video V15, observability receipt_durability, efp_progression) while its joined top1 stays a 14 permil near tie, so k does not decide it and 60 (the paper's value, the field's deployed default) landed; 1790017600 (3 frames) fuses to comms C14, its joined top1 (gap 336 permil); 1787252609 fused onto pmdash PR16 on the first cut through a router receipt's words, and with the machine rows reads its REQ alone (text_frames 2 to 1) and routes to pmdash's estate-wide portfolio run (gap 126 permil), the words it wrote (PR9, portfolio, fleet run)
2026-09-23 measure MACHINE RECEIPTS IN THE REQUEST TEXT: of the live journal's 456 TRIAGE frames, 380 are nx_triage_router receipts and 21 resource-assurance plan receipts, 55 by other writers (sums to 456), all joined into the query since PR16. FIRST LIVE SWEEP WITH THE ROWS (job 1790197734, sha 5d8d1839, sweepmax 60): ids=12482 new=12083 triaged=391 filed=8 candidates=12433 already=49 (sums to ids) refined=0 refiltered=43 reranked=716 reframed=2 proposed_now=60 deferred=12373 elapsed_s=8; of the 810 routed rows 43 had read a receipt as request text, 716 still await the PR17 k3 re-rank, 2 re-framed, 49 current; 11672 requests were never routed
2026-09-23 lesson A MAX IS A PROXY FOR THE LAST ROW ONLY WHILE THE FIELD IS MONOTONE: the ledger map kept per request the row with the largest consumed text epoch; a machine row made the next row consume an OLDER frame, the map kept the stale row and the sweep would have re-proposed that request on every beat (gate T29c RED 147 of 148 under the incumbent rule, GREEN 149 of 149 once the last row in append order decides). And a tooth whose name gives the wrong reason is a stale claim while it passes: T25h said corpus order decides a fused tie, the rule became the joined ranking, both orders agree on its fixture, and only T28b (where they part) proves the rule
2026-09-23 lesson A RECEIPT IS NOT REQUEST TEXT: PR16 excluded the router's own frames by the prefixes it writes, but a second machine writer (nx_triage_router, 380 frames) wrote receipts under the same frame kind and they were ranked as the person's words; which writers are machines is data (machine rows), and a request a machine files is still its own text. And two rows printing one identity are one row to a reader: the fused top-k printed gd D1 twice for two rungs a board declares under one id until each row carried its symbol (T25l)
2026-09-23 queue NEXT: (1) the pmdash.matrix row for frame routing waits on its rival cells being read this month (Jira's AI work breakdown suggests child work items from one ticket; Linear, Asana and Monday unread), never claimed unread; (2) sweep priority: 11672 never-routed requests wait behind 716 re-ranks in id order at 60 per beat, one pass puts never-routed first; (3) a board-identity field (domain name and rung ids) in BM25F, so a frame whose words are abstract still reaches the board it names; (4) ir_text_join still walks the journal twice per proposal; (5) the gap census over every routed row; (6) debt 1789839847 (nx_frontier_scan attest counts a homonym as the month's newest) recurred on pmdash's September bar, its second recurrence after procgen
2026-09-23 measure RIVAL CELLS READ, NOT ASSUMED (supersedes queue item 1 above): Linear's Triage Intelligence documentation, mirrored 2026-09-23 (596968 B, pin b513aeb7), describes agentic suggestions of one team, project, assignee and label set plus duplicate and related-issue detection for the WHOLE issue, and nothing that splits one issue into the several requests it carries, so Linear reads 0 on the pmdash.matrix row; Jira, Asana and Monday were not read this month and read 4 (unassessed, excluded from the relative comparison), and the row claims no exceed. The estate's own web index returned no Atlassian page for the query (nishi_search scope=web, 30 results, none on topic): a gap for the search lane, not a reason to grade Jira unread
2026-09-23 measure RIVAL CELLS COMPLETED THE SAME HOUR (supersedes the unassessed row above): with three code-4 cells the pmdash position map was withdrawn by design (cdp_unassessed_cells in nx_swcompare_lib: comparative scores require a complete assessed category table) and index.html fell 223040 to 204156 B with no figure, while the control (water, data untouched for 33 days, same generator, same scoped regen) grew 180885 to 181346 B with its 3 figures; the vendors' own pages were then read, mirrored and pinned (jira_ai, asana_ai, monday_ai): Jira's Rovo breaks a work item into tasks on a click (Part), Monday's Transcript Summarizer extracts every action item from a call (Part), Asana intakes, classifies and routes whole requests with subtasks made by hand (0), Linear suggests properties and duplicates for the whole issue (0); no page documents a route for each part to the board it concerns, and the row claims no exceed
2026-09-23 lesson AN UNASSESSED CELL IS HONEST AND STILL HAS A PRICE: one code-4 cell withdraws a domain's whole position map (a complete category table is the map's denominator), so a new matrix row either carries every rival read that month or knowingly takes the map down; and a byte decrease after an addition is a question the control answers (an untouched domain under the same generator) before any story about the generator is told
2026-09-23 measure Independent Codex review retained at knowledge/status/claude-parallel-review-20260923.json: live nx_intake_route identity5d8d1839 and gate00b23b71 verified; original sweep1790197734 exited0, proposed60, write_failed0, elapsed8s. This verifies retained execution, not recurring acceptance or positive token ROI.
2026-09-23 queue Review competitor-negative evidence: documentation not describing a feature does not alone prove absence. Preserve unassessed/not-evidenced state or retain a scoped vendor test supporting zero. Model attribution must distinguish seat label from actual response model; audited sessions explicitly selected Opus after Fable. Review artifact above carries exact lineage and limits.
2026-09-23 land 2026-09-23 source-bound PM planning release: the former fixed demonstration in nx_pm_plan_gen now consumes a digest-bound requirement inventory and full transcript-source identity, derives distinct requirement and canonical board dependency graphs, resolves explicit activities through canonical RACI, and retains named mapping/ownership/acceptance gaps. Canonical generator installed through nx_organ_ship job1790207029; registered API replay1790207075 returned the exact reviewed plan e75d00d756e545b56a4ff88727ed65e538a80279cab44d6691d37d90a33f84f6 (846742 B) and fragment d80a8ba1a7c707c4a60c7840f2f8882ce40e6166b8188917883ea9fa0e95e519 (100153 B). No work was dispatched by generation.
2026-09-23 measure 2026-09-23 qualification: generator actual-entrypoint controls12/12 GREEN (1790206601, repeated on API-built candidate during1790207029); public attachment controls7/7 GREEN1790206563; composed PM HTML/JSON expected state and exact fragment hash2/2 GREEN1790207523. Water raw control remains DIFFERS only in observed time: HTML census age advances2s; JSON generated_unix, evidence.age_sec and gaps.age_s advance2s. Complete raw captures and delta review retained. Public comparison/source-state gates do not establish accepted outcomes or SOTA.
2026-09-23 measure 2026-09-23 artifact lineage: native release qualification produced generator213421B SHA84c9d3e770c483d1abaeebff49078465c95bf9b90b17e1b8bd27999d1b4b6650; installed API-built239176B SHA7e09423a62092397032b67fd1e2c8b4e3afee03466c6729cfacf4f18cc962707 follows current build_debug.flag=1 and hostctl --debug policy. Root and _offc match. Source/import closure is retained in nx_pm_plan_gen.provenance; installed replay proves result identity. Runtime import census1790207616 finds only nx_pm_plan_gen importing nx_pm_plan; no claim of estate-wide orchestration replacement.
2026-09-23 queue 2026-09-23 parent intake1790205454 triaged/filed to existing PR18/PR5/PR9 with scheduled inventory9b4a45e6fd9b24cafe699e7cd62fd6d918875344dddb66e2d9a5fbd5bdb0a012 superseding prior input without deletion. PM coordinates source/mapping review; technical and product owners deliver. Owner acknowledgement, executable-workflow binding, recurring execution,33 prerequisite activity assignments,58 mapping gaps and served outcome acceptance remain open. Older flawed31ordered/39blocked graph result1790205718 remains qualification history, superseded by separate graph composition. Exact-artifact Compare adoption and served browser review are separately recorded release steps.
2026-09-23 measure 2026-09-23 related hook repair evidence retained by the content owner: knowledge/fetched/hook-action-release-56d2557e-20260923.json SHA881d2a12bb0dc3e56a7ce91e02bee2e26cc584fe6de49f534582e1d9210bffb2 (206216 B), archive commit1790207114. Parent independently verified live hook56d2557e and native880/880, local142/142, configured24/24. Shared gateway R4 deployment remains open; hook qualification is independent of this plan's unassessed estate delivery.
2026-09-24 land 2026-09-23 Compare attachment release: existing nx_swcompare_matrix now declaratively embeds the reviewed source-bound plan on /compare/pmdash/ from pmdash.pmplan.json. Narrow source CAS ccd3c200ae6b99960cd912db75941c2f48130fb481c8ec6118c3c6544d1ea6c2 contains exactly three reviewed insertions. Native owner ship1790208635 promoted API-built renderer1283352B SHAaf966543b2bcb3256d629652611824b152e31a121cc104a692e079be92c89e89 under the current debug build policy, after all6 declared gates passed, zero content loss, and artifact-bound constrained behavior review5331dbe1ac019cdf5c37861fb81282061934edc98e6d2b7a65c9d592bd7deacd. Complete30216B ship output retained SHAffe96b85129922bbb69b3fe9dfc02a38fd8cd5bc85a55c26bbb51d68ae90d11c.
2026-09-24 measure 2026-09-23 release consumer inventory: nx_swcompare_matrix.elf and _offc/nx_swcompare_matrix.elf are refreshed by nx_organ_ship; buildroot/_offc/nx_swcompare_matrix.elf is a required publisher consumer refreshed through nx_file_install with an immutable old/new digest-bound intent. All3 independently match af966543b2bcb3256d629652611824b152e31a121cc104a692e079be92c89e89. Third-consumer intent knowledge/gates/pm-compare-buildroot-install-20260923.intent SHAdea07f7237395d6dc16a59abc84af37d2b2c23a422a9af81f2db141d5f8c2b9c applied visible1 durable1; prior artifact retained. Future releases must verify all3; scoped nx_compare_regen structurally refuses stale publisher identity. Browser review is a separate delivery step.
2026-09-24 measure 2026-09-23 served UI review found a real layout failure after first publication: all81 acceptance details and API metadata worked with0pageerrors, but mobile390x844 compressed normal words into2-4character columns and desktop1440x900 split the Order heading and centered prose. UI acceptance was withheld; original visual failure remains evidence. The native report emitter now reuses existing Compare record table styles, design-token minimum widths, and labeled keyboard-accessible scroll regions. Prose wraps naturally and aligns left; order and identity tokens stay intact. Native actual input generated fragment111178B SHA604621f43fade82b231125ccfa92c159bda86ab82b0d3f8fa707dbc51fb6b918; all12 entrypoint controls passed1790209240. Semantic visible text is unchanged; served visual retest and installed-generator adoption/replay are separate pending checks.
2026-09-24 land 2026-09-23 corrected PM plan presentation delivered on nishifamily.com/compare/pmdash/. Root served review passed HTTP/API200, all81 acceptance details, expand/collapse, labeled keyboard-focusable horizontal scrolling on390x844 and desktop1440x900, with0pageerrors; screenshots were visually reviewed. The native emitter uses existing Compare record/table styles and design tokens. Original failed layout remains retained as release history. Underlying semantic mapping, owner acknowledgement and delivered estate outcomes remain unassessed.
2026-09-24 measure 2026-09-23 final callable proof: registered nx_pm_plan_gen API replay1790209581 exited0 and produced fragment604621f43fade82b231125ccfa92c159bda86ab82b0d3f8fa707dbc51fb6b918 (111178B), independently byte-identical to the reviewed public attachment. Generator root and _offc are239920B SHA8021afb1680ae238d27bd05043ad2df8aec35e6ac8e0aa77c8d9d5f3bb11bbe3, installed by reviewed nx_file_install old/new intents with durable backups. Source report1b9d84bb39604d52fbb8aed0cb237ae87c5b8408c4ffcc87b0b2570b03202ceb; all12native entrypoint controls passed. Current machine plan knowledge/gates/estate-pm-plan-installed-layout-20260923.plan.json SHA0b6b0cdc1455366a714b682a20d272b32e88f5697c546ce9637c4e3eb4a4029c retains81requirements and70prerequisites with58mapping/33activity gaps. Full package identities are retained with the final delivery record.
2026-09-24 lesson 2026-09-23 release composition debt retained: a same-argv behavior probe collides with an immutable output prefix when the reviewed HTML format changes (actual incumbent rc4 versus candidate replay rc0, job1790209470). That result was not relabeled a behavior pass. Full content review found exactly5replaced old table-markup string occurrences and no source/symbol/section loss; independent real-input generation,12controls and served visual review supported the exact reviewed installation through nx_file_install. Future writer comparison needs separate artifact identities under the existing ship owner. No execution or recurring dispatch was created by generating this plan.
2026-09-24 land 2026-09-24 foundation workflow status: 0 of 5 estate-wide rungs complete. Installed intake/router preserve complete framed requests, durable append and exact keyed replay: 40/40 intake, 16/16 exact-reader, 4/4 CLI and 149/149 routing controls; original API read all 12490 recorded requests and agreed on the 3632-document routing oracle. A broader request still exceeded the 30-second qualification deadline on both old and new routers; performance closure remains RED. Compiler pipe2 and memfd mappings are active in both existing compiler copies: 10/10 equivalence plus self-host, installed 9/9 pipe2 and 9/9 memfd. Native PM release adapter is installed with 13/13 controls and original authority/refusal proofs; positive publication through that PM operation is still unverified. Resource observers are installed with 120/120 controls and original API proof; recorded health remains RED/AMBER, aggregate occupancy 87.9 percent and trend unresolved, with no recovery claim. Shared evidence writer is installed and original-call verified: 7/7 declared LoadGov gates and 26/26 grounded checks, with six declared board gaps still open. Host health remains DEGRADED; pre-dispatch reservation failures (-110) remain unresolved. Common runner and recurrence qualification remain pending. Historical one-call/zero-poll demonstrations cover their declared workflows only. Total tokens, review effort and cost per accepted outcome remain unmeasured; matched routing and the automatic investment loop are unproven. The existing source-bound PM plan remains at https://nishifamily.com/compare/pmdash/#pm-source-plan; planning links, installed tools and native qualification do not establish owner acknowledgement, human acceptance or estate-wide completion. Publication and served review are separate release checks.
PR19 Source intent refinement is an owned decision before requirement completion · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contract_ABSENT_:pm_semantic_refinement_accept · executor Workflow · unestimated u · stands on PR18
Definition of doneSOURCE-BOUND PLANNING CONTRACT 2026-09-24. Extend the existing inventory and PM plan owners with source-bound review decisions. Retain every original utterance identity and association, explicit confirmed/rejected/added links, reviewer and finding; unresolved references, mixed future products and incomplete acceptance become named refinement work with the appropriate product/research/technical owner. Prove the full source partition and bidirectional requirement links against the immutable transcript, plus a rejected false association and a multi-intent source requiring refinement. Agent adjudication does not imply a second independent coder, owner acknowledgement, semantic completeness or delivered outcome. PM coordinates and routes; the relevant owner writes the refined contract and the operator retains acceptance. The first reviewed inventory has 849 sources; this is fixture extent, never a code ceiling. Effort unestimated.
Matrix cellNO-MATRIX-ROW — no matrix row carries pm_semantic_refinement_accept; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work log2026-09-24 measure 2026-09-24 source-bound planning review: all 849 source rows retain their identities and the original 4018 associations; adjudication confirms 1633, rejects 2385 and adds 1241 links. Current partition is 816 mapped, 27 requiring intent refinement and 6 context. 81 requirement families have reviewed partial board scopes; 12 new contracts and 319 delivery-activity declarations use existing RACI. Native private qualification passes 40 planner cases and 27 shared parser cases; CRLF parsing and repeated source-row decoding corrected with failed interpretations and controls retained. Planning declarations do not acknowledge owners, dispatch work or accept delivery. Scoped managed-workflow invocation proof, current installed identities, publication and served review are retained separately in the existing PM delivery record knowledge/gates/pm-owned-planning-delivery-20260924.json. Future requests remain retained without dispatch; source links are not semantic completeness. Current shared-boundary and recurrence migrations remain separate owned work.
PR20 Dependency declarations have resolvable contracts and independent graph evidence · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contract_ABSENT_:pm_dependency_repair_accept · executor Workflow · unestimated u · stands on PR13
Definition of doneSOURCE-BOUND PLANNING CONTRACT 2026-09-24. Reuse the existing canonical plan parser and dependency validator. Resolve every declared predecessor against its authoritative board with provenance; dangling references, duplicate ids, malformed records and cycles remain explicit blockers. Repair requires source-owner evidence for the intended predecessor and a reviewed board revision, never fabricating a missing rung or deleting an edge to turn the graph green. Observed correction: lang LN46 exists at canonical line 246. The full native run retained a false predecessor lang:-\\r because CRLF framing was included in the final dependency field, blocking LN46, LN49 and LN60. Preserve the earlier absent-LN46 interpretation and actual failed graph as superseded evidence. Repair the shared parser boundary with LF, CRLF, mixed-ending, internal-CR and final-no-newline controls; rerun the actual source-bound plan and verify affected ordering. New topological readiness never means accepted prerequisites or dispatch permission. Effort unestimated.
Matrix cellNO-MATRIX-ROW — no matrix row carries pm_dependency_repair_accept; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work logno log row names this rung yet
PR21 Human PM, Nishi PM and partnership compared on organizational outcomes · cell NO-MATRIX-ROW · gate NO-MATRIX-ROW
Contract_ABSENT_:pm_organizational_outcomes_accept · executor Workflow · unestimated u · stands on PR8, PR9, NAP6, codeeffectiveness:CE12 (UNRESOLVED: no such rung on this plan)
Definition of doneFUTURE OUTCOME 2026-09-30. Compose PR7/PR8/PR9, the existing RACI/intake/execution/evidence/recovery owners, and codeeffectiveness:CE12. Predeclare organizational goals, acceptance, scope, resources, uncertainty and observation horizon. Compare human-led PM, Nishi PM and their partnership on accepted value delivered, time, quality, cost, risk, rework, missed dependencies, intervention effort and team experience; retain confounding and unfinished work. The PM must explain selection, scheduling and reprioritization with source-bound evidence and exercise recovery under unchanged authority. Higher output counts alone cannot establish better PM. If results support a shift, offer evidence-backed options for moving human talent toward greater value, with accountable human decisions. No automatic personnel decisions or measured superiority are asserted. Compare/PM machinery emits this comparison from retained receipts.
Matrix cellNO-MATRIX-ROW — no matrix row carries pm_organizational_outcomes_accept; the ranker reads this rung as unmapped and no cell can flip for it. Add the row and the join completes on the next publish.
Gatethe gate join needs a matrix row: no organ is named for this rung
Work log2026-09-30 queue 2026-09-30: retain future PM-versus-human and partnership comparison and higher-value human work as an organizational objective. Bottom-up language/workflow qualification remains the critical path; no PM experiment has been run.

dossiers=27 cells_joined=19 no_matrix_row=8 (sum 27) gates_recorded=0 gates_unrecorded=10 no_gate_declared=9 (sum 19 of cells_joined) evgates=UNSTAMPED

Capability comparisons

Compare the field, search individual capabilities and open their source and adoption evidence. Documented presence does not establish comparative quality.

Position map — centrality and distinctiveness

The four-quadrant map the field uses for brand strategy (Dawar and Bagga, HBR June 2015), re-derived from this matrix on every publish. Centrality is the share of the category's feature mass a player covers, each feature weighted by how many hold it; distinctiveness is the average lead over each rival on the rows the player holds; breadth is the depth-weighted share of the whole matrix (the bubble); depth is how deeply the rows held are held; momentum is the day-over-day move off the spine (green rising, red falling, grey until day two); the dashed path runs first day → previous day → today. Dividers are the category means. Axes are fitted to the field of play, so read the tick numerals, not the frame. Rival marks are documented presence, so a rival's position reads the record, never its quality. The picture grades its own readability below; the table beside it is the same data for a screen reader or a second method.

Rows. 29 feature rows mapped of 29 matrix rows; 0 substrate rows (kernels, bounds and instruments the plan's rungrole marks substrate) are the estate's scaffolding, not category features, and stay off the map
Views. 2D cut: centrality, distinctiveness · 3D cube: centrality, distinctiveness, breadth · axes registered: centrality, distinctiveness, breadth, depth, momentum · a board picks its own in knowledge/compare/pmdash.cdmap (cut|x|y, cube|x|y|z); absent = the HBR defaults
Position map, two-dimensional cutOne bubble per player. Bubble area is breadth, the ring colour is momentum, the dashed lines are the category means, and both axes are fitted to the field of play with their tick numerals shown. Every value is repeated in the table that follows. 550 600 650 700 750 800 850 900 0 100 200 300 400 500 600 700 centrality (permil, fitted 550–900) distinctiveness (permil, fitted 0–700) mean 715 mean 255 Unconventional Aspirational Peripheral Mainstream Nishi, centrality 615, distinctiveness 555, breadth 379, depth 733, momentum -48 Jira, centrality 788, distinctiveness 191, breadth 264, depth 766, momentum 12 Linear, centrality 769, distinctiveness 258, breadth 287, depth 833, momentum 13 Asana, centrality 673, distinctiveness 125, breadth 206, depth 750, momentum 15 Monday , centrality 730, distinctiveness 148, breadth 229, depth 740, momentum 14 Nishi Jira Linear Asana Monday

bubble area = breadth · ring = momentum (green rising, red falling, grey until day two) · dashed = category means · axes fitted to the field of play: centrality 550–900, distinctiveness 0–700 of 0–1000 permil (the full range put every player in one corner)
readability of the 2D cut, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 0 · unresolved labels 0 · mark overlaps 0 (a fact of the data: two players that close are that close) · data spread 553 permil of the plot · quadrant words unseated 0
text contrast, measured with wcag2-ratio (floors from contrast.conf), light theme: labels 16.24 (floor 4.50) · notes 16.24 (floor 4.50) · quadrant words 5.89 (floor 4.50) · tick numerals 5.89 (floor 4.50) · axis titles 5.59 (floor 4.50) · dark theme: labels 13.78 (floor 4.50) · quadrant words 5.55 (floor 4.50) · axis titles 5.97 (floor 4.50) · dark classes under their floor 0 (one figure serves both themes: a dark shortfall is a token to fix, never a class to hide) · classes refused under their floor 0 (a refused class is not drawn; the scale classes are measured, never hidden) · export: SVG PNG (receipt, rendered by the estate's own rasteriser from this page)
Position map, three-dimensional cubeThe same players in an isometric cube. Each axis is fitted to its own field of play and carries numerals on the floor grid and the vertical axis; each bubble drops a dotted line to its floor shadow so height reads as height. Values are in the table that follows. 550 600 650 700 750 800 850 900 0 100 200 300 400 500 600 700 150 200 250 300 350 400 450 500 centrality distinctiveness breadth Asana: centrality 673, distinctiveness 125, breadth 206 Monday : centrality 730, distinctiveness 148, breadth 229 Jira: centrality 788, distinctiveness 191, breadth 264 Nishi: centrality 615, distinctiveness 555, breadth 379 Linear: centrality 769, distinctiveness 258, breadth 287 Nishi Jira Linear Asana Monday
axes fitted: centrality 550–900 · distinctiveness 0–700 · breadth 150–500 permil · farther bubbles are painted first, nearer ones over them · the floor shadow is each bubble's (x, y) at height 0
readability of the 3D cube, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 0 · unresolved labels 0 · mark overlaps 2 (a fact of the data: two players that close are that close) · data spread 332 permil of the plot
Position map, small multiplesEvery pair of registered axes as one small cut. Each panel fits both axes to the field of play, the dashed lines are the category means, bubble area is breadth and the ring colour is momentum; the legend below names the colours. 550 850 0 700 distinctiveness vs centrality Nishi: centrality 615, distinctiveness 555 Jira: centrality 788, distinctiveness 191 Linear: centrality 769, distinctiveness 258 Asana: centrality 673, distinctiveness 125 Monday : centrality 730, distinctiveness 148 550 850 150 400 breadth vs centrality Nishi: centrality 615, breadth 379 Jira: centrality 788, breadth 264 Linear: centrality 769, breadth 287 Asana: centrality 673, breadth 206 Monday : centrality 730, breadth 229 550 850 700 860 depth vs centrality Nishi: centrality 615, depth 733 Jira: centrality 788, depth 766 Linear: centrality 769, depth 833 Asana: centrality 673, depth 750 Monday : centrality 730, depth 740 550 850 440 540 momentum vs centrality Nishi: centrality 615, momentum 476 Jira: centrality 788, momentum 506 Linear: centrality 769, momentum 506 Asana: centrality 673, momentum 507 Monday : centrality 730, momentum 507 0 700 150 400 breadth vs distinctiveness Nishi: distinctiveness 555, breadth 379 Jira: distinctiveness 191, breadth 264 Linear: distinctiveness 258, breadth 287 Asana: distinctiveness 125, breadth 206 Monday : distinctiveness 148, breadth 229 0 700 700 860 depth vs distinctiveness Nishi: distinctiveness 555, depth 733 Jira: distinctiveness 191, depth 766 Linear: distinctiveness 258, depth 833 Asana: distinctiveness 125, depth 750 Monday : distinctiveness 148, depth 740 0 700 440 540 momentum vs distinctiveness Nishi: distinctiveness 555, momentum 476 Jira: distinctiveness 191, momentum 506 Linear: distinctiveness 258, momentum 506 Asana: distinctiveness 125, momentum 507 Monday : distinctiveness 148, momentum 507 150 400 700 860 depth vs breadth Nishi: breadth 379, depth 733 Jira: breadth 264, depth 766 Linear: breadth 287, depth 833 Asana: breadth 206, depth 750 Monday : breadth 229, depth 740 150 400 440 540 momentum vs breadth Nishi: breadth 379, momentum 476 Jira: breadth 264, momentum 506 Linear: breadth 287, momentum 506 Asana: breadth 206, momentum 507 Monday : breadth 229, momentum 507 700 860 440 540 momentum vs depth Nishi: depth 733, momentum 476 Jira: depth 766, momentum 506 Linear: depth 833, momentum 506 Asana: depth 750, momentum 507 Monday : depth 740, momentum 507
Nishi Jira Linear Asana Monday
10 panels over 5 registered axes, every pair once (the lower axis on x, the higher on y) · each panel fitted to its own field of play, first and last tick numerals shown · no labels in a small cut, the legend names the colours; the grade below reports the mark terms only (MM summed over the panels, spread averaged)
readability of the small multiples, self-graded by the layout ruler: label overlaps 0 · labels over marks 0 · off-canvas 0 · unresolved labels 0 · mark overlaps 1 (a fact of the data: two players that close are that close) · data spread 563 permil of the plot
PlayerQuadrantcentralitydistinctivenessbreadthdepthmomentumRows heldDays on spineFirst seen
NishiUnconventional615555379733-48 since 2026-09-3015122026-09-15
JiraMainstream788191264766+12 since 2026-09-3010122026-09-15
LinearAspirational769258287833+13 since 2026-09-3010122026-09-15
AsanaPeripheral673125206750+15 since 2026-09-308122026-09-15
Monday Mainstream730148229740+14 since 2026-09-309122026-09-15
DayMatrix rows reviewedPlayers recorded
2026-09-15235
2026-09-16235
2026-09-17235
2026-09-18235
2026-09-19235
2026-09-20235
2026-09-21235
2026-09-22235
2026-09-23265
2026-09-24295
2026-09-30295
2026-10-08295

players 5|matrix rows 29|feature mass 52|centrality mean 715|distinctiveness mean 255|axes 5|spine days 12 (shown 12)|rows written today 0|readability defects 2D 0 cube 0|spine knowledge/status/cdmap/pmdash.spine

How to read this evidence. A Nishi source mark records whether the named symbol is declared in the selected source file. It does not establish working behavior or accepted delivery. A watching tag names an expected source entry; discovering it updates source coverage only. A dark tag means the file exists but the named symbol was not found: inspect the source and contract before assuming the capability is missing or renaming code. Peer codes are authored assessments; unassessed means no comparison is established, not absence. Qualification, deployment identity, runtime observations and acceptance must carry their own evidence. Adoption records the catalog's observed path through source, build, promotion, registration and invocation; libraries use importer evidence and gates use declared execution surfaces. A full catalog path does not establish quality, freshness or a successful user outcome. Partial and unknown states retain their stated next action. Census stamps: importers asof 1790637268, gate census asof 1790104131 (unix seconds; -1 = census absent).

Capability matrix — measured against source

◉ authored stronger claim; source present● present◐ partial○ absent? unassessed; excluded from relative comparison · click any capability for its evidence

Peer cell coverage: authored assessed 116, unassessed 0. Authored assessments are not verified outcomes.

CapabilityNishiJiraLinearAsanaMonday
PM
intake with triage lanes and journaled asksOpen — no implementing organ is measured for this axis yet. ask/triage/file over an append-only journal; the compare ranker FILES its top critical rungs here, so the queue starts from measurement. The field leads on UX breadth; none of them can receive work from a capability census. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
Pros none measured yetCons behind Jira (leads), Linear (leads), Asana (leads), Monday (leads); no implementing organ measured
○◉◉◉◉
the debt ledger with artifact-verified closureOpen — no implementing organ is measured for this axis yet. Every row carries sev/scope/unblock spec; closure is eat + read-back (the receipt is never trusted). The field has issues; it does not have refuse-to-close-without-artifact. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
Pros none measured yetCons behind Jira (leads), Linear (leads), Asana, Monday ; no implementing organ measured
○◉◉●●
priority COMPUTED from the capability boardsMeasured: rk_list_scan exists in runtime/nx_compare_rank.nx, verified at emit. SHIPPED 2026-08-18 (operator: stop random work, ranking from the foundation up): (deficit vs rivals + exceed-lane bonus [realoptions-rd]) x (1 + landed dependencies) / the plans own cost estimate [wsjf-safe], ranked by the DR-6 opportunity-cost engine (nx_dr_ocm, adopted from REGISTERED-DARK), whole population per domain, derivation printed with every number. NO field tool computes priority from measured capability -- their priority is a dropdown. Adoption: RUN-BY:actlog — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
version-staged critical path (0.1 -> 1.0 -> 2.0)Measured: rk_list_one exists in runtime/nx_compare_rank.nx, verified at emit. The plan declares ver rows mapping product versions to milestones; the ranker finds the FIRST unmet version, closes over its open rungs + transitive deps, and ranks that path ahead of everything [portfolio-ip] -- product delivery order, digital and physical (physical lanes ride nx_prodladder tiers), never a seat taste. Adoption: RUN-BY:actlog — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
opportunity-cost ranking mathematicsMeasured: main exists in runtime/nx_dr_ocm_cli.nx, verified at emit. Priority=(Value x Momentum)/Cost with forgone-best-alternative and budget-aware greedy selection [portfolio-ip], integer deterministic. The field has scoring plugins; none are deterministic or auditable to inputs. Adoption: PRODUCER-ALIAS — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●●●○○
RACI ownership as a data planeOpen — no implementing organ is measured for this axis yet. Owner-role rows joined by the law warden (owner_resolved on every law); ownership is queryable data, not a mention. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
Pros none measured yetCons behind Jira (leads), Linear (leads), Asana, Monday (leads); no implementing organ measured
○◉◉●◉
autonomous work-cycle conductorMeasured: wc_seedphases exists in runtime/_hdl_build/nx_ws_cycle.nx, verified at emit. board/next derives the one next action per workstream, debt-gated and evidence-derived; the loop contract is 13 phase rows in a plane. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: RUN-BY:cron — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; fully adopted on the estate ladderCons behind Linear (leads)
●●◉●●
research frontier velocity watchMeasured: hv_self_locate exists in runtime/nx_frontier_watch.nx, verified at emit. Daily arXiv volume+velocity per topic feeds the roadmap bars, so as-of dating is a beat, not a memory. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: RUN-BY:clock — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○●○○
the hive work queue that flips itselfMeasured: rg_watchlist exists in runtime/nx_compare_regen.nx, verified at emit. comparewatch- plane rows are contracts; shipping the named symbol flips the published page and the queue row on the next beat -- done-ness is measured, which no status column can claim. Adoption: RUN-BY:actlog — fully adopted (top of its ladder).
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
publish receipts journaled per artifactOpen — no implementing organ is measured for this axis yet. comparepub.jrnl rows epoch/target/bytes/prev with shrink witness -- the durable receipt lane the regen job output cannot drop. rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them
Pros none measured yetCons behind Jira, Linear, Asana, Monday ; no implementing organ measured
○●●●●
sponsorship feedback as a ranker coefficientMeasured: rk_sponsor_term exists in runtime/nx_compare_rank.nx, verified at emit. PR6: operator verdicts are sponsor- plane rows (5 seeded 2026-08-18 with verbatim grounds, coarse plus2/plus1/minus1/minus2 weights); the ranker loads the plane once and multiplies each rung value by SPONSOR_BASE+sum(applicable weights), floored so a minus demotes but never hides. Every row that fired is printed by id beside the number. No field tool turns a stakeholder verdict into a priority coefficient; theirs is a comment. Adoption: RUN-BY:actlog — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
estimates that learn from actualsDARK — runtime/nx_compare_rank.nx EXISTS but does not declare rk_cost_recal: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. PR7: a landed rung writes its measured session-leg cost beside the plan estimate; the unit row recalibrates from history. The field has velocity charts; none feed back into the estimate that ranked the work [roadmap-2026].
dossierwatching rk_cost_recal
Pros none measured yetCons behind Jira, Linear, Asana, Monday ; open contract; expected source declaration not established
○●●●●
outcome read-back per investmentDARK — runtime/nx_compare_rank.nx EXISTS but does not declare rk_outcome_join: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. PR8: each landed rung joins before/after on the referee-panel score, surface usage and the sponsor verdict -- a paying investment distinguishable from a busy one. Missing primitives named: a usage-telemetry organ, a revenue-per-domain term.
dossierwatching rk_outcome_join
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
the estate-wide portfolio runDARK — runtime/nx_compare_rank.nx EXISTS but does not declare rk_portfolio: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. PR9: one dr_ocm pass across every domain critical path, weighted by sponsorship + the maturity rollup, under the real token/box budget -- the weekly campaign plan computed, never hand-ranked. Physical lanes ride nx_prodladder tiers.
dossierwatching rk_portfolio
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
outside dependency priced into the rankingMeasured: rk_selfsuff_term exists in runtime/nx_compare_rank.nx, verified at emit. PR11: priority is discounted by MEASURED outside dependency, so a rung standing on a third-party service or on a step only a seat can run is not mispriced as if it were sovereign. Inputs come from nx_selfsuff's ledger: distinct non-sovereign hosts the organ dials in string literals (comments stripped, document namespace URIs excluded by a NAMED non-dialled list -- requiring a network primitive in the SAME organ was tried and collapsed OUTSIDE from 116 to 2, because this estate composes a fetcher instead of opening its own socket) plus distinct carriers it touches at one hop, and an autonomy gap witnessed in the action record. The ledger also carries a TRANSITIVE net_dep column (direct / via-helper / none) computed over the import AND fork closure, because an organ that reaches the network through a helper carries no url literal and no elf literal and every same-organ test reports it sovereign -- an under-report, which is the flattering direction. net_dep answers what breaks with no internet; it is reported and deliberately NOT folded into the coefficient. NO chosen weights: the coefficient is derived from SELFSUFF_BASE and SELFSUFF_FLOOR, both inherited from the sponsor term, and the ledger row that fired is printed by id beside every number. Referee nx_selfsuff_gate carries the POSITIVE control a penalty term needs -- a zero-dependency ledger must leave every priority identical -- because a term that penalises everything passes every negative test. No field tool prices sovereignty at all. Adoption: RUN-BY:actlog — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●○○○○
NAP
the published project loop -- a plan becomes a live team page with journal, findings and recommendationsMeasured: pp_emit exists in runtime/_hdl_build/nx_proj_pulse.nx, verified at emit. Watch NAP1 [aiscinature] [aisciv2]: the AI-Scientist bar is publish-what-you-did, end to end; the field's tools have project pages fed by hand-typed status, and none compose theirs from a capability rank, an evidence plane and a team journal. Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked).
dossiernot adopted: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked)
Pros Implementing source symbol found; runtime acceptance separateCons not adopted yet: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked)
●●●●●
evidence-derived task state -- DONE only when the contract symbol lands and its gate is greenDARK — runtime/_hdl_build/nx_proj_pulse.nx EXISTS but does not declare pp_sync: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. Watch NAP2: completion derived from measurement, never a status column; the same law the compare cells already obey.
dossierwatching pp_sync
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
the loop files its own recommendationsDARK — runtime/_hdl_build/nx_proj_pulse.nx EXISTS but does not declare pp_recommend: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. Watch NAP3: drift the pulse detects (UNMAPPED rungs, stale estimates, rank-vs-state disagreement) becomes marker-idempotent intake REQs -- the feeder pattern, proven by the gen G2 fix.
dossierwatching pp_recommend
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
executor dispatch per ranked rungOpen — watching runtime/nx_nap_dispatch.nx : nap_dispatch, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Watch NAP4: promptpack scaffolds carry each NOW rung's contract, done-rule and gate to any seat; organ-authorable rungs route to auto_builder DATA specs instead.
dossierwatching nap_dispatch
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
proposal tournament before buildOpen — watching runtime/nx_nap_tournament.nx : nap_tournament, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Watch NAP5 [coscientist]: generate, critique and tournament-rank N candidate approaches per critical rung with pre-declared accept rules -- the co-scientist loop grounded on our own judges.
dossierwatching nap_tournament
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
evaluator-driven candidate evolutionOpen — watching runtime/nx_nap_evolve.nx : nap_evolve, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. Watch NAP6 [alphaevolve]: candidate organ variants scored by the EXISTING gate fleet as automated evaluators, survivor promoted under the promote ruler, with bounded actions per unit time and a time-boxed off-switch by construction.
dossierwatching nap_evolve
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
PM
ranking features derived from the backlog itself, with a saturation refusalMeasured: dt_mode_permil exists in runtime/nx_debt_triple.nx, verified at emit. SHIPPED 2026-09-03 and LIVE (source 22149 B, promoted 103232 B, BUILT equals PROMOTED, registered, capped, invoked, nx_catalog with_gaps=0): the feeder nx_dr_ocm lacked, mapping every OPEN debt row to the (value, momentum, cost) triple and holding the position-to-row-id map the ranker itself does not carry. Features are counts of investigation other seats have already paid for -- open rows sharing the row's first scope path segment, open rows naming the same organ, and lane freshness bucketed off epoch ids -- and NEVER the self-declared severity byte, which the organ refuses to read: eaten-share by declared severity measured FLAT AND NON-MONOTONIC across sev4 to sev8 at 205, 219, 416, 300 and 328 permil, covering 909 permil of the board, so a severity-ranked drain returns a confident meaningless order. THE DISTINGUISHING FEATURE IS THE SATURATION GUARD: dt_mode_permil measures each feature's mode share and the organ REFUSES to emit ranker arguments when any feature ties a strict majority, with the bar DERIVED and not picked -- above 500 permil one value holds more than half the population, so the feature cannot order that majority against itself. It fired on its own author, whose first cut split the scope on underscore and collapsed every nx_ scope to one token. The field ranks by hand-entered component scores [wsjf-safe] and weighted debt-reduction rubrics [roadmap-2026]; none derives its ranking features from the backlog's own cross-row structure, and none can refuse to rank when a feature has gone degenerate. Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked).
not adopted: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked)
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday Cons not adopted yet: callable, authorised, completed MCP invocation not established by supplied journal window; lifetime history unknown (direct execution may be recorded elsewhere; this scan does not establish lifetime use); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked)
●○○○○
the ranked drain runs end to end, from the board to a selected worklistDARK — runtime/nx_debt_triple.nx EXISTS but does not declare dt_rank_drain: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. OPEN CONTRACT for rung PR12. The feeder ships and the sovereign ranker ships, and a seat still joins them by hand: nx_debt_triple emits ARGS and the position-to-row-id map, a human pastes them into nx_dr_ocm, and reads the ranking back through that map. Measured 2026-09-04 end to end at budget 60 over 12 rows, selected 6 spent 56 forgone_priority 240000, so the arithmetic is proven and only the JOIN is manual. Done when one verb takes a budget and returns selected ROW IDS, and a neg-control proves a saturated feature still refuses rather than returning a confident order
dossierwatching dt_rank_drain
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
the intake front door on the emitted site, a session-gated formMeasured: pbp_serve exists in runtime/_hdl_build/nx_host_backlog_post_t342.nx, verified at emit. the field's intake forms are mature; ours is built and undeployed on 2026-09-22, so this symbol reads PRESENT and completion lives in the acceptance row below rival marks uncited — the Yes, Best or Part codes on this row are an observation read with no reference mark behind them Adoption: LIB-WIRED importers=2 nonval=2 — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; fully adopted on the estate ladderCons behind Jira (leads), Linear (leads), Asana (leads), Monday (leads)
●◉◉◉◉
intake front door accepted (deployed by the release owner, verified on nishifamily.com, operator accept- row)DARK — runtime/nx_accept_gate.nx EXISTS but does not declare ga_accept_backlog_form: something shipped at this path under another name, and this mark would read open forever. Repoint the contract to the real entry point (the plan rung AND this row) or rename the function; the flip follows on the next beat, and the comparewatch- plane row reads DARK until then. three-party completion for PR14: the mechanical cell above may flip on its symbol, this cell flips only through the acceptance gate
watching ga_accept_backlog_form
Pros none measured yetCons open contract; expected source declaration not established
○○○○○
intake routed to the capability boards by the estate and flagged as a wanted outcomeSource present; authored stronger claim: ir_propose in runtime/nx_intake_route_lib.nx, verified at emit. a REQ's words are mapped onto every board's rungs and watch gaps and the confirmed targets land as a sponsor row the ranker multiplies by, plus FILED and plan queue rows (PR15, shipped 2026-09-22); no field tool routes a ticket into measured capability boards Adoption: LIB-WIRED importers=4 nonval=3 — fully adopted (top of its ladder).
dossier
Pros Source symbol found; stronger capability claim is authored; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
◉○○○○
the living request, refinements route and re-proposeSource present; authored stronger claim: ir_text_join in runtime/nx_intake_route_lib.nx, verified at emit. every text frame a person writes about a request joins its query (the textkind rows of the conf are data), the router's own frames are excluded by the prefixes it writes, and a newer frame re-proposes the request on the next sweep (PR16, 2026-09-23); no field tool re-routes a ticket when its spec grows Adoption: LIB-WIRED importers=4 nonval=3 — fully adopted (top of its ladder).
dossier
Pros Source symbol found; stronger capability claim is authored; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
◉○○○○
the decisive living request, how often a word was written weights the querySource present; authored stronger claim: ir_qtf_weight_milli in runtime/nx_intake_route_lib.nx, verified at emit. each distinct term's query weight is BM25's own (k3+1)qtf/(k3+qtf) with k3 a conf row (0 = every term once, the prior ranking), every ledger row records the ranker it ranked under and the sweep re-ranks the rows of another, calibrated on the two judged live requests (PR17, 2026-09-23); Adoption: LIB-WIRED importers=4 nonval=3 — fully adopted (top of its ladder).
dossier
Pros Source symbol found; stronger capability claim is authored; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
◉○○○○
a request that is many requests reaches every board it asks forMeasured: ir_frame_route exists in runtime/nx_intake_route_lib.nx, verified at emit. each human frame is ranked alone by the same BM25F and query weights and the frames' top-k are fused by reciprocal rank fusion (k a conf row, 0 = off, the prior digest byte for byte), an intent is a document some frame ranks first, a fused tie goes to the whole request's own ranking, machine rows keep router receipts out of the request text, and the sweep ledger records fusion and text-frame count so a change re-proposes exactly the rows it touches (PR18, 2026-09-23); Linear's Triage Intelligence suggests one set of team, project, assignee and labels plus duplicates for the whole issue and does not split it [linear_triage_intelligence_2026_09_23]; Jira's Rovo breaks one work item into tasks on a click [jira_ai_2026_09_23] and Monday's Transcript Summarizer extracts every action item from a call [monday_ai_2026_09_23], neither page documenting a route for each part to the board it concerns; Asana's AI intakes, classifies and routes whole requests and its subtasks are made by hand [asana_ai_2026_09_23]; authored from the vendors' own pages read 2026-09-23, no exceed claimed; Adoption: LIB-WIRED importers=4 nonval=3 — fully adopted (top of its ladder).
dossier
Pros Implementing source symbol found; runtime acceptance separate; ahead of Jira, Linear, Asana, Monday ; fully adopted on the estate ladderCons none on the measured axes (rival marks are documented presence, not depth)
●◐○○◐
Rival-claim provenance. Every Yes, Best or Part mark in a rival column is a claim about someone else's product. A cited row carries a reference mark that resolves to a pinned mirror (the refs gate measures that); an uncited row is an observation read and is badged in its evidence until a reference lands. The badge is the receipt, never the proof: a mark proves a mirror exists, not that the mirror supports the code. The rows are counted below.
Rival claims, counted
ClassCountNote
rows with rival marks11rows carrying a Yes, Best or Part in a rival column
cited4a reference mark resolves to a pinned mirror
uncited7an observation read, badged until a reference lands
rows, summed11RECONCILED: the parts sum to the total 11

Delivery and evidence

Inspect risks, technical debt, rendered observations, experiments and references. Read scope and limitations alongside every result.

Debt register

IdSevWhat it isUnblock
1788971061open7Tie evidence-aware estate ranking to accepted Beach outcomes through existing API/MCP ownersPR6-PR9; compare predicted and realized benefit, controlled visual/frame evidence, regressions and operator effort. Related debts 1788970740 GPU performance and 1788970775 physical terrain.

Release history and work log

The worked plan, on the board. Every leg appends what it measured, landed, retracted, learned and left queued, per rung, so a crash leaves the next seat a ledger here rather than a transcript to mine. Kinds: measure, land, retract, lesson, queue. Newest last.
WhenRungKindEntry
2026-09-09PR8queue2026-09-09 operator direction retained: use hard Beach deliverables to test shared estate investment; ranker source audit found existing dependency/cluster/sponsor/version logic and explicitly missing uncertainty estimates. This record does not claim runtime changes or live UI delivery.
2026-09-21PR13measure2026-09-21 the ranker DISAGREED with a seat's hand order on two fresh boards and the evidence went against the ranker: it ranked SP4 (v 28) second while SP4 depends on SP3 (sixth) which depends on SP2 (seventh); SP6 (6 u) fifth above SP5 (4 u) twelfth because five contracts on one organ file divided SP6's cost by five; SS7 (v 5, c 1) third above SS1 (v 24, c 5) fourth, the corpus every other rung stands on. Method: direct dep edges from each plan against the rank rows of each .rank artefact, whole population of both boards
2026-09-21PR13landnx_compare_rank.nx: the cluster divisor no longer divides (the cluster size is still measured and printed) and a DEP-PULL pass raises every open prerequisite until its priority reads one above the highest open dependent that pulls it, to a fixpoint, each pull printed by id; no coefficient, only the board's dep edges. Sovereign build clean, nx_behaveprobe live-vs-staged DIFFERS STRONG on speech (37,319 vs 43,373 bytes, both rc 0), nx_organ_ship in flight
2026-09-21PR13lessonA ranker that prices a dependent above its own prerequisite is answering which node is most valuable, not what to do next; the seat's order was right for the wrong reason (taste) and the ranker was wrong for the right reason (arithmetic with a missing edge term). Put the edge in the arithmetic, then let the ranker decide
2026-09-21PR13measureAFTER the fix, live binary sha 71b07255 shipped through nx_organ_ship (caps gate 17 of 17 GREEN, approved loss = 2 compiler source-path runs, lost_other 0): speech DEP-PULL pulls=41 passes=11 open=18, scripturestudy pulls=13 passes=5 open=14; dependency-order violations over every direct dep edge of both .rank artefacts 6 of 32 -> 0 of 32; cost order now follows declared est (SP5 4 u at 40 tenths before SP6 6 u at 60). Speech order SP0 SP1 SP2 SP3 SP4 SP11 SP5 SP6 SP7 SP8 SP12; scripturestudy SS0 SS1 SS2 SS5 SS3 SS4 SS11. Imprecision chosen and named: the pull compares the pre-scale integer priority (value times momentum over cost) so each pull steps a whole unit of cost, which orders correctly and inflates raised values coarsely; the child's scaled priority carries the published number
2026-09-21PR13lessonWhere the ranker still disagreed after the fix it was right: SP17 (register the lane) sat twelfth because the plan declared no edge from it, and the remedy was the missing dep row on SP4, never a hand override. A ranker that respects edges makes the plan's honesty the only lever
2026-09-21PR13landSOVEREIGN RULER SHIPPED (operator 2026-09-21: the bench must be sovereign, not a seat's hand count): nx_depbench_lib (db_count over a board's rung rows and its published rank rows: an open rung ranked above a direct open prerequisite), nx_depbench CLI (exit 0 GREEN, 1 RED, 3 UNREADABLE, verdict last), nx_depbench_gate 11 of 11 on planted boards (inversion counted once, clean order zero, done prerequisite not an edge, comma deps each an edge, neg-control BITE-PROVEN fires on bad and silent on good); shipped through nx_organ_ship sha ef3a5048, registered, offc twin installed. The gate's first run read 9 of 11 RED and both reds were fixture errors (an inverted neg-control flag, a miscounted planted edge), corrected in the fixture, never in the ruler
2026-09-21PR13measureSOVEREIGN AFTER-STATE on the shipped ranker 71b07255: nx_depbench speech rungs=18 ranked=18 edges_checked=18 violations=0 GREEN; nx_depbench scripturestudy rungs=14 ranked=14 edges_checked=13 violations=0 GREEN. The BEFORE-STATE (6 of 32) remains a hand count over the pre-fix artefacts, which the re-rank overwrote; the gate's planted inversion is the proof the ruler counts that class. PR13 is CLOSED for the ruler; the fleet beat row that runs it over every board and renders the trajectory is what remains, and the fleet re-rank on the new binary (nx_compare_rank_fleet, job 1790021346) was still running at journal time
2026-09-22PR13queueSTALE LABEL, named not hidden: the ranker's summary line still prints rule=(...)/(est_tenths/cluster) although the arithmetic no longer divides by the cluster since 71b07255; the literal was left so the promote ruler lost no run. The next ranker ship rewrites that label to (est_tenths) with DEP-PULL named, under an enumerated allow_loss for that one run
2026-09-22PR13land2026-09-22 nx_depbench all mode shipped sha 6c5f59c4f5c07991ef99fed2a745e075dd10c7492945795b8b8e112f43a1e9bd (gate 11/11, content loss = the old usage line only, probe on lang IDENTICAL STRONG): one DEPBENCH line per board on regen.list, unranked and noplan boards counted and never judged, one row appended per run to knowledge/status/depbench.jrnl, DEPBENCH-ALL summary last with the partition printed; clock row depbenchall 86400 ./nx_depbench.elf all put to the desired plane (rows 209)
2026-09-22PR13measure2026-09-22 FIRST FLEET ROW: domains 118 = ranked 117 + unranked 1 + noplan 0, edges_checked 658, violations 12, red_domains 4 (mangagen 1, devguardrails 2, gameengine 7, engineshift 2), verdict RED. Every RED board was then re-ranked with the DEP-PULL ranker and every one was REFUSED before ranking, so their .rank artefacts are fossils of the pre-fix ranker: mangagen RANK REFUSED malformed graph (R11 names a missing dep R1), devguardrails RANK REFUSED malformed graph (7 rung rows DG10..DG13 carry 6 fields of 8 and prose in the dep column), gameengine RANK REFUSED BAR-STALE (11 bars: 5 fresh, 4 attested, 2 stale), engineshift RANK REFUSED LADDER-PARTIAL (one rungrole declared twice). The 12 violations therefore measure four boards the ranker cannot re-derive until their owning lanes repair the data; the 113 boards the ranker can rank read 0 violations
2026-09-22PR13lesson2026-09-22 a fleet ruler that reads a rank artefact cannot tell a live rank from a fossil one: a board the ranker now refuses keeps the .rank its last successful run wrote, and every violation on it is a claim about a ranker generation that no longer runs. The all mode counts these honestly as violations; the remedy is a rank artefact that carries the sha of the plan it ranked so the ruler can read RANK-STALE by content, never by mtime
2026-09-22PR13queue2026-09-22 owed: the .rank artefact records the plan sha it was derived from and nx_depbench all reports RANK-STALE per board (counted apart from violations); the four data repairs belong to the mangagen, devguardrails, gameengine and engineshift lanes and are named here, not edited from this seat
2026-09-22PR13land2026-09-22 PM MACHINERY LANDED FOR THE LANGUAGE PROGRAM: the RACI store carries LANG-superiority-program (R architect+researcher+referee, A pm, C adversary+operator, I all-crew); the board hygiene ritual is the plan plane plan-lang-board-hygiene- (nx_barfresh, nx_ladder, nx_depbench, nx_compare_refs_gate over lang) and it executes under the plan runner shipped 593e196c, which retires closed rows by name, names a malformed row by its rule and refuses an all-retired plane by name; the ranker files the language top-3 into pm_intake.jrnl on every rank; the team playbook is knowledge/library/nishi_team_playbook_2026-09-22.md. Approval is data: removal of any archived artifact (ecosystem EC71) and acceptance of any rung (the three-party rule) are accept- rows the operator writes, and the PM board reads them, never a seat's word
2026-09-22PR13queue2026-09-22 owed on this board: nx_compare_refs_gate needs a per-domain scope so a domain ritual can read green for its own board while the fleet gate still names every other lane's uncited references (measured: step 4 of the lang ritual reads rc=1 on authz, deepresearch, deploy, dataio, browser and civicmap references with zero lang offenders); the ritual plane keeps the fleet step until then so no red is hidden
2026-09-22PR15land2026-09-22 SHIPPED nx_intake_route (buildroot/runtime/nx_intake_route_lib.nx 49,728 B, CLI, gate _hdl_build/nx_intake_route_gate.nx 43/43 GREEN on the NAS, both through nx_organ_ship: organ sha d296daa3 registered and offc-twinned, gate sha a474c395 promoted); conf knowledge/intake_route.conf; laptop twins byte-identical; the operator's own request (REQ 1790106111, landed through plan-intake-carexplode-0922- via nx_pm_intake ask) was the first subject
2026-09-22PR15measure2026-09-22 CALIBRATION on REQ 1790106111 over 118 boards (117 read, trafficsafety refused duplicate-rung-id TS11, debt 1790107811): conf minlen 3, minscore 2, maxwords 24 routed 98 boards (cleanserve best 7) because the goal mapper matches SUBSTRINGS and art, car, view, print, design hit nearly every board; conf minlen 5, minscore 3, maxwords 16 routed exactly ONE board -- stem's watch gap ct_assembly_explode at score 3 -- and no rung on any board, which named the three rungs the PM tier then authored (stem R7, dcc DC17, supimacotton CT6). Both runs journaled under knowledge/store/planrun-intake-route-1790106111- and -v2-
2026-09-22PR14measure2026-09-22 live https://nishifamily.com/backlog answers 200 with the legacy nx_pm_intake list (new=5 codex REQs plus 1790106111); the session-gated GET form and POST owner (t342-t344) are BUILT-UNPROMOTED; deploying the front door is the release owner's act under EC68, not a seat's
2026-09-22PR15queueowed: whole-word matching in nx_goalmap_lib gm_has_ci (substring saturates every short word, so the conf had to climb to minlen 5); the trafficsafety TS11 duplicate (debt 1790107811, the board's own lane); an intake-route step on the clock or a plan ritual so every NEW REQ is proposed on the beat and the PM tier only confirms targets; a cap naming nx_intake_route for the MCP surface (minted 2026-09-22 nonce 1790107900)
2026-09-22PR14measure2026-09-22 the live /backlog list is a FOSSIL of daemon start: the same 2312-byte body (new=5) before and after REQ 1790106111 was appended, triaged and filed, while pm_intake.jrnl grew past 1.8 MB; the session-gated variant reads per request -- debt filed for the release owner
2026-09-22PR15land2026-09-22 FIRST REAL FILE by the organ: nx_intake_route file 1790106111 operator plus2 stem:R7,dcc:DC17,supimacotton:CT6 -> sponsor row intake-1790106111 on the bare sponsor- plane (rows=22), TRIAGE and FILED frames written, 3 queue rows written; nx_compare_rank then printed sponsor[intake-1790106111:plus2] sponsor_mult_x4=6 on stem R7, dcc DC17 and supimacotton CT6 -- the flag is a number the ranker reads, not a sentence
2026-09-23PR15retract2026-09-22 the v1 calibration rows above (minlen 5 / minscore 3 / maxwords 16 routing exactly one board) are RETRACTED as the METHOD, not as measurements: a length-and-count threshold over a substring mapper is not a ranker (operator: that sounds unintelligent and hacky, look at how sota it is as of today); the measurements stand as the record of why the substring family was root-fixed on the search board (T1)
2026-09-23PR15land2026-09-22 v2 ROUTER: ir_propose ranks every rung row and every _ABSENT_ watch row of every board on regen.list by whole-word BM25F (nx_bm25_lib: idf table and average field lengths cached once per query, title 3 / body 1, k1 1.2, b 0.75, saturate once over the weighted pseudo-tf, the Robertson and Zaragoza form the search board's SB-LEX bar names) and publishes the top-k with every score, the idf per term and the top1-top2 gap; conf knowledge/intake_route.conf = topk
2026-09-23PR15lesson2026-09-22 THE SHORT-WORD SATURATION WAS THE TOKENIZER, NOT THE WORDS: the estate's BM25 family (nx_bm25.nx 29 importers; _hdl_build/nx_bm25f.nx 3) counted tf and df by SUBSTRING, so car scored card, scar and carpet everywhere; root-fixed on the search board as T1 (nx_wordb_lib, the one word boundary over nx_ascii; nx_bm25f_gate 9/9 with the car-vs-card neg-control, nx_cms_search_gate 3/3, the nx_bm25_test KAT 5/5 and building on the NAS for the first time since its direct import resolved to a _hdl_build twin). Two seat errors banked: an nx_absent listing is CAPPED at 12 of N and was read as the population (a caller of cl_lower was missed and the ship named it); stop words are DATA rows and a length rule is a hack
2026-09-23PR14queue2026-09-22 ALPHA OF THE FRONT DOOR, release state by evidence (operator: always get an alpha out): READY = nx_sites_daemon_backlog_t343 BUILT 597120 B in _build (nx_catalog BUILT-UNPROMOTED), its owner lib nx_host_backlog_post_t342 (GET form under the opaque session, POST appends a REQ frame through the strict backlog owner); WAITING = deploy_targets.conf carries NO backlog row (nx_txtscan count backlog = 0 over 20153 B), so /api/deploy cannot take it and the never-brick health-checked deploy is the release owner's act under EC68 (site-release RACI, publisher AR); NEEDS-INTERVENTION = none on the seat side. Recipe for the owner: (1) add the deploy row (src <x>.elf.new, health probe on the daemon's port, rollback slot), (2) nx_stage_alias the built daemon into the row's src, (3) /api/deploy target=<row> confirm=yes expect_sha256=<staged sha> and read DEPLOYED-GREEN listen=VERIFIED, (4) nx_page_verify https://nishifamily.com/backlog and a POST from a real session lands a REQ the list then shows, (5) an operator accept- row (three-party). Until then the live /backlog stays the fossil list (debt 1790108275) and the intake path is nx_pm_intake ask through a plan plane, which is what carried REQ 1790106111
2026-09-23PR15land2026-09-22 SHIPPED v2 through nx_organ_ship: nx_intake_route sha a90de75f1098fe4b68beb147facaa679331417661d006e70e9890174948b67ce (135296 B, promoted, _offc twin installed, registered; live was d296daa3 226496 B), prove GREEN (gate 51/51, closure bank CURRENT), content loss 131 runs approved by evidence record 067bbda0 (106 v1 goalmap and seg-store symbol names + 25 v1 threshold digest fields), behaviour reviewed from the retained observation 7e8a3fba (both generations run on knowledge/intake_route_probe.conf, review knowledge/status/harness/intake_route_v2_review.txt sha dde5e2c3, evidence intake_route_v2_review_evidence.txt sha 3dd4144a), harness manifest hc455230744b72cec. nx_intake_route_gate admitted to knowledge/gateroster.conf (trial GREEN 74 ms, journal knowledge/status/gatetrial_intake_route_0922.jrnl); nx_rungclose check pmdash PR15 reads stage LIVE, weakest tested = no GREEN roster row since the land yet: the daily beat moves it to ALPHA, wired and operated wait on an intake beat (queue below)
2026-09-23PR15measure2026-09-22 LIVE v2 PROPOSAL on REQ 1790106111 (MCP nx_intake_route propose): 41 terms after 159 stop rows, corpus 3616 documents = 2021 rungs + 1595 watch rows over 118 boards read, 0 unreadable (v2 scores a duplicate rung id as two rows, so trafficsafety is no longer refused), 1971 scored; ranked: 1 supimacotton CT6 142239 milli, 2 dcc DC17 102423, 3 dcc EXPLODE watch 101385, 4 stem R7 76132, 5 supimacotton PRODUCT watch 53364, 6 stem Twin-CAD watch 38394, 7 procgen PG30 ex3_pose 25688 (the exploded-view engine the PM tier had to find by hand under v1), then browser, pmdash PR14, growth, autodev, graphics, synthroom, aesthetictwin, search; top1-top2 gap 279 permil. The three authored targets are ranks 1, 2 and 4 with no threshold in the path
2026-09-23PR15queue2026-09-22 owed for BETA and OPERATED under the close ruler: a beat verb that proposes every NEW REQ frame in pm_intake.jrnl on the clock and writes the digest beside the journal (then a treat row mcp=nx_intake_route api=/api/tools/call prim=nx_intake_route_lib wf=plan-intake-route agent=intakeroute); the numeric and one-letter tokens the REQ text carries (2026, 09, 22, t) are discounted by idf, not by a rule, and stay as measured; search T2 stemming (cars and car conflate today only through idf, not through nx_stem)
2026-09-23PR15landSWEEP VERB SHIPPED: nx_intake_route sha 38fb2575 (nx_organ_ship, prove=GREEN 67/67 on the fresh gate, behaveprobe IDENTICAL STRONG on the propose workload, one lost run approved by allow_loss_v1=45ee7078 = the v1 usage string, offc twin installed, registered). nx_intake_route sweep <journal> [conf] proposes every NEW REQ, at most sweepmax (knowledge/intake_route.conf row, provisional 5) per run oldest first: one ledger row per request in knowledge/status/intake_route_sweep.jrnl keyed id=<id> between tabs, the digest under knowledge/status/intake_route/<id>.json, knowledge/status/intake_route_sweep.status truncate-written summary-line-last; nothing on a board moves. TREATMENT AS DATA: treat row PR15 mcp=nx_intake_route api=/api/tools/call prim=nx_intake_route_lib wf=intakeroute (plane plan-intakeroute- step 1 = nx_intake_route sweep knowledge/status/pm_intake.jrnl) agent=intakeroute (clock row intakeroute 3600 nx_plan_run.elf intakeroute; sizeguard-intakeroute 3600 at the status-journal budget 1048576/20000). nx_treatment pmdash reads COMPLETE, board TREATED; close ruler: live and wired HOLD, tested waits on the roster beat, operated on the clock's first run
2026-09-23PR15measureFIRST LIVE SWEEP (job 1790132380, nx_intake_route sha 38fb2575): ids=12462 new=12069 triaged=390 filed=3 proposed_now=5 already=0 deferred=12064 routed=5 nomatch=0 refused=0 write_failed=0 sweepmax=5 elapsed_s=45 -- 9 s per proposal, because ir_propose re-read every board (regen.list, 100+ .plan and .matrix files) on every call; the instrument is being fixed (corpus loaded ONCE per sweep, ir_corpus_load + ir_propose_on), sweepmax stays PROVISIONAL until the per-proposal cost is re-measured on the refactored organ
2026-09-23PR15measureTHE CLOCK RAN THE SWEEP ON ITS OWN (row intakeroute, DESIRED plane put 1790132500, folded LIVE and fired at epoch 1790137120, read from the actlog by nx_rungclose: operated=HOLDS run=1790137188 agent_plane=live): ids=12464 new=12070 triaged=391 filed=3 proposed_now=5 already=5 deferred=12060 routed=5 sweepmax=5 elapsed_s=67 -- 13.4 s per proposal on the loaded box against 9 s on the hand run, the same re-read-every-board cost; 10 ledger rows now, none moved on a board; the hourly beat is live and its per-run cost is the number the refactor is measured against
2026-09-23PR15landCORPUS LOADED ONCE PER SWEEP: nx_intake_route SHIPPED sha 1e87660b50252be368d73cec4c323fdcc98f15435a4ae25ef1d9bb78fefb51af (156464 B) through nx_organ_ship, harness hb4f050d074746cbd -- ir_propose split into ir_corpus_load (every board's plan and matrix read ONCE into a cp[] descriptor: doms, counts, the six document arrays) and ir_propose_on (one request's terms, idf table, scores, top-k, digest, REQ-ABSENT refusal); ir_sweep loads the corpus once and scores every proposal on it; propose composes both so its digest is unchanged. PROOFS: nx_contentdiff lost_from_live=0 gained=3 GREEN; nx_behaveprobe live-vs-staged on the probe workload IDENTICAL (6543 B both, first_diff_off=-1); nx_intake_route_gate 67/67 GREEN rebuilt fresh in the ship (bank DRIFTED, so the loop rebuilt it) and promoted separately; _offc twin installed
2026-09-23PR15lessonA PER-CALL RE-READ OF A SHARED CORPUS IS A COST THAT ONLY SHOWS UP WHEN A BATCH VERB ARRIVES: propose read every board on every call and nobody paid for it until sweep called propose five times and paid five times. FIX THE INSTRUMENT, NEVER TUNE THE BUDGET TO IT: sweepmax was first set to 5 because 9 s per proposal fit an hourly beat, which is a threshold calibrated on a defect; the corpus is loaded once now and sweepmax is re-derived from the measured per-proposal cost of the refactored organ
2026-09-23PR15retractTHE 'RE-READS EVERY BOARD' MECHANISM WAS WRONG, refuted by the instrument I put in the sweep: nx_intake_route sha 6e4c3dba (shipped through nx_organ_ship, lost=0, behaveprobe IDENTICAL) prints load_ms= and propose_ms= (sys_now_ms around ir_corpus_load and around every ir_propose_on); the live run (job 1790138325) read elapsed_s=49 load_ms=134 propose_ms=43256 for 5 proposals -- the corpus load is 134 ms and the scoring pass is 8.65 s per proposal. The refactor stands (loading once is right) but the lesson row at 1790137800 named the wrong cost; the cost is inside the BM25F scoring pass (idf table + per-document score over 3616 documents x 21..111 terms, each a whole-word scan of the document text per term), not the board reads
2026-09-23PR15measureTIMED SWEEP (job 1790138325, sha 6e4c3dba): ids=12464 new=12070 triaged=391 filed=3 proposed_now=5 already=15 deferred=12050 routed=5 sweepmax=5 elapsed_s=49 load_ms=134 propose_ms=43256 -- 15 ledger rows now; per-proposal scoring 8651 ms against a 134 ms corpus load = the scan-per-term shape (documents are re-tokenized once per query term per proposal); the remedy is a per-document term table built once at corpus load in nx_bm25_lib (the one BM25 family), scored by lookup, proven byte-identical to the scan path on the fixture and on the live corpus before sweepmax is derived
2026-09-23PR15landTHE TOKEN INDEX SHIPPED: nx_intake_route sha 52c90ffd4af87b522529b5f603ccc427d0b9df2c377166d35bc59cd32d726bb5 (176152 B) through nx_organ_ship, harness hb97a13777022fd4b -- nx_bm25_lib (the ONE BM25 family, extended never twinned) gains bm_index_build/query/score_milli/tf/df/dl/avg + bm_index_xcheck: each field tokenized ONCE at corpus load (nx_wordb_lib boundary, lowercased into an arena, per-document distinct tokens sorted by a 7-byte packed prefix key then bytes, with tf and dl), tf and df by binary search confirmed on the bytes (exact by construction, no hash); ir_corpus_load builds it (cp[CP_INDEX]), ir_propose_on scores by lookup; the scan path stays as the brute-force ORACLE and nx_intake_route xcheck <journal> <id> [conf] ships the comparison as a verb (exit 7 DISAGREE). PROOFS: nx_intake_route_gate 78/78 GREEN (T18 xcheck AGREE on the fixture, T18b-i index KATs incl. neg-control-index-SUBSTRING car-vs-card, neg-control-index-tampered-xcheck-FIRES); nx_contentdiff lost_from_live=1 = the old usage string superseded by the one naming xcheck (allow_loss_v1 47ad6c9d, evidence record retained); nx_behaveprobe live-vs-staged on the probe workload (41 terms, 3616 docs) IDENTICAL 6543 B both sides; gate promoted 75993c88
2026-09-23PR15measureTHE ORACLE ON THE LIVE BOARDS (nx_intake_route xcheck, job 1790143514, sha 52c90ffd): docs=3617 terms=41 score_mismatch=0 df_mismatch=0 avg_mismatch=0 scan_ms=13755 index_ms=136 verdict=AGREE -- the token index reproduces the scan path exactly on every live document for the operator's request and answers 101x faster
2026-09-23PR15measureTIMED SWEEP ON THE INDEX (job 1790143517, sha 52c90ffd): ids=12472 new=12078 triaged=391 filed=3 proposed_now=5 already=25 deferred=12048 routed=5 sweepmax=5 elapsed_s=9 load_ms=726 propose_ms=732 -- 146 ms per proposal against 8651 ms before (59x); the corpus load grew 134 -> 726 ms because it now builds the index once; the run's other 7.5 s sits OUTSIDE load and propose (pass 1 over 12472 ids, the per-id ledger checks, the writes) and is the next number to attribute before any budget is derived from it
2026-09-23PR15measureTHE RESIDUE ATTRIBUTED (nx_intake_route sha 5ba04d18 with pass1_ms/loop_ms/write_ms, job 1790143794, sweepmax=60): ids=12472 new=12078 proposed_now=60 already=30 deferred=11988 routed=60 elapsed_s=13 load_ms=478 propose_ms=5872 pass1_ms=470 loop_ms=5762 write_ms=20 -- 98 ms per proposal; the 5762 ms loop residue is 12078 needle scans of the ledger (one gm_find per NEW request over every ledger row), which grows with every proposal: quadratic in the backlog it exists to drain; pass 1's 470 ms is the same shape (a linear scan of the ids seen so far per frame). Both become O(1) lookups through one id SET (ir_idset_*, sized from the rows) in the next ship
2026-09-23PR15lessonA CORRECT FIX THAT UNCOVERS THE NEXT COST IS THE INSTRUMENT WORKING: the index took a proposal from 8651 to 98 ms, and only then could the sweep's summary show that its own membership checks were the next quadratic -- one sys_now_ms around each stage, printed in the receipt, is what turned 'elapsed_s=13' into a worklist of two named loops; a level without its partition would have read as 'the sweep is slow'
2026-09-23PR15landTHE ID SET SHIPPED: nx_intake_route sha 6910e86c2b84c149f19a2411cfc1a024e3e0de1158222063e150f6c2e3ef1cfc (179264 B) through nx_organ_ship, harness h38eaa89a942cd7c9, contentdiff lost=0 gained=4, behaveprobe IDENTICAL 6543 B, gate 78/78 GREEN rebuilt and promoted 0f7542ca -- ir_idset_slot/put/has (open addressing, sized at twice the rows) replace the per-frame distinct scan in pass 1 (jset) and the per-request gm_find over the ledger (lset via ir_ledger_ids, column 1 id=)
2026-09-23PR15measureTIMED SWEEP ON THE ID SET (job 1790144064, sha 6910e86c, sweepmax=60): ids=12472 new=12078 proposed_now=60 already=90 deferred=11928 routed=60 elapsed_s=4 load_ms=657 propose_ms=3187 pass1_ms=17 loop_ms=125 write_ms=28 -- 53 ms per proposal; the residue fell 5762 -> 125 ms and pass 1 470 -> 17 ms; the run that read 45 s for 5 proposals at 1790132380 reads 4 s for 60 now, and every stage prints its own cost so the next seat starts from a partition, not a level. The hourly clock row drains the 11928 deferred requests in about 8.3 days at 60 per beat; nx_rungclose PR15 stays LIVE with tested waiting on the daily roster beat and operated on the next clock run after this land
2026-09-23PR16measureTHE DEFECT, MEASURED BEFORE THE FIX: pm_intake.jrnl TRIAGE frames 1790182556, 1790183091 and 1790184165 (seat codex, request 1790132172) each end with the sentence that the current router uses the first REQ only and needs later refinement propagation; the last sweep (epoch 1790176720) read ids=12477 new=12079 triaged=391 filed=7 and proposed only state NEW, so 391 requests a person had already touched were never routed; ir_req_text returned the first REQ frame only, and the ledger keyed on id alone, so a refined request could never re-propose
2026-09-23PR16landTHE LIVING REQUEST SHIPPED: nx_intake_route sha 8b4b595270532abcf30f6f112f36f42aa5fb67d1a24ae1d90aac1589eeb8a54d (190408 B) through nx_organ_ship (harness hc6d56599c32715fc; contentdiff lost=2 = the renamed symbol ir_ledger_ids and an upstream STS-LOCK string, approved by allow_loss_v1 6624c257; behaviour DIFFERS by design 6543 to 6629 B = the five new fields exactly, reviewed under knowledge/status/harness/intake_route_v4_review.txt sha 237befdd with evidence intake_route_v4_review_evidence.txt sha 0f20ec42), _offc twin installed; gate rebuilt 91/91 GREEN (was 78/78) and promoted 5f18175572b52b501ce850444a37dd69df91625c1291e37e777487474fe36456 (314184 B); confs knowledge/intake_route.conf (4201 B) and intake_route_probe.conf (3498 B) carry textkind REQ and TRIAGE; lib 88238 B, gate source 39164 B. Compiler law paid for on the first build: a module const must be declared ABOVE its readers (no forward references), so the new consts live in the module's const block, not beside the functions that read them
2026-09-23PR16measureFIRST LIVE PROPOSAL ON THE SIBLING'S REFINED REQUEST (job 1790186977, request 1790132172): text_frames=18 text_epoch=1790185055 terms=848 scored=3491 of docs=3618 boards=118 ROUTED top1=video:V15 score_milli=193659 gap_permil=4 -- the 17 TRIAGE refinements are consumed now (v3 read the REQ alone), and the measurement names the next defect: an 848-term query scores 3491 of 3618 documents and its top two are 4 permil apart, a near tie, so the ranking of a long living request is not decisive yet (the estate's own law: a class decided by near-ties is a missing discriminator, not a scoring bug). FIRST LIVE SWEEP (job 1790186979, sha 8b4b5952, sweepmax=60): ids=12479 new=12080 triaged=391 filed=8 candidates=11729 already=750 proposed_now=60 deferred=11669 refined=0 reproposed=0 elapsed_s=9 load_ms=474 propose_ms=8177 pass1_ms=34 loop_ms=189 write_ms=133 -- the 391 TRIAGED and 8 FILED requests are candidates for the first time (no ledger row yet, so they count as unproposed, not refined; refined and reproposed count only ids with a prior row, and none of the 750 already-proposed carries a newer frame); 136 ms per proposal against 53 ms on v3 (joined texts are longer and each proposal walks the journal twice), 60 per beat still lands in 9 s, so the sweepmax row stands
2026-09-23PR16queueNEXT RUNG, FROM THE MEASUREMENT: a long living request (18 frames, 848 distinct terms) saturates BM25F: nearly every document scores and the top is a near tie (gap 4 permil). The field's answers for long queries are query-term selection by idf mass, a recency weight on the newest frames and title-field emphasis; declare it as a rung with a KAT on the fixture (a three-frame request must still rank its subject first by a gap above the noise floor) before any weighting is typed. Also owed: ir_text_join measures then copies over the whole journal per request; one pass per sweep is possible once pass 1 keeps the per-id frame offsets
2026-09-23PR16measureTHE ORACLE ON THE JOINED QUERY (job 1790186978, nx_intake_route xcheck 1790132172 on sha 8b4b5952): docs=3618 terms=848 score_mismatch=0 df_mismatch=0 avg_mismatch=0 scan_ms=174711 index_ms=1713 verdict=AGREE -- the token index reproduces the brute-force scan exactly on an 848-term query over the live boards (102x faster); the near tie the proposal measured is therefore a property of the query, not of the index
2026-09-23PR17measureTHE SIGNAL THE ROUTER DISCARDED, MEASURED BEFORE THE FIX (jobs 1790188447 and 1790188449 on 8b4b5952): ir_terms kept distinct terms only, so 1790132172's 848 terms carried no count of how often each was written across its 18 frames; its top two (video:V15 193659, observability:receipt_durability 192800) sat 4 permil apart while the operator's one-frame request 1790106111 separated its top two by 280 permil (supimacotton CT6 142177 over dcc DC17 102336, stem R7 76118 third)
2026-09-23PR17landTHE DECISIVE LIVING REQUEST SHIPPED: nx_intake_route sha 59f746296358d94aa16c59ab2b77f3df4e22d6b3bf6a999461381843af57c3ab (193880 B) through nx_organ_ship (harness h46a546f96c1fb311; contentdiff lost=0 gained=13; behaviour DIFFERS by design 6629 to 7724 B = 41 terms x 23 + 119 + 18 + 15 exactly, reviewed under knowledge/status/harness/intake_route_v5_review.txt sha d24bcc41 with evidence intake_route_v5_review_evidence.txt sha 37c2e2d3), _offc twin installed; gate rebuilt 108/108 GREEN (was 91/91) and promoted 7a3ad58ac696d7297016995d6553be172973ac7146da324cccfc706e02c4b2d9 (328240 B); nx_bm25_lib.nx 27408 B (bm_index_score_w_milli; the unweighted scorer delegates with nw 0, byte for byte), nx_intake_route_lib.nx 90590 B, gate source 47934 B; knowledge/intake_route.conf dark-launched the row at 0 (5053 B) and then landed 8000 with its calibration in the file
2026-09-23PR17measureCALIBRATION ON THE LIVE ROUTER (jobs 1790190348 to 1790190364, probe confs intake_route_k3_1000/8000/100000.conf): 1790106111 keeps supimacotton CT6 / dcc DC17 / stem R7 as its top three boards at every k3, its top1 score reads 142177 / 170696 / 217420 / 238602 and its top1-top2 gap 280 / 307 / 336 / 345 permil at k3 0 / 1000 / 8000 / 100000 (the k3 0 run ranks byte for byte as v4 did: the dark launch moved nothing); 1790132172 stays a near tie at every k3, gap 4 / 9 / 14 / 3 permil between the same two rows (observability:receipt_durability and video:V15 swap places from k3 1000), so the qtf signal separates a subject from its noise but cannot decide a request that is many requests (17 refinements on unrelated topics: continuous improvement, beach scenes, loadgov, the tool registry, RACI, torrent, WebGPU); landed qtf_k3_milli 8000 (Terrier's deployed default): 336 of the 345 permil available while a word repeated in every frame saturates at nine times a word written once (at k3 100000 the sprawl's board order re-shuffled, gameengine rose to third)
2026-09-23PR17lessonA MISSING SIGNAL AND A MISSING DECOMPOSITION LOOK THE SAME FROM A GAP: the qtf signal widened a judged request's margin by a fifth and left the hodgepodge's near tie where it was, because that request IS several requests and no per-term weight can rank one board first for five topics at once; the honest remedy for a sprawl is to route its frames (or its topic clusters) separately and publish the union, not a stronger weight. Also paid for: a KAT on integer arithmetic states its tolerance per term (two terms scaled and floored separately differ from the floored product by up to one milli each); a ranker change must reach the backlog by construction (the ledger row carries the ranker it ranked under) or every already-routed request stays a stale claim; and the incumbent path of a shared scorer is extended by delegation with the unit case proven byte-identical, never by a second accumulation
2026-09-23PR17queueNEXT RUNGS, FROM THE MEASUREMENT: (1) frame-level routing for a request that is many requests: route each human frame (or each cluster of frames sharing terms) separately, publish the union of boards with the frames that named each, and report decisive per frame, so 1790132172's five topics each reach their board; (2) the first sweep after the k3 row re-ranks the 810 routed rows at 60 per beat (about 14 beats) ahead of the 11669 never-routed requests because candidates run in id order -- a priority order (never-routed first, re-ranks after) is one pass more; (3) ir_text_join still walks the journal twice per proposal (136 ms per proposal); (4) the gap_permil distribution over every routed row as a census verb on the ledger, so a decisive floor could be calibrated from the population instead of two requests
2026-09-23PR17measureFIRST LIVE SWEEP UNDER k3 8000 (job 1790190625, sha 59f74629, sweepmax=60): ids=12480 new=12081 triaged=391 filed=8 candidates=12480 reranked=810 refined=0 proposed_now=60 reproposed=60 already=0 deferred=12420 routed=60 nomatch=0 elapsed_s=11 load_ms=600 propose_ms=9111 pass1_ms=36 loop_ms=220 write_ms=140 -- every one of the 810 rows routed under k3 0 is a candidate again (the ledger's ranker=qtf field decides, not time), the 60 proposed this beat were all re-ranks because candidates run in id order and the routed rows are the oldest ids, so the 810 drain in about 14 hourly beats before the never-routed backlog resumes (queue item 2, the priority order); 152 ms per proposal (136 on v4: the weights loop and the longer digest); the oracle on the live index still AGREES (job 1790190560: docs=3619 terms=41 mismatches 0, scan 9294 vs index 95 ms); nx_rungclose PR17 = LIVE, tested/operated/page wait on the roster, clock and generator beats
2026-09-23PR18landFRAME-LEVEL ROUTING SHIPPED: nx_intake_route sha 5d8d1839856fd4fbbe8888a841e6a3c86ddbcd869108305338aace661ed2a175 (216648 B) through nx_organ_ship (harness h2c6bf894ec255409; contentdiff lost=0, 7 runs gained; behaviour IDENTICAL 7724 B on propose 1790106111 under the probe conf, frame routing off), superseding the first cut 7c46b1fa (before the machine rows, the joined tie-break and the last-row ledger); gate nx_intake_route_gate 149 of 149 GREEN on a fresh rebuild, promoted 00b23b7161980d20c887e15927d5977a547a37b246945211864dcb5cd4a3fe26 (373984 B); sources nx_intake_route_lib.nx 112084 B, nx_bm25_lib.nx 27892 B (bm_rrf_term; the two-leg bm_rrf_milli delegates byte for byte), gate source 68335 B; knowledge/intake_route.conf 7750 B carries frame_rrf_k 60 and two machine rows with their calibration in the file
2026-09-23PR18measureCALIBRATION ON THE LIVE ROUTER (sha 5d8d1839; probe confs intake_route_rrf1, rrf60, rrf600, rrf60m): 1790132172 routes 18 of 18 frames to 9 intents at k 1, 60 and 600 with the same fused top four (video V17, video V15, observability receipt_durability, efp_progression) while its joined top1 stays a 14 permil near tie, so k does not decide it and 60 (the paper's value, the field's deployed default) landed; 1790017600 (3 frames) fuses to comms C14, its joined top1 (gap 336 permil); 1787252609 fused onto pmdash PR16 on the first cut through a router receipt's words, and with the machine rows reads its REQ alone (text_frames 2 to 1) and routes to pmdash's estate-wide portfolio run (gap 126 permil), the words it wrote (PR9, portfolio, fleet run)
2026-09-23PR18measureMACHINE RECEIPTS IN THE REQUEST TEXT: of the live journal's 456 TRIAGE frames, 380 are nx_triage_router receipts and 21 resource-assurance plan receipts, 55 by other writers (sums to 456), all joined into the query since PR16. FIRST LIVE SWEEP WITH THE ROWS (job 1790197734, sha 5d8d1839, sweepmax 60): ids=12482 new=12083 triaged=391 filed=8 candidates=12433 already=49 (sums to ids) refined=0 refiltered=43 reranked=716 reframed=2 proposed_now=60 deferred=12373 elapsed_s=8; of the 810 routed rows 43 had read a receipt as request text, 716 still await the PR17 k3 re-rank, 2 re-framed, 49 current; 11672 requests were never routed
2026-09-23PR18lessonA MAX IS A PROXY FOR THE LAST ROW ONLY WHILE THE FIELD IS MONOTONE: the ledger map kept per request the row with the largest consumed text epoch; a machine row made the next row consume an OLDER frame, the map kept the stale row and the sweep would have re-proposed that request on every beat (gate T29c RED 147 of 148 under the incumbent rule, GREEN 149 of 149 once the last row in append order decides). And a tooth whose name gives the wrong reason is a stale claim while it passes: T25h said corpus order decides a fused tie, the rule became the joined ranking, both orders agree on its fixture, and only T28b (where they part) proves the rule
2026-09-23PR18lessonA RECEIPT IS NOT REQUEST TEXT: PR16 excluded the router's own frames by the prefixes it writes, but a second machine writer (nx_triage_router, 380 frames) wrote receipts under the same frame kind and they were ranked as the person's words; which writers are machines is data (machine rows), and a request a machine files is still its own text. And two rows printing one identity are one row to a reader: the fused top-k printed gd D1 twice for two rungs a board declares under one id until each row carried its symbol (T25l)
2026-09-23PR18queueNEXT: (1) the pmdash.matrix row for frame routing waits on its rival cells being read this month (Jira's AI work breakdown suggests child work items from one ticket; Linear, Asana and Monday unread), never claimed unread; (2) sweep priority: 11672 never-routed requests wait behind 716 re-ranks in id order at 60 per beat, one pass puts never-routed first; (3) a board-identity field (domain name and rung ids) in BM25F, so a frame whose words are abstract still reaches the board it names; (4) ir_text_join still walks the journal twice per proposal; (5) the gap census over every routed row; (6) debt 1789839847 (nx_frontier_scan attest counts a homonym as the month's newest) recurred on pmdash's September bar, its second recurrence after procgen
2026-09-23PR18measureRIVAL CELLS READ, NOT ASSUMED (supersedes queue item 1 above): Linear's Triage Intelligence documentation, mirrored 2026-09-23 (596968 B, pin b513aeb7), describes agentic suggestions of one team, project, assignee and label set plus duplicate and related-issue detection for the WHOLE issue, and nothing that splits one issue into the several requests it carries, so Linear reads 0 on the pmdash.matrix row; Jira, Asana and Monday were not read this month and read 4 (unassessed, excluded from the relative comparison), and the row claims no exceed. The estate's own web index returned no Atlassian page for the query (nishi_search scope=web, 30 results, none on topic): a gap for the search lane, not a reason to grade Jira unread
2026-09-23PR18measureRIVAL CELLS COMPLETED THE SAME HOUR (supersedes the unassessed row above): with three code-4 cells the pmdash position map was withdrawn by design (cdp_unassessed_cells in nx_swcompare_lib: comparative scores require a complete assessed category table) and index.html fell 223040 to 204156 B with no figure, while the control (water, data untouched for 33 days, same generator, same scoped regen) grew 180885 to 181346 B with its 3 figures; the vendors' own pages were then read, mirrored and pinned (jira_ai, asana_ai, monday_ai): Jira's Rovo breaks a work item into tasks on a click (Part), Monday's Transcript Summarizer extracts every action item from a call (Part), Asana intakes, classifies and routes whole requests with subtasks made by hand (0), Linear suggests properties and duplicates for the whole issue (0); no page documents a route for each part to the board it concerns, and the row claims no exceed
2026-09-23PR18lessonAN UNASSESSED CELL IS HONEST AND STILL HAS A PRICE: one code-4 cell withdraws a domain's whole position map (a complete category table is the map's denominator), so a new matrix row either carries every rival read that month or knowingly takes the map down; and a byte decrease after an addition is a question the control answers (an untouched domain under the same generator) before any story about the generator is told
2026-09-23PR18measureIndependent Codex review retained at knowledge/status/claude-parallel-review-20260923.json: live nx_intake_route identity5d8d1839 and gate00b23b71 verified; original sweep1790197734 exited0, proposed60, write_failed0, elapsed8s. This verifies retained execution, not recurring acceptance or positive token ROI.
2026-09-23PR18queueReview competitor-negative evidence: documentation not describing a feature does not alone prove absence. Preserve unassessed/not-evidenced state or retain a scoped vendor test supporting zero. Model attribution must distinguish seat label from actual response model; audited sessions explicitly selected Opus after Fable. Review artifact above carries exact lineage and limits.
2026-09-23PR18land2026-09-23 source-bound PM planning release: the former fixed demonstration in nx_pm_plan_gen now consumes a digest-bound requirement inventory and full transcript-source identity, derives distinct requirement and canonical board dependency graphs, resolves explicit activities through canonical RACI, and retains named mapping/ownership/acceptance gaps. Canonical generator installed through nx_organ_ship job1790207029; registered API replay1790207075 returned the exact reviewed plan e75d00d756e545b56a4ff88727ed65e538a80279cab44d6691d37d90a33f84f6 (846742 B) and fragment d80a8ba1a7c707c4a60c7840f2f8882ce40e6166b8188917883ea9fa0e95e519 (100153 B). No work was dispatched by generation.
2026-09-23PR18measure2026-09-23 qualification: generator actual-entrypoint controls12/12 GREEN (1790206601, repeated on API-built candidate during1790207029); public attachment controls7/7 GREEN1790206563; composed PM HTML/JSON expected state and exact fragment hash2/2 GREEN1790207523. Water raw control remains DIFFERS only in observed time: HTML census age advances2s; JSON generated_unix, evidence.age_sec and gaps.age_s advance2s. Complete raw captures and delta review retained. Public comparison/source-state gates do not establish accepted outcomes or SOTA.
2026-09-23PR5measure2026-09-23 plan accounting:849 source rows are classified (836 candidate-linked/13context; source semantic review remains open),81 requirement families have proposed next-action owners (32foundation/28delivery/7research/14future). Phase is a preference among dependency-ready work, not a hard barrier.23 requirements have37 reviewed board scope links;58 need mappings.70 canonical prerequisites are ordered;33 need activity bindings. Prior rejections gameengine:GE12 and charsim:R23 remain visible; all current delivery remains unassessed and evidence age UNKNOWN. Full accounting: knowledge/gates/estate-pm-plan-release-review-20260923.json SHA7a95ccb48f208fd774d9510362e419fc69876ae447e7eeda6c5181d085630593.
2026-09-23PR18measure2026-09-23 artifact lineage: native release qualification produced generator213421B SHA84c9d3e770c483d1abaeebff49078465c95bf9b90b17e1b8bd27999d1b4b6650; installed API-built239176B SHA7e09423a62092397032b67fd1e2c8b4e3afee03466c6729cfacf4f18cc962707 follows current build_debug.flag=1 and hostctl --debug policy. Root and _offc match. Source/import closure is retained in nx_pm_plan_gen.provenance; installed replay proves result identity. Runtime import census1790207616 finds only nx_pm_plan_gen importing nx_pm_plan; no claim of estate-wide orchestration replacement.
2026-09-23PR18queue2026-09-23 parent intake1790205454 triaged/filed to existing PR18/PR5/PR9 with scheduled inventory9b4a45e6fd9b24cafe699e7cd62fd6d918875344dddb66e2d9a5fbd5bdb0a012 superseding prior input without deletion. PM coordinates source/mapping review; technical and product owners deliver. Owner acknowledgement, executable-workflow binding, recurring execution,33 prerequisite activity assignments,58 mapping gaps and served outcome acceptance remain open. Older flawed31ordered/39blocked graph result1790205718 remains qualification history, superseded by separate graph composition. Exact-artifact Compare adoption and served browser review are separately recorded release steps.
2026-09-23PR18measure2026-09-23 related hook repair evidence retained by the content owner: knowledge/fetched/hook-action-release-56d2557e-20260923.json SHA881d2a12bb0dc3e56a7ce91e02bee2e26cc584fe6de49f534582e1d9210bffb2 (206216 B), archive commit1790207114. Parent independently verified live hook56d2557e and native880/880, local142/142, configured24/24. Shared gateway R4 deployment remains open; hook qualification is independent of this plan's unassessed estate delivery.
2026-09-24PR18land2026-09-23 Compare attachment release: existing nx_swcompare_matrix now declaratively embeds the reviewed source-bound plan on /compare/pmdash/ from pmdash.pmplan.json. Narrow source CAS ccd3c200ae6b99960cd912db75941c2f48130fb481c8ec6118c3c6544d1ea6c2 contains exactly three reviewed insertions. Native owner ship1790208635 promoted API-built renderer1283352B SHAaf966543b2bcb3256d629652611824b152e31a121cc104a692e079be92c89e89 under the current debug build policy, after all6 declared gates passed, zero content loss, and artifact-bound constrained behavior review5331dbe1ac019cdf5c37861fb81282061934edc98e6d2b7a65c9d592bd7deacd. Complete30216B ship output retained SHAffe96b85129922bbb69b3fe9dfc02a38fd8cd5bc85a55c26bbb51d68ae90d11c.
2026-09-24PR18measure2026-09-23 release consumer inventory: nx_swcompare_matrix.elf and _offc/nx_swcompare_matrix.elf are refreshed by nx_organ_ship; buildroot/_offc/nx_swcompare_matrix.elf is a required publisher consumer refreshed through nx_file_install with an immutable old/new digest-bound intent. All3 independently match af966543b2bcb3256d629652611824b152e31a121cc104a692e079be92c89e89. Third-consumer intent knowledge/gates/pm-compare-buildroot-install-20260923.intent SHAdea07f7237395d6dc16a59abc84af37d2b2c23a422a9af81f2db141d5f8c2b9c applied visible1 durable1; prior artifact retained. Future releases must verify all3; scoped nx_compare_regen structurally refuses stale publisher identity. Browser review is a separate delivery step.
2026-09-24PR5measure2026-09-23 coverage clarification: the849 source rows partition836MAPPED and13CONTEXT; their review statuses partition70TUTOR_REVIEWED and779CANDIDATE. Zero unclassified links does not mean semantic completeness or delivery. Current exact-artifact unrelated-domain ship control was IDENTICAL181514B; separate full HTML/JSON captures differ only in existing observation-time fields. Earlier raw DIFFERS/coverage0 and observation ambiguity remain retained, not relabeled. Primary-gate argument forwarding incompatibility and management16384B response capture are release-composition debt; full native retained output was reviewed before adoption. Evidence knowledge/gates/pm-compare-adoption-evidence-20260923.json SHA846e87139fba621891f6d765e8ee02097f721ea28452eaa343c3b113de04990f.
2026-09-24PR18measure2026-09-23 served UI review found a real layout failure after first publication: all81 acceptance details and API metadata worked with0pageerrors, but mobile390x844 compressed normal words into2-4character columns and desktop1440x900 split the Order heading and centered prose. UI acceptance was withheld; original visual failure remains evidence. The native report emitter now reuses existing Compare record table styles, design-token minimum widths, and labeled keyboard-accessible scroll regions. Prose wraps naturally and aligns left; order and identity tokens stay intact. Native actual input generated fragment111178B SHA604621f43fade82b231125ccfa92c159bda86ab82b0d3f8fa707dbc51fb6b918; all12 entrypoint controls passed1790209240. Semantic visible text is unchanged; served visual retest and installed-generator adoption/replay are separate pending checks.
2026-09-24PR18land2026-09-23 corrected PM plan presentation delivered on nishifamily.com/compare/pmdash/. Root served review passed HTTP/API200, all81 acceptance details, expand/collapse, labeled keyboard-focusable horizontal scrolling on390x844 and desktop1440x900, with0pageerrors; screenshots were visually reviewed. The native emitter uses existing Compare record/table styles and design tokens. Original failed layout remains retained as release history. Underlying semantic mapping, owner acknowledgement and delivered estate outcomes remain unassessed.
2026-09-24PR18measure2026-09-23 final callable proof: registered nx_pm_plan_gen API replay1790209581 exited0 and produced fragment604621f43fade82b231125ccfa92c159bda86ab82b0d3f8fa707dbc51fb6b918 (111178B), independently byte-identical to the reviewed public attachment. Generator root and _offc are239920B SHA8021afb1680ae238d27bd05043ad2df8aec35e6ac8e0aa77c8d9d5f3bb11bbe3, installed by reviewed nx_file_install old/new intents with durable backups. Source report1b9d84bb39604d52fbb8aed0cb237ae87c5b8408c4ffcc87b0b2570b03202ceb; all12native entrypoint controls passed. Current machine plan knowledge/gates/estate-pm-plan-installed-layout-20260923.plan.json SHA0b6b0cdc1455366a714b682a20d272b32e88f5697c546ce9637c4e3eb4a4029c retains81requirements and70prerequisites with58mapping/33activity gaps. Full package identities are retained with the final delivery record.
2026-09-24PR18lesson2026-09-23 release composition debt retained: a same-argv behavior probe collides with an immutable output prefix when the reviewed HTML format changes (actual incumbent rc4 versus candidate replay rc0, job1790209470). That result was not relabeled a behavior pass. Full content review found exactly5replaced old table-markup string occurrences and no source/symbol/section loss; independent real-input generation,12controls and served visual review supported the exact reviewed installation through nx_file_install. Future writer comparison needs separate artifact identities under the existing ship owner. No execution or recurring dispatch was created by generating this plan.
2026-09-24PR19measure2026-09-24 source-bound planning review: all 849 source rows retain their identities and the original 4018 associations; adjudication confirms 1633, rejects 2385 and adds 1241 links. Current partition is 816 mapped, 27 requiring intent refinement and 6 context. 81 requirement families have reviewed partial board scopes; 12 new contracts and 319 delivery-activity declarations use existing RACI. Native private qualification passes 40 planner cases and 27 shared parser cases; CRLF parsing and repeated source-row decoding corrected with failed interpretations and controls retained. Planning declarations do not acknowledge owners, dispatch work or accept delivery. Scoped managed-workflow invocation proof, current installed identities, publication and served review are retained separately in the existing PM delivery record knowledge/gates/pm-owned-planning-delivery-20260924.json. Future requests remain retained without dispatch; source links are not semantic completeness. Current shared-boundary and recurrence migrations remain separate owned work.
2026-09-24PR18land2026-09-24 foundation workflow status: 0 of 5 estate-wide rungs complete. Installed intake/router preserve complete framed requests, durable append and exact keyed replay: 40/40 intake, 16/16 exact-reader, 4/4 CLI and 149/149 routing controls; original API read all 12490 recorded requests and agreed on the 3632-document routing oracle. A broader request still exceeded the 30-second qualification deadline on both old and new routers; performance closure remains RED. Compiler pipe2 and memfd mappings are active in both existing compiler copies: 10/10 equivalence plus self-host, installed 9/9 pipe2 and 9/9 memfd. Native PM release adapter is installed with 13/13 controls and original authority/refusal proofs; positive publication through that PM operation is still unverified. Resource observers are installed with 120/120 controls and original API proof; recorded health remains RED/AMBER, aggregate occupancy 87.9 percent and trend unresolved, with no recovery claim. Shared evidence writer is installed and original-call verified: 7/7 declared LoadGov gates and 26/26 grounded checks, with six declared board gaps still open. Host health remains DEGRADED; pre-dispatch reservation failures (-110) remain unresolved. Common runner and recurrence qualification remain pending. Historical one-call/zero-poll demonstrations cover their declared workflows only. Total tokens, review effort and cost per accepted outcome remain unmeasured; matched routing and the automatic investment loop are unproven. The existing source-bound PM plan remains at https://nishifamily.com/compare/pmdash/#pm-source-plan; planning links, installed tools and native qualification do not establish owner acknowledgement, human acceptance or estate-wide completion. Publication and served review are separate release checks.
2026-09-25PR15measurePM seat: the operator goal of 2026-09-25 filed verbatim as REQ 1790355000 (from=operator) plus 13 children 1790355001..1790355013 via nx_pm_intake ask-id with deterministic ids (journal 1911475 to 1916573 B, all 14 COMMITTED durable); router propose on all 14 over 118 boards and 3634 docs was decisive only where a rung already spoke the request words -- R2 connect:CN5 gap 609, R8 connect:CN6 gap 658, R10 legalpractice passkey portal gap 298, R12 scripturestudy sc_index gap 156, R11 synthroom:SR9 gap 133 -- and near-tied on R1 56, R4 45, R5 37, R7 61, R9 33 permil because their homes (connect CN13 to CN18) were being declared in parallel; the parent top1 was folkgames FG7 Dice family on the homonym family (qtf 4, gap 369): a whole-word ranker cannot tell a family circle from a dice family; 11 children FILED through nx_intake_route file (sponsor rows intake-<id>, triage and filed frames, one log row per target board); R6 and R7 wait for the cross-domain board the XLADDER seat is admitting
2026-09-25PR15measurePM seat second pass after the homes landed (119 boards, 3674 docs): the router top1 equals a reviewed target or its same-symbol faithsocial twin on 12 of 13 operator-goal children (R1 connect CN13 gap 525, R2 faithsocial FS2 the CN5 twin 217, R3 CN14 226, R4 CN14 526, R5 CN15 335, R6 faithsocial FS5 101, R8 CN6 132, R9 CN18 288, R10 authz AZ9 28 a near tie, R11 authz AZ10 152, R12 CN16 202, R13 CN17 398), against 1 of 13 on the first pass before those rungs existed; the one disagreement is R7, top1 a familyatlas watch note naming FamilySearch Family Groups (gap 145) with faithsocial first at rank 15, because no rung speaks groups with roles and events (queued to the faithsocial owner); lesson: nx_intake_route file keys its log presence on board plus request id, not on rung, so the R8 re-file widening to connect CN7 and comms C1 reported logs_present=4 logs_written=0 while comms.plan held only the first filing C7 row -- a widened route journals nothing on a board it already touched (rows added by hand this hour)
2026-09-26PR5landW14 PM-RELEASE-PLUMBING: the raci- lane plane that PR5 joins onto the ranked queue (and that nx_pm_board, nx_pm_cockpit, nx_pm_roi_lib and nx_law_warden read) is now a derived view of the one RACI authority knowledge/store/raci: nx_raci_reconcile lanes-project (reviewed by plan hash) and lanes-project-regenerate rewrite only the R A C I columns of lanes whose id is an authority activity, keep lane status and notes byte-exact and never give a lane-only row values; production drift 1 to 0 (research A pm to researcher, adjudicated from the record on ecosystem EC71). Readers still read: nx_pm_cockpit_gate 17/17 GREEN (RACI emitter contract, JSON retains RACI); nx_pm_board_gate 6/6 GREEN after its subject ladder fix (it had forked /tmp/nx_pm_board.sov.elf, a path no builder writes; SHIPPED b8ed8070, first promote, registered, /api/gate_run GREEN). 103 lanes remain lane-only and are named for the RACI owner (debt 1790461667).
2026-09-26PR5queueW14 PM-RELEASE-PLUMBING declared builds NOT promoted: (1) nx_pm_cockpit_gate was built and run by nx_sov_build_run --qualify only (17/17 GREEN) to prove the cockpit still reads the derived raci- view; it stays BUILT-UNPROMOTED with its owner's staged .new untouched. (2) nx_pm_cockpit_investment_t343 was built and run --qualify json only: from the buildroot CWD it read ZERO lanes and zero debts and printed them as clean zeros, because its plane prefixes are CWD-relative bare paths (the same literal is right from nishihost and silent from buildroot); it is a BUILT-UNPROMOTED stage copy of nx_pm_cockpit on the same roi lib, an EC71 parallel-tool candidate for its owner, so its post-projection read stays UNVERIFIED. The promoted nx_pm_cockpit json run from nishihost (job 1790461943) reads the research lane as R researcher A researcher C workstream I pm. Also for the RACI owner: lane-only row vault-suite is column-shifted (title in R, R= A= C= I= labels one column right), so the cockpit renders it as garbage; it is outside the projection by design (lane-only rows are never written) and belongs to the lane-only classification in debt 1790461667.
2026-09-30PR21queue2026-09-30: retain future PM-versus-human and partnership comparison and higher-value human work as an organizational objective. Bottom-up language/workflow qualification remains the critical path; no PM experiment has been run.
On these two registers. Rows are declared in the domain's plan file and carry the debt id, which is the join key back to the sovereign debt plane — that plane, not this page, is the authority on state. Reconciling them automatically (the regen reading the plane and refreshing these rows) is a named, owed rung; until it lands, treat an id here as a pointer to look up, not a status to trust.
Honest verdict. The coverage above records source-symbol presence. Stronger comparisons are authored claims, not measured runtime superiority or accepted outcomes. A watch contract names an expected source symbol; finding it changes source discovery only. Qualification, deployment and runtime acceptance require their own evidence.

Person · product · place — not yet measured for this domain

Every compare carries this layer. Declare knowledge/compare/pmdash.ppp (rows surface|nishi or c1..c4|label|url|connect naming OUR live surface and each rival's front door), run nx_ppp_probe domain pmdash, and this section fills itself on the next beat: the same ruler on both sides — privacy and CX (third-party hosts, tracker classes, cookies, security headers), design and longevity (design hygiene, computed WCAG contrast, render-blocking resources, unsized media, script weight, theme and motion queries), findability (landmarks, skip link, on-site search, breadcrumb, headings, internal links).

Exclusive and shared capabilities

One capability is graded on one board; every other board references it. The fleet duplicate census (nx_rivalcensus dupes, on the fleetdupes clock row) reads every board's matrix and names each capability graded as a row on two or more boards, with a home derived from evidence: rung when exactly one board's plan contracts the symbol (that board is starred), gates when no plan contracts it and exactly one board's executed gate map runs the organ's gate (that board is plussed), ambiguous when several boards carry the deciding evidence (a decision for their seats), and none when no evidence decides it, with the reason beside it: unmapped (no board of the duplicate declares a gates map; declare the maps) or unproven (a map exists and runs none of the organ's gates; gate the organ on its proving board, or declare it a shared library by policy). A home elsewhere means this board should carry an @xrow reference to the home board's row rather than a graded row of its own; a home here means the other boards should. The table is this board's slice of one estate-wide census: the shape is shared, the rows are the board's.

This board grades 29 capabilities: 28 exclusive to it and 1 shared with other boards. Shared rows on this page: 1 = home here 0 + home elsewhere 0 + ambiguous 0 + undecided 1 + refused 0 (partition 1); undecided = unmapped 0 + unproven 1 + unevidenced 0; homonyms 1; since the previous census: new 0, resolved 0. Census FRESH age_s=6650.

CapabilityOrganBoards grading itHomeRuleEvidenceStanding on this board
main-browser:runtime/_hdl_build/nx_uiq_perf.nx, graphviz:runtime/_hdl_build/nx_eco_graph_forest.nx, graphviz:runtime/_hdl_build/nx_eco_graph_png.nx, graphviz:runtime/_hdl_build/nx_eco_graph_forest.nx, graphviz:runtime/_hdl_build/nx_eco_graph_wiki.nx, familyatlas:runtime/_hdl_build/nx_eco_graph_png.nx, familyatlas:runtime/_hdl_build/nx_eco_graph_card.nx, ecosysdesign:runtime/_hdl_build/nx_eco_graph_arch.nx, typography:runtime/nx_font_ttf_emit.nx, koikatsu:runtime/_hdl_build/nx_retarget_emit.nx, pmdash:runtime/nx_dr_ocm_cli.nx, failmodes:runtime/nx_compare_refs_gate.nx, ecosystem:runtime/nx_compare_rank_fleet.nx, gen:runtime/_hdl_build/nx_gen_orchestrator_daemon.nx, capregistry:runtime/nx_catalog.nx, capregistry:runtime/_hdl_build/nx_coe_intoto.nx, capregistry:runtime/nx_toolreg_reconcile.nx, capregistry:runtime/nx_capsweep.nx, datavis:runtime/_hdl_build/nx_chartlay_gate.nx, speech:runtime/nx_voice_eval.nx—homonym-homonym
db_open_countnx_debt.nxpmdash, autodev—noneunprovenundecided

Gaps from the record — what the estate does that no board carries

The record census (nx_goalmap record) reads the invoked-tool population and every plan queue row and files each organ or directive that NO matrix, plan or gates row names. A row here is a callout the boards missed: adjudicate it onto a board or declare it infrastructure. Census state STALE (age 1395755 s), sources read 4 of 7 declared — a BLIND census is a FLOOR: unread sources can only add rows.

kindnameboardsourceevidence
directivenx_depbenchpmdashplan-queuerung=PR13

rows shown 1|this board's directives 1|estate-wide un-boarded organs 452 (listed in full on /compare/ecosystem)|census rows 639|malformed 0 (counted, never rendered)

References

Beyond a link list. Every reference below resolves twice — the publisher's copy and, where banked, the estate's own non-rottable library mirror with a content pin — and carries its evidence class plus the exact claim on this page it grounds. Keyed marks like [key] in the matrix notes jump here. A dash means honestly absent, never assumed.
  1. [wsjf-safe] Scaled Agile Inc. Weighted Shortest Job First (WSJF): priority = cost of delay / job duration; cost of delay = user-business value + time criticality + risk reduction/opportunity enablement. SAFe Lean Portfolio Management extended guidance. Accessed 2026-08. publisher · accessed 2026-08-18 · published-standardGrounds: The CoD and enablement legs of nx_compare_rank: time-criticality is measured as the fraction of rivals already leading; enablement is counted from the dependency graph -- WSJF's three CoD components, each derived from board data instead of scored by hand.
  2. [realoptions-rd] Real-options R&D portfolio valuation with multi-project dependencies (IEEE OptFolio-class decision-support model; Blau, Pekny, Varma, Bunch on portfolios under endogenous uncertainty; fuzzy real-options selection). publisher · accessed 2026-08-18 · published-paperGrounds: The option leg: an exceed-lane rung no rival holds is valued as a compound option, one plus the downstream rungs it unlocks, replacing a chosen constant. Also names what is NOT yet modelled: per-rung success probability, which waits on PR7 actuals.
  3. [portfolio-ip] Integer-programming portfolio selection under budget and capacity constraints (binary knapsack, multi-constraint) and decision-tree sequencing under conditional dependencies -- quantitative portfolio methods survey. publisher · accessed 2026-08-18 · vendor-docGrounds: nx_dr_ocm's budget-aware greedy is the bounded-effort stand-in for the knapsack optimum; the critical-path stage is decision-tree sequencing under the version ladder.
  4. [roadmap-2026] Engineering roadmap practice 2026: weighted scoring over business impact, technical risk, debt-reduction value and urgency (cost of delay); AI-assisted delivery projection from historical cycle data; dependency mapping at scale. publisher · accessed 2026-08-18 · vendor-docGrounds: The Aug-2026 practice bar the ranker meets on urgency and dependency, and names as owed on historical-cycle projection (PR7 estimates-learn).
  5. [coscientist] Google Research and DeepMind. Accelerating scientific breakthroughs with an AI co-scientist: a Gemini multi-agent system (Generation, Reflection, Ranking, Evolution, Proximity, Meta-review) that generates, tournament-ranks and evolves hypotheses; published in Nature May 2026; explicitly a collaborator, not autonomous. publisher · read in our library knowledge/fetched/cmp_nap_coscientist.html · pin hfcaf4c626e9e5c7fe09ce319ac5b0e78c99b4d306734a61466db18b70038d199 · accessed 2026-08-27 · vendor-docGrounds: NAP: proposal tournament before build
  6. [alphaevolve] Google DeepMind. AlphaEvolve: a Gemini-powered coding agent that evolves whole programs against AUTOMATED EVALUATORS in an evolutionary loop; production wins across data-centre scheduling, kernels and mathematics; generally available on Google Cloud in 2026. publisher · read in our library knowledge/fetched/cmp_nap_alphaevolve.html · pin h0b69c4bb6863890be56891b1261a24722210bc0643c3efe6e8609877b1ae0e7b · accessed 2026-08-27 · vendor-docGrounds: NAP: evaluator-driven candidate evolution against the gate fleet
  7. [aiscinature] Sakana AI. The AI Scientist in Nature: the first AI system whose end-to-end generated papers passed human peer review; the full loop is hypothesis, experiment, analysis, manuscript. publisher · read in our library knowledge/fetched/cmp_nap_aisci_nature.html · pin hf994d52f02884d149b23f362fd13798d1f1d78ce1c3f5a5740f6df333dd9574c · accessed 2026-08-27 · vendor-docGrounds: NAP: the published project loop
  8. [aisciv2] Yamada, Lange et al. The AI Scientist-v2: Workshop-Level Automated Scientific Discovery via Agentic Tree Search. arXiv 2504.08066. publisher · read in our library knowledge/fetched/cmp_nap_aisciv2.html · pin hdfb82cc514527492adc778ed31016ca09c25a9bb8befbe5dfaaad38c053e16c8 · accessed 2026-08-27 · published-paperGrounds: NAP: the published project loop
  9. [arxiv_prio_2026_09] arXiv API listing for prioritization with roadmap, cost of delay, requirements prioritization or feature prioritization, sorted by submission date, 25 entries read by title on 2026-09-21; newest relevant entry Enhancing User-Feedback Driven Requirements Prioritization (2603.28677v2, revised 2026-08-02): interconnecting requirements through requires relations outperforms treating them as independent on 94 real instances; no September 2026 entry publisher · read in our library knowledge/fetched/cmp_projectmgmt_arxiv_prioritization_2026-09.xml · pin h634775c7d8cc19d97bf8749122ceb7e31308a2093320ba51afaf0dc5c9633e42 · accessed 2026-09-21 · mirrored-indexGrounds: The ranker respects every declared dependency edge
  10. [safe_wsjf] Scaled Agile Framework, Weighted Shortest Job First (WSJF): a prioritization model used to sequence work for maximum economic benefit, estimated as the relative cost of delay divided by the relative job duration, with priorities continuously updated in a flow-based system; canonical page read 2026-09-21 publisher · read in our library knowledge/fetched/cmp_pmdash_safe_wsjf_canon.html · pin h883d66d57ea452ee61e19adac061479a4b928a8eee31a9688a5b542d6fd25263 · accessed 2026-09-21 · vendor-docGrounds: The ranker respects every declared dependency edge
  11. [arxiv_prio_2026_09_23] arXiv API listing for prioritization with roadmap, cost of delay, requirements prioritization or feature prioritization, sorted by submission date, re-read 2026-09-23 from a fresh mirror: the same 25 entries as the automated scan of 2026-09-22; its one September 2026 entry (2609.23780 Falling Trees) is interpretable clinical risk prioritization, a homonym of the subject; newest relevant entry still 2603.28677v2 (revised 2026-08-02) publisher · read in our library knowledge/fetched/cmp_pmdash_arxiv_prio_2026-09-23.xml · pin hc9a0b0f6e88995ea49e7e62ae4fc130a586e03d74b2a19d17e9cedfabe594eae · accessed 2026-09-23 · mirrored-indexGrounds: The ranker respects every declared dependency edge
  12. [linear_triage_intelligence_2026_09_23] Linear, Triage Intelligence documentation (read 2026-09-23) publisher · read in our library knowledge/fetched/cmp_pmdash_linear_triage_intelligence_2026-09-23.html · pin hb513aeb7b82f50cd7cb7dec7ff9ef5f47d5618cf8b91d5fa48d9b051a91af833 · accessed 2026-09-23 · vendor-docGrounds: PM: a request that is many requests reaches every board it asks for
  13. [jira_ai_2026_09_23] Atlassian, Jira AI (Rovo) product page (read 2026-09-23) publisher · read in our library knowledge/fetched/cmp_pmdash_jira_ai_2026-09-23.html · pin h1391727f6e82476af35c84ca23156d8dc2acabee53c2484eddcacaaeb1a6c9c4 · accessed 2026-09-23 · vendor-docGrounds: PM: a request that is many requests reaches every board it asks for
  14. [asana_ai_2026_09_23] Asana, Asana AI product page (read 2026-09-23) publisher · read in our library knowledge/fetched/cmp_pmdash_asana_ai_2026-09-23.html · pin hab3568ce1e98cba19c135740a095f591c50576bab66f976c08634716f498dcb2 · accessed 2026-09-23 · vendor-docGrounds: PM: a request that is many requests reaches every board it asks for
  15. [monday_ai_2026_09_23] monday.com, AI product page (read 2026-09-23) publisher · read in our library knowledge/fetched/cmp_pmdash_monday_ai_2026-09-23.html · pin h3c5a8245b7df33b2c2a7e94e044bbb1d5ca30240ccc46645c5629fa7353fae9e · accessed 2026-09-23 · vendor-docGrounds: PM: a request that is many requests reaches every board it asks for

generated by nx_swcompare_matrix (sovereign NishiLang organ) from knowledge/compare/pmdash.matrix · source checks show implementation presence; runtime and user-outcome evidence are reported separately · JavaScript supports page controls