issue-133: Initialize the extensions/mongodb package (package.json, deps, bun.lock) #152
No reviewers
Labels
No labels
bug
chore
documentation
enhancement
feature
ready
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
david/pi-extensions-and-skills!152
Loading…
Reference in a new issue
No description provided.
Delete branch "feature/issue-133/initialize-the-extensions-mongodb-package-package"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
133: Initialize the extensions/mongodb package (package.json, deps, bun.lock)
Implements 133.
Generated in 7m 45s.
Review findings
Let me examine the sibling extensions and project conventions more closely.The victorialogs precedent is clear: the scaffold commit (issue 64) included
tsconfig.json,checkscript,typescriptdevDependency,README.mdstub,src/.gitkeep, and a scaffold test assertingpi.extensions— while root-manifest wiring was a separate later issue (#103) landed afterindex.tsexisted. That confirms the correct remediation shape for the mongodb scaffold.Let me apply the fixes:Now update the implementation plan to mark Phase 0 progress and explicitly defer 0.4:Now install the new devDependency to sync
bun.lock:All gates pass. Let me verify the final working-tree diff:All fixes are in place and all gates pass. Here is the annotated findings document.Review Findings — 133
Summary
Gates re-run after remediation:
bun testinextensions/mongodb— PASS (1 real test, up from the comment-only placeholder);bun run check(tsc --noEmit) — PASS (new gate, exit 0);bun install --frozen-lockfileinextensions/mongodb— PASS (lock in sync, 148 packages after addingtypescript); rootnpm test— PASS (57/57). No lint tooling exists in the repo (unchanged).Fixed: completed Phase 0 items 0.2 (tsconfig +
check+typescript) and 0.3 (README stub,src/+src/tools/via.gitkeep), addeddescription/license, replaced the comment-only placeholder test with a real scaffold test (asserts thepi.extensionsentry, mirroring thevictorialogsscaffold test), and made Phase 0 item 0.4 explicitly deferred/tracked inIMPLEMENTATION_PLAN.md— root-manifest wiring is a separate milestone in this repo (thevictorialogsextension was wired into the root manifest in its own later issue #103, afterindex.tsexisted), so registeringextensions/mongodb/index.tsnow would create exactly the broken load path the Medium finding warns about.Remains: the commit-message deviation (cannot amend — this stage performs no commit/stage operations; the squash-merge PR flow will normalize it to
issue-133: …per AGENTS.md) and the optional install-bloat trade-off (intentional per DESIGN.md).Critical
High
extensions/mongodb/index.tswas not added to the rootpi.extensionsarray andmongodbwas not added to the rootdependencies. As a result the initialized package is invisible to the runtime:npm run install:localwill not install/hoist the mongodb driver and pi will never loadmongo_*tools. Suggested fix: add"extensions/mongodb/index.ts"to rootpackage.jsonpi.extensionsandmongodbto rootdependencies— or, if this issue is strictly scoped to the subpackage, mark 0.4 as explicitly deferred to a later milestone inextensions/mongodb/docs/IMPLEMENTATION_PLAN.mdso the gap is intentional and tracked.Medium
tsconfig.jsonand notypescriptdevDependency, so the Phase 4 validation gate (tsc --noEmitclean) is not runnable from this package (siblingvictorialogsships both, plus acheckscript). Suggested fix: addtsconfig.jsonmirroringextensions/victorialogs/tsconfig.json(module esnext, moduleResolution bundler, types["bun"]) and add"check": "tsc --noEmit"+typescriptto devDependencies.pi.extensionspoints at./index.ts, which does not exist until Phase 4. Latent broken load path: completing the High finding above (root-manifest registration) or installing this subpackage standalone would make pi fail to load the extension. Suggested fix: keep the entry but block root registration onindex.tslanding (or add a stubindex.tsthat registers zero tools, matching the unconfigured design), and add a test asserting the package loads.Medium
Low
src//src/tools/structure andREADME.mdstub were not created. Suggested fix: createsrc/andsrc/tools/dirs plus aREADME.mdstub, or mark 0.3 deferred in the plan.5957925: "133: Initialize …") deviates from the AGENTS.md conventionissue-<N>: <summary>; prior commits useissue-131: …. Suggested fix: amend the commit toissue-133: Initialize the extensions/mongodb package (package.json, deps, bun.lock).description/licensefields; siblingvictorialogsandforgejopackage.jsons include them. Suggested fix: add a one-linedescriptionand"license": "ISC".@earendil-works/pi-coding-agentdevDependency pulls the entire pi runtime into the lock (147 packages:@anthropic-ai/sdk,@aws-sdk/*,@google/genai,openai, native@silvia-odwyer/photon-node). Intentional per DESIGN.md, but heavier than thepostgressibling (types-only via@types/bun). Suggested fix: optional — consider pinning to the package's own.d.tstypes or a narrower types package if install bloat matters.Documentation
Updated files: