Skip to content

chore(infra): enable tsgo, publint, and prettier checks#93

Merged
chenjiahan merged 6 commits into
rstackjs:mainfrom
SoonIter:codex/rslog-infra-baseline
Jun 18, 2026
Merged

chore(infra): enable tsgo, publint, and prettier checks#93
chenjiahan merged 6 commits into
rstackjs:mainfrom
SoonIter:codex/rslog-infra-baseline

Conversation

@SoonIter

Copy link
Copy Markdown
Member

Summary

This PR was recreated from the latest origin/main on a new branch. It tightens the rslog infrastructure baseline without changing runtime behavior: Rslib declaration generation now uses tsgo, publint runs during build, linting includes JS recommended rules plus Prettier checks, agent guidance is documented, and the unused Playwright install step is removed from CI.

Notes:

  • CI still uses the current Node 24 setup; no Node 20 matrix is added.
  • No extra CI build step is added.
  • Knip was used as a local dependency audit only and is not added as a project dependency.

Copilot AI review requested due to automatic review settings June 16, 2026 10:56

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR tightens project tooling around linting/formatting, package publish validation, and TypeScript declaration generation.

Changes:

  • Add JS recommended rules to Rslint, and extend lint/lint:write to include Prettier.
  • Add Publint checks to the build and switch DTS generation to tsgo.
  • Add repository URL prefix and introduce @typescript/native-preview + rsbuild-plugin-publint dev dependencies.

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/createLogger.ts Code style-only change (condensed ternary).
rslint.config.ts Enable JS recommended lint config alongside TS.
rslib.config.ts Add Publint plugin and enable tsgo for DTS generation.
package.json Update repo URL; add Prettier to lint scripts; add new dev deps.
AGENTS.md Add contributor/agent guidance and repo commands.
.github/workflows/test.yml Remove Playwright install step from CI.
Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Comment thread rslib.config.ts
Comment thread rslint.config.ts Outdated
@SoonIter

Copy link
Copy Markdown
Member Author

Related skill PR: rstackjs/agent-skills#78

This PR is another test run of the rstack-repo-maintain skill against an RstackJS package baseline.

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The PR introduces lint scripts (lint and lint:write) in package.json combining rslint with prettier, adds @typescript/native-preview and rsbuild-plugin-publint to devDependencies, and updates .prettierignore with patterns for build artifact directories. rslib.config.ts adds pluginPublint() to the plugins array and changes the dts configuration from true to { tsgo: true }. The GitHub Actions workflow removes the explicit npx playwright install step. A new AGENTS.md file documents repo commands, package contract rules, and maintenance practices. A minor ternary reformatting is applied in src/createLogger.ts.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly describes the main infrastructure changes: enabling tsgo, publint, and prettier checks for the project.
Description check ✅ Passed The description is directly related to the changeset, explaining the infrastructure baseline tightening, tooling enhancements, and CI cleanup without runtime behavior changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
rslint.config.ts (1)

5-5: Remove unnecessary js.configs.recommended or keep for future JavaScript support.

The repository contains no JavaScript files (.js, .jsx, .mjs, .cjs), so this ESLint configuration is currently unused. Remove it if JavaScript files are not planned, or keep it if you intend to add JavaScript files later.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@rslint.config.ts` at line 5, The js.configs.recommended configuration in
rslint.config.ts (line 5) is currently unused because the repository contains no
JavaScript files. Either remove this line entirely if JavaScript file support is
not planned, or retain it if you intend to add JavaScript files to the project
in the future. Make a deliberate choice based on your project's roadmap and
document it if keeping it.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@package.json`:
- Line 34: The `@typescript/native-preview` package at version
7.0.0-dev.20260615.1 is experimental and not recommended for production use,
which poses risks for a published library whose type declarations are consumed
downstream. Either: (1) revert the `@typescript/native-preview` dependency to a
stable TypeScript version in package.json to ensure reliable DTS generation for
consumers, or (2) if accepting the early-adoption risks, document this decision
and the known issues (incomplete declaration emission feature parity, incorrect
inlining of named inferred types) in the project's documentation or comments so
that maintainers and users are aware of the potential instability in generated
type declarations.

---

Nitpick comments:
In `@rslint.config.ts`:
- Line 5: The js.configs.recommended configuration in rslint.config.ts (line 5)
is currently unused because the repository contains no JavaScript files. Either
remove this line entirely if JavaScript file support is not planned, or retain
it if you intend to add JavaScript files to the project in the future. Make a
deliberate choice based on your project's roadmap and document it if keeping it.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 766c6118-3df4-4242-80e0-016843c3d973

📥 Commits

Reviewing files that changed from the base of the PR and between 956f0a6 and 0c5fbaa.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (6)
  • .github/workflows/test.yml
  • AGENTS.md
  • package.json
  • rslib.config.ts
  • rslint.config.ts
  • src/createLogger.ts
💤 Files with no reviewable changes (1)
  • .github/workflows/test.yml

Comment thread package.json
@SoonIter SoonIter force-pushed the codex/rslog-infra-baseline branch 4 times, most recently from aa119e7 to 08a7d90 Compare June 18, 2026 08:35
@SoonIter SoonIter force-pushed the codex/rslog-infra-baseline branch from 08a7d90 to 910b5a1 Compare June 18, 2026 08:36
Comment thread .prettierignore Outdated
@chenjiahan chenjiahan merged commit 25dc20d into rstackjs:main Jun 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants