Skip to content

Sync the manual with the current compiler and model stack - #25

Merged
zhoubot merged 3 commits into
mainfrom
codex/sync-docs-current-toolchain
Jul 31, 2026
Merged

Sync the manual with the current compiler and model stack#25
zhoubot merged 3 commits into
mainfrom
codex/sync-docs-current-toolchain

Conversation

@zhoubot

@zhoubot zhoubot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • remove reader-facing source commit IDs and hash-suffixed benchmark routes
  • regenerate the catalog for 85 variants and 50 implementations, including the latest multi-thread matmul and row-reduction cases
  • replace retired Clang 15/model instructions with the pinned LLVM 23, QEMU-first, LinxCoreModel flow
  • compile-check teaching examples through a docs-owned tile adapter
  • verify the 111-operation intrinsic catalog against canonical v0.57 ISA and encoding state

Verification

  • docs/build.sh (strict MkDocs build and internal links)
  • 113-entry manual verifier, 85 benchmark variants, 19 DeepSeek pages
  • all documentation C++ examples with the pinned LLVM 23 build
  • direct TAdd, TLoad, and TStore compiler smoke cases
  • canonical QEMU-to-LinxCoreModel smoke flow
  • ruff, shellcheck, Python compileall, and all compile.all shell syntax

Current boundary

The one-level catalog is source inventory, not LLVM 23 compile proof: current main still carries the retired -mlxbc option and lacks the include root expected by that make lane. Repository-only TMATMUL_FIXP spellings remain documented as helpers because they are absent from canonical v0.57 and the pinned compiler.

Remove revision-shaped reader provenance and generated route hashes, regenerate source-backed benchmark pages with stable names, and replace stale packaged-toolchain guidance with the pinned LLVM, QEMU, and LinxCoreModel workflow. Compile-check the public examples through a documentation-owned tile adapter and verify the intrinsic catalog against canonical v0.57 state.

Constraint: v0.57 exposes exactly 111 PTO operations plus two execution identity helpers

Constraint: one-level manifests remain source inventory until their retired compiler option and missing include root are migrated

Rejected: promote repository-only TMATMUL_FIXP spellings into the intrinsic reference | they are absent from the canonical ISA state and pinned compiler

Confidence: high

Scope-risk: moderate

Directive: rebuild the pinned compiler after submodule updates and preserve QEMU-before-gfsim promotion

Tested: strict MkDocs build and link verification; 113-entry manual verifier; 85 manifest variants and 50 implementations; v0.57 catalog and encoding parity; DeepSeek verification; all documentation examples with pinned LLVM 23; TAdd/TLoad/TStore compiler smoke; canonical QEMU-to-LinxCoreModel smoke; ruff, shellcheck, compileall, compile.all syntax

Not-tested: full one-level compilation because current main retains -mlxbc and lacks its expected include tree

@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: 67f0fd120e

ℹ️ 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/scripts/verify_golden_manual.py Outdated


def check_markdown_provenance(root: Path, errors: list[str]) -> None:
for path in root.rglob("*.md"):

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 Restrict provenance checks to tracked documentation

Scanning root.rglob("*.md") makes docs/build.sh depend on unrelated, untracked files in the checkout. For example, a Markdown file installed under the documented repo-local .venv, or a developer's local notes containing a 40-character hash, now fails the publication gate even though it cannot be published; limit this check to the tracked reader-facing documentation set.

Useful? React with 👍 / 👎.

Comment on lines +58 to +59
inline void TMATMUL_ACC(Dst &dst, Previous &, Lhs &lhs, Rhs &rhs) {
::MATMACC(dst, lhs, rhs);

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 Seed accumulation from the previous tile

When the four-operand form is called with distinct output and input accumulators, this wrapper ignores Previous and invokes MATMACC, which accumulates into the existing contents of dst. Thus the documented TMATMUL_ACC(c1, c0, a, b) form computes from an uninitialized or stale c1 instead of c0; copy the previous tile into the destination before accumulating, or otherwise preserve the source-accumulator semantics.

Useful? React with 👍 / 👎.

Comment on lines +98 to +99
python3 docs/scripts/generate_benchmark_manual.py
git diff --exit-code -- docs/content/benchmarks docs/mkdocs.yml README.md

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 Make the catalog freshness command pass in a clean checkout

In a clean checkout, running these two commands does not leave the advertised zero diff: the generator removes the three ignored hashtable_lookup_simd .data entries and the two ignored topk .data entries that are committed in the generated pages, so the following git diff --exit-code fails. Generate the checked-in pages without local ignored artifacts, or filter the inventory to tracked files, so this newly documented freshness check is reproducible.

Useful? React with 👍 / 👎.

) -> str:
source_hash = hashlib.sha1(rel(source, root).encode()).hexdigest()[:8]
page_name = f"{slug(source.stem)}-{source_hash}.md"
page_name = f"{slug(source.stem)}.md"

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 Preserve redirects from the published benchmark routes

Switching to the unhashed filename deletes all previously published hash-suffixed URLs, so existing bookmarks and inbound links such as .../matmul/matmul-a008ac76/ now return 404. I checked the MkDocs configuration, requirements, and documentation generators and found no redirect map or retained alias pages; generate redirects from the former names while using the new stable paths for navigation.

Useful? React with 👍 / 👎.

Comment thread README.md Outdated
## License

See LICENSE.
See [LICENSE](LICENSE).

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 Point the license link at an existing file

This converts the license notice into a link to LICENSE, but no LICENSE or other license file exists anywhere in the repository, so the new GitHub-facing link is broken. Add the referenced license file or remove/change the link to an existing licensing source.

Useful? React with 👍 / 👎.

LinxISA Automation added 2 commits July 31, 2026 11:24
Limit publication checks and generated data inventories to tracked inputs, preserve legacy benchmark URLs with static redirects, and seed accumulated matrix products from the supplied previous tile. Remove the unsupported license link and add focused regression coverage for each executable behavior.\n\nConstraint: No new documentation dependency; redirects are emitted as static index pages.\nRejected: Markdown meta-refresh aliases | MkDocs places their canonical metadata in the document body.\nConfidence: high\nScope-risk: moderate\nDirective: Keep legacy route hashes derived from the historical source-path SHA-1 rule.\nTested: focused unittest suite, strict MkDocs build, manual verifier, Ruff, Python compileall, clean regeneration diff\nNot-tested: deployed GitHub Pages HTTP response before merge
Bring the newly landed flashMLA sources and manifest fix into the reviewed documentation branch, then regenerate the stable catalog and legacy redirects from the combined repository state.\n\nConstraint: PR #25 must merge against the current main branch.\nRejected: Preserve the incoming hash-suffixed generated catalog | it would restore unstable navigation and conflict with the reviewed stable-route generator.\nConfidence: high\nScope-risk: moderate\nDirective: Regenerate the benchmark catalog after future manifest changes.\nTested: focused unittest suite, Ruff, Python compileall, strict MkDocs build, 87-entry manual verifier, clean regeneration diff\nNot-tested: deployed GitHub Pages HTTP response before merge
@zhoubot
zhoubot merged commit 373dbea into main Jul 31, 2026
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: ab81d5aad9

ℹ️ 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 on lines +57 to +58
template <typename Dst, typename Previous, typename Lhs, typename Rhs>
inline void TMATMUL_ACC(Dst &dst, Previous &previous, Lhs &lhs, Rhs &rhs) {

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 Add the three-operand accumulate overload

When a reader uses the documented in-place form TMATMUL_ACC(accum, lhs, rhs)—shown in docs/content/programming/cpp-programming-guide.md and declared in docs/content/intrinsics/tmatmul_acc.md—the new public adapter exposes only this four-argument template. Compiling that call against docs/content/examples/include fails with “candidate expects 4 arguments,” so add a three-operand overload that forwards directly to MATMACC while retaining this distinct-output form.

Useful? React with 👍 / 👎.

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.

1 participant