docs + mouse: blog "Internal tools" + 4 new mouse cards#2678
Merged
Conversation
Adds Boris's "Internal tools" blog post under site/blog/_posts/ and four new mouse-data/docs/ cards surfaced while landing the dasImgui harness + headless initiative (separate PR on borisbat/dasImgui). Mouse cards: - daslang-private-require-structural-symbol-gate — the wrapper-module pattern where private requires keep GLFW/GL symbols out of user scope, used by imgui_harness to make lint guarantees structural instead of comment-only. - dasimgui-new-widget-module-needs-das-module-entry — `.das_module` registration is mandatory for new sibling modules under modules/dasImgui/widgets/; new file alone won't resolve via `require imgui/<name>`. - daslang-script-flags-need-dash-dash-separator — script-side flags via `daslang FILE.das -- --flag` (the `--` is required in interpreter mode); daslang-live doesn't pass argv to scripts. - why-does-my-dastest-integration-test-hang-at-readiness-gate-failed ... — captures the require-order land-mine surfaced during imgui_harness PR 2 verification: `live/live_api` required before `imgui_app + glfw_live` makes `wait_until_ready` time out from a popen parent even though external curl gets 200. Workaround: reorder requires. Filed as daslang #2677. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds a blog post and four new "mouse-data" knowledge cards capturing lessons learned while landing the dasImgui harness/headless work. All changes are documentation-only (Markdown).
Changes:
- Adds a new blog post
internal-tools.mdabout internal tooling and AI-assisted maintenance. - Adds four mouse-data cards covering: private-require structural symbol gating,
.das_moduleregistration for new dasImgui widget modules, the--separator requirement for daslang script flags, and the require-order land-mine reported as #2677.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| site/blog/_posts/internal-tools.md | New blog post on internal tooling dogfooding. |
| mouse-data/docs/why-does-my-dastest-integration-test-hang-at-readiness-gate-failed-when-external-curl-to-status-works-fine-is-it-a-require-order.md | Card documenting the require-order regression (#2677) and reorder workaround. |
| mouse-data/docs/daslang-script-flags-need-dash-dash-separator.md | Card explaining -- separator requirement for get_user_args() in interpreter mode. |
| mouse-data/docs/daslang-private-require-structural-symbol-gate.md | Card describing private-require pattern for structural symbol gating in wrapper modules. |
| mouse-data/docs/dasimgui-new-widget-module-needs-das-module-entry.md | Card noting .das_module register_native_path requirement for new widgets/ modules. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
site/blog/_posts/internal-tools.md— "Internal tools" / why the daslang MCP and other in-tree tooling matter (intern + AI dogfooding angle).mouse-data/docs/cards captured during the dasImgui harness + headless initiative (separate PR onborisbat/dasImgui):daslang-private-require-structural-symbol-gate— wrapper-module pattern where private requires keep symbols out of user scope; basis for structural lint guarantees instead of comment-only ones.dasimgui-new-widget-module-needs-das-module-entry—.das_moduleregistration is mandatory for new siblingwidgets/modules.daslang-script-flags-need-dash-dash-separator— script-side flags viadaslang FILE.das -- --flag(the--is required in interpreter mode); daslang-live doesn't pass argv to scripts.why-does-my-dastest-integration-test-hang-at-readiness-gate-failed-when-external-curl-to-status-works-fine-is-it-a-require-order— captures the require-order land-mine that surfaced during dasImgui harness PR 2 verification:live/live_apirequired beforeimgui_app + glfw_livemakeswait_until_readytime out from a popen parent. Workaround: reorder requires (mirrors canonical pre-harness order). Filed as daslang-live: require order sensitivity — live/live_api before imgui_app/glfw_live breaks /status reachability from popen parent #2677.Test plan
---front-matter parses, body renders as expected).slug/title/created/last_verified/links) intact, body uses standard headings (# Symptom/# Root cause/# Fix/# How to recognizeetc.).daslang-private-require-structural-symbol-gatecard pairs with the dasImgui PR.🤖 Generated with Claude Code