Skip to content

docs: add Phase 19 someguy IPNS performance baselines#336

Merged
FSM1 merged 3 commits into
mainfrom
docs/phase-19-baselines
Mar 23, 2026
Merged

docs: add Phase 19 someguy IPNS performance baselines#336
FSM1 merged 3 commits into
mainfrom
docs/phase-19-baselines

Conversation

@FSM1

@FSM1 FSM1 commented Mar 23, 2026

Copy link
Copy Markdown
Owner

Summary

Captures performance baselines for the someguy IPNS sidecar deployment, comparing against Phase 18 Kubo-direct baselines and delegated-ipfs.dev.

Key findings:

  • 12x throughput improvement over Phase 18 (1.25 → 15.28 ops/s)
  • Error rate eliminated (4.6% → 0%)
  • Warm DHT someguy beats delegated-ipfs.dev by ~40-50% on median latency
  • All 83 SDK E2E tests pass on both local and staging

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation

    • Updated release versioning and deployment tag conventions
    • Added performance baseline documentation
  • Chores

    • Cleaned up obsolete planning documents

FSM1 and others added 2 commits March 23, 2026 15:10
Captures SDK E2E (83/83 pass) and load test results comparing
someguy sidecar vs delegated-ipfs.dev vs Phase 18 Kubo-direct baselines.

Key findings:
- 12x throughput improvement over Phase 18 (1.25 → 15.28 ops/s)
- Error rate eliminated (4.6% → 0%)
- Warm DHT someguy beats delegated-ipfs.dev by ~40-50% on median latency

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Entire-Checkpoint: d80496e88078
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Entire-Checkpoint: 04750e4993a4
@coderabbitai

coderabbitai Bot commented Mar 23, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@FSM1 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 10 minutes and 58 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 33757608-24dd-4d09-bcdd-7d758d845529

📥 Commits

Reviewing files that changed from the base of the PR and between b4c5325 and da49558.

📒 Files selected for processing (1)
  • tests/load/.gitignore

Walkthrough

The PR updates release and versioning documentation to reflect new GitHub Release tag formats (cipher-box-vX.Y.Z instead of vX.Y.Z) and modifies the staging-deploy trigger pattern from v*-staging* to staging-v*. It also adds a comprehensive performance baseline document for Phase 19 Someguy IPNS and removes an associated investigation todo.

Changes

Cohort / File(s) Summary
Release & Versioning Documentation
.claude/claude.md
Updated tag naming conventions: GitHub Release tags now use cipher-box-vX.Y.Z format, and staging-deploy triggers now match staging-v* pattern instead of v*-staging*. Documented the rc-N counter requirement and rationale for the staging prefix.
Performance Baseline & Planning
.planning/baselines/19-someguy-ipns-baselines.md
Added new Phase 19 Someguy IPNS performance baseline document recording test metadata, configuration fixes, E2E test results (83/83 pass rate), detailed load test outcomes, operational observations, new Prometheus metrics, and future comparison targets for Phase 22.
Removed Investigation Task
.planning/todos/pending/2026-03-23-investigate-someguy-ipns-routing-failure-locally.md
Deleted planning todo documenting investigation steps for a previously identified Someguy IPNS routing hang issue.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding Phase 19 someguy IPNS performance baselines documentation, which is clearly reflected in the new file added.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/phase-19-baselines

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Entire-Checkpoint: 05da4f1ecc5f
@FSM1 FSM1 requested a review from Copilot March 23, 2026 14:27
@FSM1 FSM1 merged commit 11331ed into main Mar 23, 2026
25 checks passed

Copilot AI left a comment

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.

Pull request overview

Adds Phase 19 documentation capturing IPNS performance baselines for the “someguy” sidecar deployment and updates internal release/deploy tag conventions, while cleaning up an obsolete planning todo.

Changes:

  • Add Phase 19 “someguy” IPNS performance baseline write-up (E2E + load test results, config deltas, metrics).
  • Update .claude/claude.md release/staging tag convention documentation.
  • Ignore load-test metrics JSON outputs and remove an obsolete pending planning doc.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
tests/load/.gitignore Ignores generated metrics-*.json artifacts from load tests.
.planning/todos/pending/2026-03-23-investigate-someguy-ipns-routing-failure-locally.md Removes an obsolete investigation todo document.
.planning/baselines/19-someguy-ipns-baselines.md Adds Phase 19 baseline results and observations for someguy sidecar performance.
.claude/claude.md Updates release-please tag naming and staging tag trigger convention documentation.

Comment thread .claude/claude.md
- When that PR is merged, Release Please creates a GitHub Release and `cipher-box-vX.Y.Z` tag (root package uses `include-component-in-tag: true` because release-please's multi-package release scanner cannot match bare `v{version}` tags to the root path)
- Version bumps propagate to all `package.json` files, `Cargo.toml`, and `tauri.conf.json` via `release-please-config.json`
- Staging deploys are triggered by pushing a tag matching `v*-staging*`. Legacy tags (e.g., `v0.1.0-staging.1`) also match but the **recommended convention** for new tags is `v<version>-staging-rc-<N>` (e.g., `v0.1.2-staging-rc-1`, `v0.1.2-staging-rc-2`). The `rc-N` suffix is a sequential counter allowing multiple staging deploys per version.
- Staging deploys are triggered by pushing a tag matching `staging-v*` (e.g., `staging-v0.26.0-rc-1`). The `staging-` prefix avoids collision with release-please's `v{version}` tag pattern — previous `v*-staging*` format caused release-please to match staging pre-releases to the root package path, blocking tag creation. The `rc-N` suffix is a sequential counter allowing multiple staging deploys per version.

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

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

The staging tag example/tag pattern here doesn’t match the actual tag generated by .github/workflows/tag-staging.yml: that workflow builds STAGING_TAG="staging-${TAG}-rc-${N}", and TAG is the full release tag (e.g. cipher-box-v0.26.4). As written, readers may create staging-v... tags that differ from what the automation produces; please update the docs/example to reflect the real tag format (or adjust the workflow to match this documented format).

Suggested change
- Staging deploys are triggered by pushing a tag matching `staging-v*` (e.g., `staging-v0.26.0-rc-1`). The `staging-` prefix avoids collision with release-please's `v{version}` tag pattern — previous `v*-staging*` format caused release-please to match staging pre-releases to the root package path, blocking tag creation. The `rc-N` suffix is a sequential counter allowing multiple staging deploys per version.
- Staging deploys are triggered by pushing a tag matching `staging-\${TAG}-rc-\${N}` where `TAG` is the full release tag (e.g., `cipher-box-v0.26.4`, yielding `staging-cipher-box-v0.26.4-rc-1`). The `staging-` prefix avoids collision with release-please's `v{version}` tag pattern — previous `v*-staging*` format caused release-please to match staging pre-releases to the root package path, blocking tag creation. The `rc-N` suffix is a sequential counter allowing multiple staging deploys per version.

Copilot uses AI. Check for mistakes.
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.

2 participants