Skip to content

Release: staging -> main (2026-07-22 03:53)#1144

Closed
github-actions[bot] wants to merge 23 commits into
mainfrom
staging
Closed

Release: staging -> main (2026-07-22 03:53)#1144
github-actions[bot] wants to merge 23 commits into
mainfrom
staging

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown

Summary

Promotes staging into main.

  • Source branch: staging
  • Target branch: main
  • Generated by npm run pr:promote

Included PRs

Compare

Greptile Summary

This PR promotes staging changes into main. The main changes are:

  • GitHub Actions and npm development dependencies updated.
  • Invite route error logging changed to sanitized string output.
  • Character counter tests updated to guard the no-live-region contract.

Confidence Score: 5/5

The changed flow looks mergeable after a small cleanup to error diagnostics.

  • The API responses stay generic on the changed error paths.
  • The workflow and dependency updates match the Node version used in CI.
  • The accessibility test changes match the existing character-counter contract.
  • One logging branch can hide fields from non-Error object rejections.

apps/api/src/routes/invites.ts

Important Files Changed

Filename Overview
apps/api/src/routes/invites.ts Adds a local caught-error formatter and uses it in invite response failures; non-Error object rejections can lose diagnostic fields.
apps/api/src/routes/papers.ts Uses the existing caught-error formatter for invitee email lookup failures while keeping the client response generic.
apps/api/src/routes/tests/invites.test.ts Updates invite error logging assertions and adds coverage for string rejections.
apps/api/src/routes/tests/papers.test.ts Adds an assertion that invitee email lookup failures are logged through the sanitized formatter.
apps/web/src/app/tests/collections-new.test.tsx Adds assertions that collection character counters are described by inputs without live-region attributes.
apps/web/src/app/tests/orgs-new.test.tsx Adds assertions that the org description counter avoids live-region attributes.
.github/workflows/ci.yml Updates checkout and setup-node actions across CI jobs while keeping Node 24.
apps/web/package.json Updates web development dependencies, including jest-dom, Tailwind PostCSS, and PostCSS.
apps/api/package.json Updates API development dependencies for Cloudflare Workers types and Wrangler.
Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
apps/api/src/routes/invites.ts:19
**Object Rejections Lose Details**

When this handler catches a rejected plain object, `String(error)` logs only `[object Object]`. A D1 or binding failure shaped like `{ message, code }` would still return 500, but the log would lose the error fields that the previous `console.error(..., error)` output kept.

```suggestion
        : typeof error === "object" && error !== null
          ? JSON.stringify(error)
          : String(error);
```

Reviews (1): Last reviewed commit: "Merge pull request #1139 from Hiroki-org..." | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

Context used:

Copilot AI and others added 23 commits July 18, 2026 05:32
chore: sync main into staging
…rror

Restore sanitized invite-route error logging and tighten regression assertions
Sanitize invitee email lookup error logging in papers invites route
…character-counter

Guard character-counter accessibility contract (no live regions) and align palette guidance
Bumps the github-actions-all group with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [actions/setup-node](https://github.com/actions/setup-node).


Updates `actions/checkout` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](actions/checkout@v7...v7.0.1)

Updates `actions/setup-node` from 6 to 7
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions-all
- dependency-name: actions/setup-node
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions-all
...

Signed-off-by: dependabot[bot] <support@github.com>
…dates

Bumps the npm-development-minor-patch group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.64.0` | `8.65.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.64.0` | `8.65.0` |
| [postcss](https://github.com/postcss/postcss) | `8.5.19` | `8.5.20` |
| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `5.20260713.1` | `5.20260719.1` |
| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.110.0` | `4.112.0` |
| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.3.2` | `4.3.3` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.3.2` | `4.3.3` |


Updates `@typescript-eslint/eslint-plugin` from 8.64.0 to 8.65.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.65.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.64.0 to 8.65.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.65.0/packages/parser)

Updates `postcss` from 8.5.19 to 8.5.20
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](postcss/postcss@8.5.19...8.5.20)

Updates `@cloudflare/workers-types` from 5.20260713.1 to 5.20260719.1
- [Release notes](https://github.com/cloudflare/workerd/releases)
- [Changelog](https://github.com/cloudflare/workerd/blob/main/RELEASE.md)
- [Commits](https://github.com/cloudflare/workerd/commits)

Updates `wrangler` from 4.110.0 to 4.112.0
- [Release notes](https://github.com/cloudflare/workers-sdk/releases)
- [Commits](https://github.com/cloudflare/workers-sdk/commits/wrangler@4.112.0/packages/wrangler)

Updates `@tailwindcss/postcss` from 4.3.2 to 4.3.3
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.3/packages/@tailwindcss-postcss)

Updates `tailwindcss` from 4.3.2 to 4.3.3
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.3/packages/tailwindcss)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.65.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-development-minor-patch
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.65.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-development-minor-patch
- dependency-name: postcss
  dependency-version: 8.5.20
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-development-minor-patch
- dependency-name: "@cloudflare/workers-types"
  dependency-version: 5.20260719.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-development-minor-patch
- dependency-name: wrangler
  dependency-version: 4.112.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-development-minor-patch
- dependency-name: "@tailwindcss/postcss"
  dependency-version: 4.3.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-development-minor-patch
- dependency-name: tailwindcss
  dependency-version: 4.3.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-development-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 6.9.1 to 7.0.0.
- [Release notes](https://github.com/testing-library/jest-dom/releases)
- [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md)
- [Commits](testing-library/jest-dom@v6.9.1...v7.0.0)

---
updated-dependencies:
- dependency-name: "@testing-library/jest-dom"
  dependency-version: 7.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…thub-actions-all-3d4a5765df

chore(deps): bump the github-actions-all group with 2 updates
…development-minor-patch-43847a5e92

chore(deps-dev): bump the npm-development-minor-patch group with 7 updates
# Conflicts:
#	apps/web/package.json
#	package-lock.json
…ing-library/jest-dom-7.0.0

chore(deps-dev): bump @testing-library/jest-dom from 6.9.1 to 7.0.0
@github-actions github-actions Bot added automated Automated main-to-staging sync PR release Release promotion PR labels Jul 22, 2026
@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
open-shelf Ignored Ignored Jul 22, 2026 3:53am

@dosubot dosubot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jul 22, 2026
function formatCaughtError(error: unknown): string {
return error instanceof Error
? `${error.name}: ${error.message}`
: String(error);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P2 Object Rejections Lose Details

When this handler catches a rejected plain object, String(error) logs only [object Object]. A D1 or binding failure shaped like { message, code } would still return 500, but the log would lose the error fields that the previous console.error(..., error) output kept.

Suggested change
: String(error);
: typeof error === "object" && error !== null
? JSON.stringify(error)
: String(error);
Prompt To Fix With AI
This is a comment left during a code review.
Path: apps/api/src/routes/invites.ts
Line: 19

Comment:
**Object Rejections Lose Details**

When this handler catches a rejected plain object, `String(error)` logs only `[object Object]`. A D1 or binding failure shaped like `{ message, code }` would still return 500, but the log would lose the error fields that the previous `console.error(..., error)` output kept.

```suggestion
        : typeof error === "object" && error !== null
          ? JSON.stringify(error)
          : String(error);
```

How can I resolve this? If you propose a fix, please make it concise.

@is0692vs

Copy link
Copy Markdown
Contributor

Closing this generated staging-to-main release PR per the staging-first policy; this review loop does not merge staging into main.

@is0692vs is0692vs closed this Jul 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated Automated main-to-staging sync PR dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code release Release promotion PR size/L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants