Skip to content

docs(classview-bitmask + §1.5): class-conditioned shape, simple rules#140

Merged
AdaWorldAPI merged 4 commits into
mainfrom
claude/odoo-rs-transcode-lf8ya5
Jun 29, 2026
Merged

docs(classview-bitmask + §1.5): class-conditioned shape, simple rules#140
AdaWorldAPI merged 4 commits into
mainfrom
claude/odoo-rs-transcode-lf8ya5

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Jun 29, 2026

Copy link
Copy Markdown
Owner

Extends the Redmine-ERB ClassView bitmask doc (PR #139) and the transpile §1.5 doc with the operator's 2026-06-29 refinements — tested in ruff #36 / lance-graph #621.

What

  • CLASSVIEW-FIELDVIEW-ASKAMA-BITMASK.md — "Wide classes": the u64 mask is one bucket; a wide class (Odoo account.move ~109 fields) widens, and the selected() loop stays bucket-agnostic (idx/64, idx%64). The width is class-conditioned, not a locked [u64;4] "quadruplet" (that was a misread of the 3×4 GUID shape): the shape is mapped from the class's inherited format and selected by classid — one of CascadeShape 6×2(Rails)/4×3(other frameworks)/3×4(GUID), via from_levels(d). The only fixed bound is the byte-cardinality god-object signal (< 256 clean, ≥ 256 split).
  • "Simple rules": (1) if it's a template, it's probably a ClassView; (2) deduplicate routes — N field-subset routes = one templated render with N masks; (3) < 256 clean, ≥ 256 god-object split signal — never widen/lock a mask, never restate the shape (it's inherited, classid-selected).
  • OGAR-TRANSPILE-SUBSTRATE.md §1.5a + status: shapes table reframed to Rails 6×2 / other frameworks 4×3 / GUID 3×4; 4×3 is legitimate per-class (its group_of divide is a per-class cost, not a prohibition); is_byte_aligned/shift/ALIGNED = shift-vs-divide distinction, not a reject gate.
  • Cross-refs updated off the removed field_mask_buckets/FIELD_MASK_MAX_BUCKETS API → CascadeShape::from_levels + the byte-cardinality cap.

History: the first commit used the locked-quadruplet framing; the operator veto recast it to class-conditioned. Net state is above.

Doc-only. Mirrors lance-graph #621 + ruff #36.

🤖 Generated with Claude Code

https://claude.ai/code

Extend the Redmine-ERB ClassView bitmask doc (PR #139) with the operator's
2026-06-29 refinements, now tested in ruff:

- 'Wide classes — the quadruplet and bucket chaining': the u64 mask is ONE
  bucket (64 fields); a wide class (Odoo account.move ~109 fields) chains up to
  4 buckets = the [u64; 4] quadruplet = 256, and the selected() loop is
  bucket-agnostic (idx/64, idx%64). Clean separation overflow automation; > 256
  is a god object that splits into a second ClassView, never a wider mask.
  Pinned + tested in ruff_spo_address::soc (FIELD_MASK_CAP = 256,
  field_mask_buckets, 109-field -> Duplication). lance-graph FieldMask is the
  eventual matching expansion.
- 'Simple rules': if it's a template it's probably a ClassView; deduplicate
  routes (N field-subset routes = one templated render with N masks); < 256 is
  clean, >= 256 is the god-object SoC split signal.
- Cross-refs to ruff_spo_address::soc and canonical_node::GUIDS_PER_NODE (the
  node-level twin of the same clean/SoC-over-packed doctrine).

Co-Authored-By: Claude <noreply@anthropic.com>

@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: 848c7359af

ℹ️ 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".

Comment thread docs/CLASSVIEW-FIELDVIEW-ASKAMA-BITMASK.md Outdated
Operator small veto (2026-06-29): the ClassView shape is mapped from the class's
inherited format and selected by classid — don't restate or LOCK it. 'Quadruplet'
was a misread of the 3×4 GUID shape; the shapes are per-class: Rails 6×2, other
frameworks 4×3, GUID 3×4. So 4×3 is legitimate per-class, not a 'worst case'.

- CLASSVIEW-FIELDVIEW-ASKAMA-BITMASK.md: 'Wide classes' recast from '[u64;4]
  quadruplet, locked 256' to class-conditioned shape (CascadeShape::from_levels,
  classid-selected); the only fixed bound is the byte-cardinality god-object
  signal (< 256 clean, >= 256 split). Simple-rules + summary + cross-refs updated
  off the removed field_mask_buckets/FIELD_MASK_MAX_BUCKETS API.
- OGAR-TRANSPILE-SUBSTRATE.md §1.5a + status: shapes table reframed Rails 6×2 /
  other frameworks 4×3 / GUID 3×4; 4×3 legitimate (its divide is a per-class
  cost, not a prohibition); is_byte_aligned/shift/ALIGNED = shift-vs-divide
  distinction, not a reject gate. Mirrors lance-graph #621 + ruff #36.

Co-Authored-By: Claude <noreply@anthropic.com>
@AdaWorldAPI AdaWorldAPI changed the title docs(classview-bitmask): quadruplet + bucket chaining + the simple rules docs(classview-bitmask + §1.5): class-conditioned shape, simple rules Jun 29, 2026
claude added 2 commits June 29, 2026 21:20
…ng lane

Operator scoping (2026-06-29): helix + CAM-PQ are a separate G2×48bit lane (the
two 48-bit chains / CAM-PQ 6×256 path code) for location (helix; q2/helix) and
centroid (CAM-PQ; lance-graph/DeepNSM) — NOT required by transpile, never dragged
into ClassView shape selection. The DeepNSM COCA 4096-word English-vocabulary CAM
index codebook is a likely future G2×48bit consumer ('earn its keep'), not a
transpile dependency. §1.5a note added. Doc-only.

Co-Authored-By: Claude <noreply@anthropic.com>
…nherited expansion

Operator doctrines (2026-06-29), neither a blocker:
- Clean => expansion is classid-inherited (no global change; class-conditioned
  CascadeShape). Expansion is never a transpile blocker.
- Bulk raw data → a separate Lance table, not the 480-byte SoA value: a payload
  that won't fit even compressed (~3.2 Gbp genome; FMA/BodyParts3D anatomy mesh
  4M vertices/6M triangles) is referenced by key/classid, out-of-line. The mesh
  baked cleanly as a SoA release. Transpile mints the structured class; the bulk
  payload is a table reference, not a transpile dependency. Doc-only.

Co-Authored-By: Claude <noreply@anthropic.com>
@AdaWorldAPI AdaWorldAPI merged commit 328ea31 into main Jun 29, 2026
1 check passed
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