Repository navigation
ci(importer): guard @repo/crawlers dist entry points used by Rate-Services - #107
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 50 minutes. View limit details
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
…vices Follow-up to #105 / DOS/Rate-Services#15, which made Rate-Services consume the engine through the vendor/rate submodule. - Add `test:dist`, a smoke test that imports @repo/crawlers (root, ./shopee/arena-spec-syncer, ./shopee/flagship-seed-data) and @repo/shared-data by package name from the built dist, checks the .d.ts files, and asserts that the test scripts that execute on import stay unexported. Run it in CI after the crawler tests. - AGENTS.md / CLAUDE.md: document that Rate-Services consumes the engine via the submodule and must not copy engine files, and replace the stale `npm run build` Rate-Services commands with the pnpm ones. - ROADMAP: record the change as 5.19. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015v1boe4iagzc2mQVMuU39b
e9abf38 to
624004f
Compare
Cover the .d.ts behind the ./shopee/flagship-seed-data export, and credit #105 / #107 separately in ROADMAP 5.19 (review follow-up). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015v1boe4iagzc2mQVMuU39b
Summary
This started as #103, but another Core agent landed that work in #105 (and the Rate-Services side in DOS/Rate-Services#15) while this PR was in progress. I rebuilt the branch on the current
devand dropped everything those PRs already cover. What remains is the follow-up they left out.What changed
test:distsmoke test (apps/importer/src/shopee/__tests__/dist-exports.smoke.mjs), run in CI right after the crawler tests. It:@repo/crawlers(root,./shopee/arena-spec-syncer,./shopee/flagship-seed-data) and@repo/shared-databy package name from the builtdist, the way Rate-Services does;.d.tsfiles are emitted;test-ai-enricher,test-review-analyzerandrun-ingestion-teststay unexported. These scripts execute on import, which is why fix(importer): unbreak @repo/crawlers build and make it consumable from Rate-Services #105 avoided a./shopee/*wildcard. The check usesimport.meta.resolve, so the scripts never run.AGENTS.md/CLAUDE.md:vendor/ratesubmodule, never by copying files;exportssubpath, then updatetest:dist);npm run buildcommands for Rate-Services with the pnpm + submodule ones.ROADMAP.md: record this as 5.19.Why: Rate-Services now depends on this
exportsmap. Without a check, a change on this side would only surface when someone bumps the submodule in Rate-Services. The docs rule addresses the root cause of the drift in #103 (agents copying engine files).Checklist
pnpm --filter @repo/web typechecklint-stagedprettier step can't resolveprettier-plugin-packagejsonfrom the repo root (pre-existing), so I formatted the new file with the repo prettier config and rancommitlinton the message by hand.@repo/crawlers test,@repo/crawlers test:dist,@repo/extension test,@repo/web test. I also checked thattest:distfails if a./shopee/*wildcard is added.AGENTS.md,CLAUDE.md,Docs/Resources/ROADMAP.md)Notes
apps/importer(test + script),.github/workflows/ci.yml, docs🤖 Generated with Claude Code
https://claude.ai/code/session_015v1boe4iagzc2mQVMuU39b