pnpm-workspace.yaml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. packages:
  2. - vendor/*
  3. - packages/*/*
  4. - website
  5. # The runnable demo leaves join as ONE workspace member: examples/package.json
  6. # declares the union of every leaf's cordis.yml plugins as workspace:*, so a
  7. # plain-node (`:lib`) boot of any leaf (examples/<leaf>/cordis.yml) resolves its
  8. # plugins through real package `exports`→lib by walking up to examples/node_modules.
  9. # Members for DEPENDENCY RESOLUTION only — NOT build targets: tsdown's explicit
  10. # globs (vendor/*, packages/*/*) exclude them. See the example-execute-over-tsx Agent Note.
  11. - examples
  12. # Deploy root of the single-exe build: a pure dependency manifest whose
  13. # closure is what the exe bundles and what the Python runtime distributes.
  14. - python/sdk-runtime
  15. peerDependencyRules:
  16. allowedVersions:
  17. typescript: '>=5 <7'
  18. # pnpm 10+ blocks any dependency shipping an install/build script until it is
  19. # explicitly reviewed here (strictDepBuilds defaults to true: an unlisted script
  20. # is a hard install error). Every such package MUST be listed; we deny by
  21. # default and only allow scripts we need. esbuild (native binary) and lefthook
  22. # (git hooks) genuinely need theirs.
  23. allowBuilds:
  24. esbuild: true
  25. lefthook: true
  26. # Cross-platform PTY boundary for the TUI process smoke, including ConPTY on Windows.
  27. node-pty: true
  28. # Pulled in by @earendil-works/pi-ai (optional LLM API backend). pnpm lists
  29. # them only because they ship lifecycle scripts, but those are no-ops we don't
  30. # need, so we deny them — install still succeeds.
  31. '@google/genai': false
  32. protobufjs: false
  33. node-addon-require-builtin: false
  34. # The Landlock launcher family is our own sibling-repo release, consumed
  35. # fresh (hours old at each coordinated bump) — the release-age quarantine
  36. # would block every such bump, so the family is exempted BY NAME, not by
  37. # pinned version.
  38. minimumReleaseAgeExclude:
  39. - node-addon-landlock-run
  40. - node-addon-landlock-run-linux-arm64
  41. - node-addon-landlock-run-linux-x64
  42. # Cordis release candidates are source-vendored and pinned in vendor/README.md
  43. # during the same-day sync that updates package manifests and the lockfile.
  44. - '@cordisjs/plugin-loader@1.0.0-rc.5'
  45. - cordis@4.0.0-rc.7