Skip to content

review rules: the ruled checklist batch; preflight: 2x suite caps; docs: the hand-wired link set - #3890

Merged
borisbat merged 1 commit into
masterfrom
bbatkin/rulings-and-link-docs
Aug 28, 2026
Merged

review rules: the ruled checklist batch; preflight: 2x suite caps; docs: the hand-wired link set#3890
borisbat merged 1 commit into
masterfrom
bbatkin/rulings-and-link-docs

Conversation

@borisbat

Copy link
Copy Markdown
Collaborator

Fixes #3884. Three small arcs, all ruled today.

The checklist findings from the #3889 review round land as ruled. dasLLVM: a platform-gated change now runs the module-owned suite on that platform; the test-enforced re-pin clause is deleted (the pin test carries the duty); the codegen-version trigger stays broad by ruling, its [tune] tail re-mooded from an exemption to trigger-narrowing. tests-cpp: a new rule - a test that returns early on a missing artifact says in the PR which lane runs it with the artifact present; big/'s ran-locally rule is unscoped so CMakeLists-owning strays routed from the parent bind; small/'s pin rule trades the undecidable "loosens" for "widens or removes". Each edited folder gains a LAWS.md provenance sidecar. Two dragon passes ran; the second's two findings were applied (the proposed pinned-value arm was itself a duplicate of what the pin test CI-enforces, and was dropped with its routing line).

preflight: the chained --full run executes the dastest suites while other gates load the same cores, so the per-file wall-clock cap trips on scheduler pressure, not on tests - four of six reds in the last full run vanished when re-run standalone. The suite caps double: interp and AOT 30s to 60s, the JIT default 60s to 120s (the config override is unchanged).

#3884: the daslang runtime is split out of the compiler library, and a hand-wired Visual Studio project linking libDaScript.lib alone dies on the runtime-defined ptr_ref_count statics. CMake consumers never see it - DAS::libDaScript chains libDaScript_runtime, libUriParser and the system libs. The full hand-wired link set is now in the bundle README ("Embedding without CMake"), a new "Linking" section in the C API reference, and the AOT page's link line. Verified against the actual 0.6.3 bundle: the two reported symbols are U in libDaScript.lib and defined (B) in libDaScript_runtime.lib, and the exported target graph names exactly the documented set.

Where to look: tests-cpp/REVIEW.md (the new rule), modules/dasLLVM/REVIEW.md, install/README.md.

Validation, claims, ledger

Validation

  • Localized diff (rule docs, doc pages, two preflight constants + their test) - the full preflight chain was not re-run; targeted gates instead: sphinx -W clean over the RST edits, MCP format/lint/compile green on the three changed .das, tests/dastest/test_preflight_config.das 8/8.
  • The link-set claim was verified against the downloaded v0.6.3-RC3 Windows bundle with llvm-nm (symbol tables) and its shipped DASTargets.cmake (interface link graph), not from the build files alone.
  • Every REVIEW.md change was ruled item-by-item in session; the dragon rounds audited wording only.

Claims - stated, not tested

  • The doubled caps remove the observed false-red class but were not re-proven with a fresh chained --full run; the next PR's full run is the test. A break would look like the same gates red in the chain and green standalone.

Not done

  • A REVIEW.das cell surfacing self-skip sites in tests-cpp (the dragon's lint suggestion for the detectable half of the new rule) - lint candidate, not built here.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FkBKGJisiiHXEgSsGjpqLm

Copilot AI lite review requested due to automatic review settings August 28, 2026 01:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR updates several rule-doc checklists, adjusts preflight suite time caps to reduce false CI failures under load, and documents the full static link set needed when embedding without CMake (addressing #3884).

Changes:

  • Double --max-file-time caps for interpreter/AOT suites in preflight and bump the default JIT per-file cap in settings (with test update).
  • Amend tests-cpp and modules/dasLLVM REVIEW checklists and add ruling-provenance LAWS.md sidecars.
  • Add/expand embedding documentation to explicitly list required libraries for hand-wired (non-CMake) builds.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
utils/internal/preflight/main.das Increase per-file time caps for interp/AOT test gates; add rationale comment.
utils/internal/preflight/config.das Increase default JIT per-file cap in PreflightSettings.
tests/dastest/test_preflight_config.das Update expectations for the new default JIT cap.
tests-cpp/small/REVIEW.md Reword pin-rule trigger to “widens or removes”.
tests-cpp/small/LAWS.md Add ruling provenance sidecar for tests-cpp/small.
tests-cpp/REVIEW.md Add rule requiring PR text to name a lane/command when tests self-skip for missing artifacts.
tests-cpp/LAWS.md Add ruling provenance sidecar for tests-cpp.
tests-cpp/big/REVIEW.md Unscope the “big” ran-locally rule so routed tests bind it too.
tests-cpp/big/LAWS.md Add ruling provenance sidecar for tests-cpp/big.
modules/dasLLVM/REVIEW.md Add platform-gated-suite rule; simplify/clarify codegen-version trigger wording.
modules/dasLLVM/LAWS.md Add ruling provenance sidecar for modules/dasLLVM.
install/README.md Document “Embedding without CMake” full link set and Windows system libs.
doc/source/reference/embedding/c_api.rst Add a “Linking” section documenting the required libraries/system libs.
doc/source/reference/embedding/advanced.rst Update AOT pipeline link guidance to include libDaScript_runtime and point to the linking section.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread utils/internal/preflight/main.das
@borisbat
borisbat force-pushed the bbatkin/rulings-and-link-docs branch from 903fc99 to 88e1195 Compare August 28, 2026 02:31
…ps; docs: the hand-wired link set

The PR 3889 review round left five checklist findings for a ruling; all were ruled
today and land here with LAWS.md provenance in each edited folder. dasLLVM: the
module-suite rule gains a platform clause (a platform-gated change runs the suite
on that platform) and the test-enforced re-pin clause is deleted; the codegen-
version trigger stays broad by ruling, with its [tune] tail re-mooded from an
exemption to trigger-narrowing. tests-cpp: a new green-by-skip rule (a self-
skipping test names the lane that runs it with its artifact present), placed
tests-cpp-wide; big/'s ran-locally rule is unscoped so CMakeLists-owning strays
routed from the parent bind. tests-cpp/small: the pin rule's "loosens" becomes
the decidable "widens or removes"; the pinned-value arm proposed alongside it was
dropped on the dragon's duplicate finding - the pin test already CI-enforces that
pairing both directions.

preflight: the chained --full run executes suites while other gates load the same
cores, so dastest's per-file wall-clock cap trips on scheduler pressure - four of
six reds in the last full run vanished standalone. The suite caps double: interp
and AOT 30s -> 60s, the JIT default 60s -> 120s (config override unchanged).

Fixes #3884: the daslang runtime is split out of the compiler library, and a
hand-wired Visual Studio project linking libDaScript.lib alone dies on the
runtime-defined ptr_ref_count statics. CMake consumers never see it - the
exported DAS::libDaScript target chains libDaScript_runtime, libUriParser and
the system libs. The full hand-wired link set is now documented in the bundle
README ("Embedding without CMake"), the C API reference (new "Linking" section),
and the AOT page's link line.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FkBKGJisiiHXEgSsGjpqLm
Copilot AI review requested due to automatic review settings August 28, 2026 02:32
@borisbat
borisbat force-pushed the bbatkin/rulings-and-link-docs branch from 88e1195 to 3f857a6 Compare August 28, 2026 02:32

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 14 out of 14 changed files in this pull request and generated 1 comment.

Comment thread tests-cpp/small/LAWS.md
@borisbat
borisbat merged commit 2a2ee37 into master Aug 28, 2026
36 checks passed
@borisbat
borisbat deleted the bbatkin/rulings-and-link-docs branch August 28, 2026 03:30
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.

Calling daslang's C++ interface results in an error.

2 participants