Skip to content

board: post-merge arc + state entry for #884 - #885

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/x265-x266-plans-review-h9osnl
Aug 4, 2026
Merged

board: post-merge arc + state entry for #884#885
AdaWorldAPI merged 1 commit into
mainfrom
claude/x265-x266-plans-review-h9osnl

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Aug 4, 2026

Copy link
Copy Markdown
Owner

Board prose only. No code, no runtime behaviour. One commit, two files.

Why this exists

#884 was the post-merge hygiene PR for #881/#882/#883 — and it merged without its own arc entry, reproducing one level up exactly the gap it was written to close. Writing the hygiene PR does not discharge the rule for the hygiene PR. That is noted inside the entry itself, so the next session reads the lesson rather than the third instance of it.

What the entry records

The C1 audit finding — two of C2's three renames are the same computation already in jc, one is a genuine gap:

φ = Pearson r on two binary variables → jc::reliability::pearson already computes it. A named wrapper + the marginal-capped-ceiling caveat are the only new surface; the arithmetic is not re-implemented.
KR-20 = Cronbach's α on dichotomous items → cronbach_alpha is the right function; naming + caveat only.
κ absent, and NOT a renamed ICC — a different estimator. The real gap, and the one that blocks D3's fusion falsifier.

Effect size = the r-family — R, R², η² (erklärte Varianz), φ. Cohen's d is explicitly out, calculated separately if a mean-difference contrast is ever wanted. The t-test (t/df/p) is in scope as the significance companion to η², not a d-family route: effect size is read off η²/R².

ADDITIVE ONLY, with exactly one carve-outpearson / spearman / cronbach_alpha / icc keep their arithmetic, signature and semantics; new estimators land in a new module beside them, and any diff changing an existing jc statistic is an automatic reject. The sole permitted edit to an existing file is visibility only: widening reliability.rs's private helpers (mean / all_finite / average_ranks / pop_var) to pub(crate) plus the pub mod line, so the new module reuses them instead of growing a second source of truth. No body change, no signature change, no incidental cleanup.

Also carried forward: the transport-vs-engine separation from #883 (MulAdvance / drive_mul_advance are legacy wrappers; gate_decision_i4 is independent and not deprecated; NARS recipes and the rung ladder are separate and untouched), and that the spawn inventory carries no architectural legitimacy — deletion-impact evidence and a removal work-list only.

Test plan

Prose only — nothing to regress. Append-only respected: both entries prepend. D-KIA-C1b remains Queued (this is scope, not code).

🤖 Generated with Claude Code

https://claude.ai/code/session_01K3RyLEbuNSHxxB3NTTrGki


Generated by Claude Code

Summary by CodeRabbit

  • Documentation
    • Added documentation defining the scope of D-KIA-C1b statistics.
    • Clarified supported reliability, effect-size, and significance calculations.
    • Documented that certain estimators remain unavailable and that existing statistical behavior is preserved.

#884 was itself the post-merge hygiene PR for #881/#882/#883 — and it merged
without its own arc entry, reproducing one level up exactly the gap it was
written to close. Writing the hygiene PR does not discharge the rule for the
hygiene PR. Entry added, with that noted in it.

Records what #884 locked:

- The C1 audit finding: phi = pearson-on-binaries and KR-20 =
  alpha-on-dichotomous are the SAME computations already in jc (named wrapper +
  caveat only, arithmetic not re-implemented); kappa is absent and is NOT a
  renamed ICC — the real gap, and the one that blocks D3's fusion falsifier.
- Effect size means the r-family: R, R-squared, eta-squared, phi. Cohen's d
  explicitly out, calculated separately if ever wanted. The t-test is the
  significance companion to eta-squared, not a d-family route.
- ADDITIVE ONLY with one carve-out: existing jc statistics keep their
  arithmetic, signature and semantics; the sole permitted edit to an existing
  file is widening reliability.rs's private helpers to pub(crate) for reuse —
  visibility only.
- The transport-vs-engine separation carried from #883, and that the spawn
  inventory carries no architectural legitimacy.

Board prose only. D-KIA-C1b remains Queued.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K3RyLEbuNSHxxB3NTTrGki
@cursor

cursor Bot commented Aug 4, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_37f7c73f-6353-447f-b402-3185251172ad)

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a14b9b29-1b16-4f8a-a91d-ec518860c82b

📥 Commits

Reviewing files that changed from the base of the PR and between 1e90cef and 772b5e5.

📒 Files selected for processing (2)
  • .claude/board/LATEST_STATE.md
  • .claude/board/PR_ARC_INVENTORY.md
🔥 Files not summarized due to errors (1)
  • .claude/board/PR_ARC_INVENTORY.md: Server error: no LLM provider could handle the message

📝 Walkthrough

Walkthrough

The change adds a dated board entry for PR #884. It defines the D-KIA-C1b statistics scope, records the κ implementation gap, limits effect sizes, and preserves existing reliability behavior.

Changes

D-KIA-C1b planning

Layer / File(s) Summary
Document statistics scope
.claude/board/LATEST_STATE.md
The board entry documents statistic reuse, the unimplemented κ estimator, supported effect sizes, and additive-only compatibility constraints.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: claude

Poem

A rabbit records the stats with care,
Pearson and alpha already there.
Kappa waits beside the gate,
While r-family measures set the state.
Additive rules keep old paths bright.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review August 4, 2026 13:20
@AdaWorldAPI
AdaWorldAPI merged commit 3159087 into main Aug 4, 2026
1 of 2 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 772b5e5593

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".


Board/plan prose only; **no code, no runtime behaviour**. Carried the post-merge arc entries for #881/#882/#883 (see the entry below) and re-scoped the statistics work removed from #883 as its own deliverable, **D-KIA-C1b** (`Queued` — scope, not code).

**C1 audit (read-only).** `jc` is in-tree at `crates/jc/`; `reliability.rs` ships `pearson` / `spearman` / `cronbach_alpha` / `icc(ratings, IccForm)` (`Icc2_1`, `Icc3_1`), and `jirak.rs` gives C4's noise floors a local implementation to cite. Two of C2's three renames are the **same computation**, one is a real gap:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not mark C4's noise-floor calibration as implemented

When C4 is implemented, this statement incorrectly directs the work to an existing local implementation: crates/jc/src/jirak.rs exposes only prove(), which runs a fixed synthetic 16,384-bit Hamming-distance experiment, and provides no reusable bound or significance calibration for the catalog-panel φ/κ/KR-20 statistics required by C4. Treating that probe as satisfying C4 can leave the planned significance statements uncalibrated; record it as background/citation evidence and keep the required reusable calibration work queued.

Useful? React with 👍 / 👎.

AdaWorldAPI pushed a commit that referenced this pull request Aug 4, 2026
#881/#882/#883 merged with no arc entries. #884 closed that gap and merged
without its own. #885 closed THAT gap and merged. An entry for #885 would need
an entry, and so on without end: each step was the rule correctly applied, but
the composition does not terminate.

The recursion was invisible for three links because the rule is stated per-PR
and every single application is locally correct — which is exactly what hides a
divergent chain. Two earlier sessions each wrote the honest local lesson
("writing the hygiene PR does not discharge the rule for the hygiene PR")
without noticing that the lesson, applied uniformly, never bottoms out.

Amendment: a PR whose ENTIRE content is board hygiene for prior PRs — no type,
plan, deliverable, epiphany or code — does not itself generate an arc entry; it
is discharged by the entry it wrote. The test is content, not intent: does the
PR change anything a future session needs the "why" for? Mixed PRs still get
their entry (#884 landed hygiene AND the D-KIA-C1b re-scope; the entry exists
for the re-scope half).

This is a stopping rule, not a loosening. Merging three PRs with no entries at
all remains a violation and the retroactive-hygiene anti-pattern is unchanged;
only the degenerate tail is excluded. Consequence: #885 gets no arc entry,
deliberately, and its absence is not a gap.

Transferable shape recorded: a per-item obligation whose discharge is itself an
item of that kind needs an explicit base case, or it is a recursion with no
bottom. The cheap check is to apply a rule twice to its own output and see
whether the third application says anything new.

Board/doc prose only.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K3RyLEbuNSHxxB3NTTrGki
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants