fix(package): keep every shipped module under the PuduLangMcp root #6
merged
@chrismichaelps wrote on 2026-09-24
Behaviour
pudu.toml declares the module root PuduLangMcp, but 0.1.0 shipped App, Domain, Services, Utils, Constants, Errors, and Generated at the top level. Checking installs of 0.1.0, a consumer made by pudu init, with its own App/Context.pudu, failed to compile the package: E3035 Context declares no type Context in App/Completion.pudu.
- Every module now lives under
src/PuduLangMcp/asPuduLangMcp.*; only the executable entrysrc/Main.pudusits beside the root. - The suites moved under
test/PuduLangMcp/, mirroringsrc. test/Package/LayoutTestrefuses a shipped module that is outside the root or named differently from its path, and checks the manifest'sroot.tools/SyncDocsandtools/Mutatefollow the new generated-corpus path.- The wiki mirror moved to
wiki/src/PuduLangMcp/with a new root map. The grammar page gains the root-ownership law, and the README shows package use. - The version is 0.1.1.
Verification (Pudu 0.1.1)
pudu check,pudu fmt --check, andpudu lintare clean oversrc,test, andtools.pudu test test: 21/21 suites, 471 assertions.pudu build src/Main.pudu: 60 modules.- The layout suite fails with a stray
src/Stray.pudu(module Stray), naming the file. - Every wiki link resolves. This also fixes a pre-existing link to a nonexistent
App/Tools/Stdlibpage.
Closes #5
