-
Notifications
You must be signed in to change notification settings - Fork 0
plan(weather): POC v2 — jc-gated representation → hardware → prediction #915
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,69 @@ | ||
| ## 2026-08-10 — E-JC-AND-NDARRAY-BOTH-SHIP-A-RELIABILITY-BATTERY-WITH-DIFFERENT-DEGENERATE-CONTRACTS-1 | ||
|
|
||
| **Status:** FINDING `[G]` (source-verified 2026-08-10, both files read). | ||
|
|
||
| `pearson` / `spearman` / `cronbach_alpha` / `icc` exist in **BOTH** | ||
| `jc::reliability` (`crates/jc/src/reliability.rs`) and `ndarray::hpc::reliability` | ||
| (`ndarray/src/hpc/reliability.rs`) — with **different degenerate-input contracts**: | ||
|
|
||
| | | `jc` | `ndarray::hpc` | | ||
| |---|---|---| | ||
| | signature | `-> Option<f64>` | `-> f64` | | ||
| | degenerate (n<2 / zero variance) | `None` | **`0.0`** | | ||
| | icc | `icc(ratings, IccForm)` | `icc_a1(ratings)` | | ||
| | cronbach input | `&[Vec<f64>]` | `&[&[f64]]` | | ||
|
|
||
| **Why this matters and is not cosmetic:** ρ = 0.0 is *also a legitimate measured | ||
| value*. The ndarray form therefore cannot distinguish "no correlation" from | ||
| "undefined" — a zero-variance window (entirely possible in a real field: a constant | ||
| patch, a saturated code lane) silently enters an aggregate as a real 0.0 and drags | ||
| the mean down, where `jc` would have returned `None` and forced the caller to decide. | ||
| This is the same shape as the vacuous-assertion family: a value that cannot fail | ||
| loudly. | ||
|
|
||
| **Ruling:** `jc` is the authority (operator-named "the lance-graph JC crate"); the | ||
| ndarray copy is the SIMD-side mirror. **Every reliability number in the weather POC | ||
| is computed with `jc`.** Their agreement over identical non-degenerate inputs is | ||
| itself a probe (plan `weather-substrate-poc-v2.md`, D-WXB-4), paired with an | ||
| assertion that the degenerate case is *reported*, never folded. | ||
|
Comment on lines
+13
to
+28
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
rg -n -C3 'icc_a1|IccForm|D-WXB-4|D-WXA-5' \
crates/jc/src/reliability.rs \
ndarray/src/hpc/reliability.rs \
.claude/plans/weather-substrate-poc-v2.md \
.claude/board/INTEGRATION_PLANS.md \
.claude/board/EPIPHANIES.mdRepository: AdaWorldAPI/lance-graph Length of output: 19194 🏁 Script executed: #!/bin/bash
set -euo pipefail
printf '%s\n' '== candidate reliability files =='
git ls-files | rg '(^|/)reliability\.rs$|weather-substrate-poc-v2\.md$|\.claude/board/(EPIPHANIES|INTEGRATION_PLANS)\.md$'
printf '%s\n' '== relevant symbols and plan references =='
rg -n -C4 'icc_a1|IccForm|D-WXB-4|reliability' \
$(git ls-files | rg '(^|/)reliability\.rs$|weather-substrate-poc-v2\.md$|\.claude/board/(EPIPHANIES|INTEGRATION_PLANS)\.md$') \
2>/dev/null || trueRepository: AdaWorldAPI/lance-graph Length of output: 50382 🏁 Script executed: #!/bin/bash
set -euo pipefail
printf '%s\n' '== candidate reliability files =='
git ls-files | rg '(^|/)reliability\.rs$|weather-substrate-poc-v2\.md$|\.claude/board/(EPIPHANIES|INTEGRATION_PLANS)\.md$'
printf '%s\n' '== relevant symbols and plan references =='
files=$(git ls-files | rg '(^|/)reliability\.rs$|weather-substrate-poc-v2\.md$|\.claude/board/(EPIPHANIES|INTEGRATION_PLANS)\.md$')
if [ -n "$files" ]; then
rg -n -C4 'icc_a1|IccForm|D-WXB-4|reliability' $files || true
fiRepository: AdaWorldAPI/lance-graph Length of output: 50382 🏁 Script executed: #!/bin/bash
set -euo pipefail
printf '%s\n' '== exact weather contract =='
sed -n '140,210p' .claude/plans/weather-substrate-poc-v2.md
printf '%s\n' '== board entry =='
sed -n '1,35p' .claude/board/EPIPHANIES.md
printf '%s\n' '== tracked ndarray paths and executable comparison references =='
git ls-files | rg '^ndarray/' || true
rg -n 'icc_a1|IccForm::Icc2_1|IccForm::Icc3_1|D-WXB-4' \
--glob '!*.md' --glob '*.rs' . || trueRepository: AdaWorldAPI/lance-graph Length of output: 10838 🏁 Script executed: #!/bin/bash
set -euo pipefail
printf '%s\n' '== exact weather contract =='
sed -n '140,210p' .claude/plans/weather-substrate-poc-v2.md
printf '%s\n' '== board entry =='
sed -n '1,35p' .claude/board/EPIPHANIES.md
printf '%s\n' '== tracked ndarray paths and executable comparison references =='
git ls-files | rg '^ndarray/' || true
rg -n 'icc_a1|IccForm::Icc2_1|IccForm::Icc3_1|D-WXB-4' \
--glob '!*.md' --glob '*.rs' . || trueRepository: AdaWorldAPI/lance-graph Length of output: 10838 🏁 Script executed: #!/bin/bash
set -euo pipefail
printf '%s\n' '== ndarray dependency declarations =='
rg -n -C5 'ndarray|lance-graph-arm-discovery|perturbation-sim' \
--glob 'Cargo.toml' --glob 'Cargo.lock' .
printf '%s\n' '== relevant call sites =='
sed -n '35,50p;405,420p' crates/lance-graph-arm-discovery/examples/meta_awareness_probe.rs
sed -n '50,95p' crates/perturbation-sim/src/stats.rsRepository: AdaWorldAPI/lance-graph Length of output: 50380 🌐 Web query:
💡 Result: No indexed results were found for Specify the
🤖 Prompt for AI Agents |
||
|
|
||
| Cross-ref: `.claude/plans/weather-substrate-poc-v2.md` §3; `jc` = "Jirak-Cartan: | ||
| five-pillar proof-in-code" (zero external deps; Pillar 11 `hambly_lyons` is | ||
| sigker-gated); `E-VACUOUS-ASSERTION-IS-THE-HOUSE-STYLE-1`. | ||
|
Comment on lines
+30
to
+32
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- target file ---'
nl -ba .claude/board/EPIPHANIES.md | sed -n '1,90p'
printf '%s\n' '--- sigker references ---'
rg -n -i --hidden --glob '!.git' 'sigker|hambly_lyons|weather-substrate-poc-v2|jc::' .
printf '%s\n' '--- board file status ---'
git status --short -- .claude/board/EPIPHANIES.mdRepository: AdaWorldAPI/lance-graph Length of output: 50379 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- target entry ---'
sed -n '1,42p' .claude/board/EPIPHANIES.md
printf '%s\n' '--- jc manifest and implementation references ---'
sed -n '1,140p' crates/jc/Cargo.toml
rg -n -C 4 'hambly[-_]lyons|hambly-lyons|sigker' crates/jc/Cargo.toml crates/jc/src/hambly_lyons.rs crates/jc/src/lib.rs
printf '%s\n' '--- sigker gate documentation ---'
sed -n '88,116p' .claude/knowledge/ndarray-vertical-simd-alien-magic.md
sed -n '242,260p' .claude/v3/soa_layout/le-contract.md
printf '%s\n' '--- referenced plan section ---'
rg -n -C 8 '^##? .*3|^### .*3|§3|D-WXB-4' .claude/plans/weather-substrate-poc-v2.mdRepository: AdaWorldAPI/lance-graph Length of output: 25995 Document the Link 🤖 Prompt for AI Agents |
||
|
|
||
| ## 2026-08-10 — E-THE-DOCUMENTED-PROXY-BYPASS-IS-FOR-PUSH-DENIALS-NOT-CLONE-AUTH-1 | ||
|
|
||
| **Status:** FINDING `[G]` (reproduced and resolved in-session). | ||
|
|
||
| Cloning `AdaWorldAPI/{ecmwf-opendata,weatherbench2,arco-era5}` failed with | ||
| `fatal: could not read Username for 'https://github.com'` — which reads exactly like | ||
| a repo-scope denial, and two independent signals reinforced that misreading: | ||
|
|
||
| 1. `mcp__claude-code-remote__{list_repos,add_repo}` genuinely are **not exposed** in | ||
| this session (confirmed with two different ToolSearch queries), so "the repo is | ||
| out of scope" was the available hypothesis; and | ||
| 2. this workspace's own documented lesson (tesseract-rs `CLAUDE.md`, GitHub access | ||
| matrix) says *"a 403 here is USUALLY THE PROXY — retest with the proxy bypassed"*, | ||
| which sent the diagnosis further the wrong way. Bypassing the proxy failed too. | ||
|
|
||
| **Root cause: self-inflicted.** The agent proxy **already injects credentials** for | ||
| these repos. Passing an explicit `-c http.extraHeader="Authorization: Bearer $TOKEN"` | ||
| **overrode** the proxy's injected credential with a form GitHub's git endpoint | ||
| rejects. Plain `git clone`, proxy ON, **no explicit header**, works for all three. | ||
|
|
||
| **What broke the tie:** a REST probe — `HTTP 200` on all four repos | ||
| (`lance-graph` + the three new) proved the token had access, so the failure had to be | ||
| the *method*, not the scope. | ||
|
Comment on lines
+54
to
+56
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- diff stat ---'
git diff --stat
printf '%s\n' '--- target file ---'
cat -n .claude/board/EPIPHANIES.md | sed -n '1,80p'
printf '%s\n' '--- target diff ---'
git diff -- .claude/board/EPIPHANIES.md
printf '%s\n' '--- recent file history ---'
git log -3 --oneline -- .claude/board/EPIPHANIES.mdRepository: AdaWorldAPI/lance-graph Length of output: 7115 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- commit summary ---'
git show --stat --oneline --decorate b51b0ee4
printf '%s\n' '--- entry-introducing commits ---'
git log --oneline --follow -- .claude/board/EPIPHANIES.md | head -8
printf '%s\n' '--- commit diff for board file ---'
git show --format=fuller --find-renames b51b0ee4 -- .claude/board/EPIPHANIES.md | sed -n '1,180p'
printf '%s\n' '--- GitHub access documentation references ---'
rg -n -i --glob '*.md' --glob 'CLAUDE.md' 'REST probe|HTTP 200|git clone|clone auth|Authorization: Bearer|GitHub access matrix|proxy' . | head -120Repository: AdaWorldAPI/lance-graph Length of output: 12629 🌐 Web query:
💡 Result: GitHub distinguishes between authenticating for REST API requests and authenticating for HTTPS Git operations, though both prioritize the use of tokens over account passwords [1][2]. REST API Authorization To authenticate requests to the GitHub REST API, you must provide an authentication token via the Authorization header [3][4]. - Header Format: Use the format Authorization: Bearer YOUR-TOKEN or Authorization: token YOUR-TOKEN [4]. - Token Types: Supported tokens include Personal Access Tokens (PATs—fine-grained are recommended over classic), GitHub App installation access tokens, and the built-in GITHUB_TOKEN available within GitHub Actions workflows [1][5][3]. - Permissions: Access is controlled by the scopes or permissions assigned to the token [1][6]. API responses may include the X-Accepted-GitHub-Permissions header to help troubleshoot missing permissions [7]. HTTPS Git Clone Authentication Authentication for Git operations (clone, fetch, push) over HTTPS requires a valid credential—typically a token—used in place of your account password [2][8]. - Credential Input: When prompted by Git, enter your username and your PAT (or other token) as the password [2][9]. - URL Inclusion: You can embed credentials directly into the remote URL (e.g., https://username:token@github.com/org/repo.git), though using a credential helper is more secure [10][11][2]. - Credential Helpers: GitHub strongly recommends using tools like the Git Credential Manager (GCM) or GitHub CLI (gh), which manage these credentials securely, handle token caching, and automate the authentication flow [2][12]. - App Tokens: When using installation tokens for automated processes, use x-access-token as the username [10][11]. Key Differences While both methods rely on tokens, the implementation differs: REST API requests require an explicit header in the HTTP request [3], whereas HTTPS Git authentication is managed through the standard Git credential system (or embedded in the URL) [2][12]. In both cases, using account passwords for authentication has been deprecated in favor of secure tokens [2]. Citations:
Separate API access from Git clone access. Change “proved the token had access” to “proved API access to the repositories.” Keep the successful plain clone as the Git transport evidence because the proxy-injected credential and explicit REST token may follow different authentication paths. 🤖 Prompt for AI Agents |
||
|
|
||
| **Rule:** the documented "bypass the proxy" reflex is for **push denials**; for | ||
| **clone auth**, adding an explicit `Authorization` header is the bug. Never hand-roll | ||
| credentials for a transport that already carries them. (Token discipline held | ||
| throughout — expanded inline via `${GH_TOKEN//\"/}`, never printed, and | ||
| `.git/config` verified free of credentials after cloning.) | ||
|
|
||
|
Comment on lines
+58
to
+63
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔒 Security & Privacy | 🟠 Major | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- board file ---'
cat -n .claude/board/EPIPHANIES.md | sed -n '1,90p'
printf '%s\n' '--- relevant token references ---'
rg -n -C 4 '\$\{GH_TOKEN|GH_TOKEN|credential helper|Authorization|clone|proxy' .claude/board/EPIPHANIES.md .claude 2>/dev/null || true
printf '%s\n' '--- repository status ---'
git status --short
printf '%s\n' '--- recent board commits ---'
git log -5 --oneline -- .claude/board/EPIPHANIES.mdRepository: AdaWorldAPI/lance-graph Length of output: 50380 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- target lines ---'
sed -n '1,75p' .claude/board/EPIPHANIES.md
printf '%s\n' '--- exact token uses ---'
rg -n -C 6 --max-count 20 '\$\{GH_TOKEN|GH_TOKEN//|Authorization|credential helper' .claude/board/EPIPHANIES.md
printf '%s\n' '--- recent file history ---'
git log -5 --format='%h %ad %s' --date=short -- .claude/board/EPIPHANIES.mdRepository: AdaWorldAPI/lance-graph Length of output: 6925 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- commits that added the target entries ---'
git log -8 --format='%H %s' -- .claude/board/EPIPHANIES.md
printf '%s\n' '--- token references in tracked files ---'
rg -n -C 3 --glob '!*.lock' --glob '!target/**' 'GH_TOKEN//|GH_TOKEN|http\.extraHeader|Authorization: Bearer' .
printf '%s\n' '--- Bash expansion and argv probe ---'
GH_TOKEN='prefix"middle"suffix'
python3 - "$GH_TOKEN" "${GH_TOKEN//\"/}" <<'PY'
import sys
print("original_argument:", repr(sys.argv[1]))
print("expanded_argument:", repr(sys.argv[2]))
print("quote_removed:", '"' not in sys.argv[2])
PYRepository: AdaWorldAPI/lance-graph Length of output: 9500 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- exact changed lines ---'
git show --format= --unified=3 b51b0ee4072eb41e9b4a9d117434c864cb0c84c7 -- .claude/board/EPIPHANIES.md \
| rg -n -C 8 'GH_TOKEN|extraHeader|clone auth|Authorization'
printf '%s\n' '--- hidden-file token references ---'
rg --hidden -n -C 3 --glob '!.git/**' 'GH_TOKEN//|GH_TOKEN|http\.extraHeader|Authorization: Bearer' .claude .github 2>/dev/null || true
printf '%s\n' '--- append-only guidance ---'
rg -n -C 4 'APPEND.?ONLY|append-only|board' CLAUDE.md .claude/CLAUDE.md .claude/board 2>/dev/null | head -120Repository: AdaWorldAPI/lance-graph Length of output: 28279 Append a superseding correction for the token-handling detail. 🤖 Prompt for AI Agents |
||
| Cross-ref: tesseract-rs `CLAUDE.md` § GitHub access matrix (the push-side half, which | ||
| remains correct). | ||
|
|
||
| ## 2026-08-08 — E-THREE-NAMED-PROBES-ARE-ONE-MEASUREMENT — F-1, helix's unrun fidelity gate, and the weather-encoder question are the SAME probe | ||
|
|
||
| **Status:** FINDING `[G]` on the identity (three docs, one measurement shape), `[H]` on the outcome (unrun). Surfaced by the 5-agent recon behind `.claude/plans/weather-substrate-poc-v1.md`. | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 50382
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 8581
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 50379
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 9983
🌐 Web query:
site:github.com/AdaWorldAPI/ndarray "pub fn cronbach_alpha" reliability.rs💡 Result:
No matching GitHub result was found for:
site:github.com/AdaWorldAPI/ndarray "pub fn cronbach_alpha" reliability.rsThe repository, file, or function may be private, renamed, or not indexed by search.
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 8963
🏁 Script executed:
Repository: AdaWorldAPI/lance-graph
Length of output: 524
Document the complete Cronbach α edge-case contract.
jc::cronbach_alphareturnsNonefor empty or mismatched rows, non-finite inputs, and non-finite results.ndarray::hpc::cronbach_alphareturns0.0for empty or mismatched rows, but can returnNaNfor non-finite inputs and-∞for finite overflowing inputs. Add these exact behaviors to the matrix and reject non-finite ndarray results before aggregation.🤖 Prompt for AI Agents