Skip to content

Commit acd640c

Browse files
seefeldbclaude
andauthored
chore(docs): document how to install deno and related certs for agents (commontoolsinc#2030)
* Add minimal test reproducing ConflictError warnings - Identified that ~42 ConflictError warnings appear during parallel test execution - Root cause: pattern-harness.ts uses shared DID for all tests - Conflicts occur during cleanup when multiple tests dispose simultaneously - All conflicts target the same entity (of:baedr...) in shared DID space - Created minimal-conflict-repro.test.ts documenting the behavior The test file includes: - Detailed explanation of root cause - Example error output - Instructions for observing the conflicts - 20 parallel test instances (requires full suite timing to reproduce) * docs: Add Deno setup and SSL certificate troubleshooting to DEVELOPMENT.md - Added Environment Setup section with Deno installation instructions - Documented PATH configuration for ~/.deno/bin - Added troubleshooting for SSL certificate errors in CI/test environments - Included warning about --unsafely-ignore-certificate-errors flag * docs: Expand SSL certificate troubleshooting with root cause and proper fixes - Explain root cause: missing/outdated CA certificate bundles - Add proper fix: installing ca-certificates for Debian/Ubuntu/Alpine - Document environment variable workarounds (DENO_TLS_CA_STORE, NODE_TLS_REJECT_UNAUTHORIZED) - Clarify when workarounds are acceptable vs proper fixes * docs: Simplify SSL certificate section to only document proper fix Removed workarounds that bypass certificate validation. Only document the correct solution: installing ca-certificates. * Revert: Remove incorrect minimal conflict reproduction test The test was based on incorrect understanding of the issue. --------- Co-authored-by: Claude <[email protected]>
1 parent c1c0183 commit acd640c

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

docs/common/DEVELOPMENT.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,47 @@ export const set = (cache: Cache, key: string, value: string) =>
316316

317317
## Build & Test
318318

319+
### Environment Setup
320+
321+
#### Installing Deno
322+
323+
If Deno is not installed, install it using the official installer:
324+
325+
```bash
326+
curl -fsSL https://deno.land/install.sh | sh
327+
```
328+
329+
This installs Deno to `~/.deno/bin/deno`. Add it to your PATH:
330+
331+
```bash
332+
export PATH="$HOME/.deno/bin:$PATH"
333+
```
334+
335+
For persistent configuration, add this to your shell profile (`~/.bashrc`, `~/.zshrc`, etc.).
336+
337+
#### SSL Certificate Issues
338+
339+
In some CI/test environments, you may encounter SSL certificate errors when Deno downloads npm packages:
340+
341+
```
342+
error: Failed caching npm package: invalid peer certificate: UnknownIssuer
343+
```
344+
345+
This occurs when the system's CA (Certificate Authority) certificate bundle is missing or outdated. Install/update CA certificates on your system:
346+
347+
```bash
348+
# Debian/Ubuntu
349+
sudo apt-get update && sudo apt-get install -y ca-certificates
350+
351+
# Alpine Linux (common in Docker containers)
352+
apk add --no-cache ca-certificates
353+
354+
# Update certificate store
355+
sudo update-ca-certificates
356+
```
357+
358+
### Running Tests
359+
319360
- Check typings with `deno task check`.
320361
- Run linter with `deno lint`.
321362
- Run all tests using `deno task test` (NOT `deno test`)

0 commit comments

Comments
 (0)