Skip to content

[pull] main from tldraw:main#551

Merged
pull[bot] merged 3 commits into
code:mainfrom
tldraw:main
May 19, 2026
Merged

[pull] main from tldraw:main#551
pull[bot] merged 3 commits into
code:mainfrom
tldraw:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented May 19, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

kaneel and others added 3 commits May 19, 2026 12:25
### Problem

Spotted on #8665 that I should have
merged, we get errors when trying to build docs in preview

### Root cause

- `#8256` bumped wrangler, which resolved `workerd` to `1.20260317.1`.
- `workerd` 2026 builds require **GLIBC 2.35+**.
- Vercel's build image is **Amazon Linux 2023 (GLIBC 2.34)** and AWS
hasn't shipped a successor, so we can't bump it.
- `workerd`'s postinstall script self-checks the native binary by
running it. On Vercel that exits non-zero and `yarn install` fails.

### Why nobody noticed for two months

- PR previews mostly skipped the docs build via `should-build-docs.sh`,
which gates on `git diff HEAD^ HEAD ./apps/docs` (the tip-commit diff,
not the full PR diff).
- `main` and production *always* build per the same script — so docs
deploys to `tldraw.dev` have actually been failing for ~2 months. Vercel
kept serving the last successful build, which is why the site looked
fine while silently going stale.

### Fix

Add `dependenciesMeta.workerd.built: false` to the root `package.json`
so Yarn skips workerd's postinstall self-check at install time. This is
safe because:

- On Vercel, `workerd` is never invoked at runtime — only `next build`
runs there.
- On developer machines, `wrangler dev` still spawns the platform
`workerd` binary normally; this opt-out only disables the install-time
self-check, not the binary itself.
- Cloudflare-hosted workers run on Cloudflare's own infrastructure, not
our locally installed `workerd`.

One line in root `package.json` with a JSON comment in the same style as
the existing `// resolutions.canvas` block.

### Change type

- [x] `bugfix`

### Test plan

1. Open a PR with a change to `apps/docs/` and confirm the Vercel docs
preview install step gets past the workerd postinstall.
2. On merge, confirm the docs production deploy succeeds and
`tldraw.dev` picks up the change.

### Release notes

- Internal only; no user-facing change.
…8865)

In order to cut Grafana Cloud costs, this PR lowers the `ZERO_LOG_LEVEL`
from `info` to `warn` and disables OTLP trace export
(`OTEL_TRACES_EXPORTER = "none"`) across all three zero-cache Fly.io
templates (replication-manager, view-syncer, and single-process).

Findings from a 330MB / ~520k-line view-syncer log sample:

Traces from `service.name=zero-vs` are dominated by hot view-syncer
paths like `vs.#advancePipelines`, which fires on every CVR advance.
Zero uses `@opentelemetry/sdk-node`, so the standard OTEL env vars are
honored — `OTEL_TRACES_EXPORTER=none` stops all trace egress at the SDK
level (no exporter instantiated). Metrics and logs export are
unaffected.

### Change type

- [x] `other`

### Test plan

- [ ] Deploy and confirm zero-cache machines emit `warn` and above only
(verify via Fly logs).
- [ ] Confirm trace count drops to ~0 in Grafana Tempo for
`{resource.service.name="zero-vs"}` and
`{resource.service.name="zero-rm"}` after rollout.

### Release notes

- Internal: lower zero-cache log level to `warn` and disable OTLP trace
export.

### Code changes

| Section         | LOC change |
| --------------- | ---------- |
| Apps            | +6 / -3    |
Follow up to tldraw/tldraw-internal#264 and
dotdev release.

This PR will stay in WIP until we're ready to pull the plug on the
framer dotdev site.
It removes all unecessary redirections from docs to framer as now
tldraw.dev will point at the new dotdev project and the dotdev project
will redirect to docs

## Summary

Remove the Framer proxy behavior from the docs app so it can run as a
standalone docs deployment behind dotdev.

- Drops the marketing-path rewrites that proxied to the Framer site.
- Adds `assetPrefix` (via `ASSET_PREFIX`) so when docs pages are served
through a silent rewrite from `tldraw.dev`, their `/_next/*` assets load
from the docs origin (avoiding collisions with dotdev’s own `/_next/*`).
- Updates docs sitemap generation to be docs-only (no Framer URLs); this
sitemap is consumed by dotdev to build the single canonical
`tldraw.dev/sitemap.xml`.

## Ops notes

- Keep a stable hostname on the docs Vercel project (this becomes
`DOCS_ORIGIN_URL` on dotdev).
- Set `ASSET_PREFIX=https://<docs-origin-host>` on the docs Vercel
project (Prod + Preview).

## Test plan

- Visit `https://<docs-origin-host>/quick-start` and verify it loads and
navigates (JS/CSS assets come from the same origin).
- Verify `https://<docs-origin-host>/sitemap.xml` returns docs URLs
only.
@pull pull Bot locked and limited conversation to collaborators May 19, 2026
@pull pull Bot added the ⤵️ pull label May 19, 2026
@pull pull Bot merged commit 1d99b68 into code:main May 19, 2026
@pull pull Bot had a problem deploying to bemo-canary May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to npm deploy May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-production May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to npm deploy May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to bemo-canary May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to vsce publish May 19, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging May 19, 2026 15:13 Error
@pull pull Bot had a problem deploying to deploy-staging May 20, 2026 00:53 Failure
@pull pull Bot temporarily deployed to e2e-dotcom May 20, 2026 02:38 Inactive
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants