Skip to content

Fix hello-message id enumeration; gate settings tab by permission - #11

Merged
pikann merged 2 commits into
masterfrom
fix/jsonbody-tinygo-collision
Sep 14, 2026
Merged

pikann merged 2 commits into
masterfrom
fix/jsonbody-tinygo-collision

Conversation

@pikann

@pikann pikann commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Summary

Two related hardening changes to the example plugin:

  1. Existence oracle fixdeleteHello returned a distinguishable 403 for "this id exists but belongs to another project" vs. 404 for "this id doesn't exist at all", letting a caller enumerate valid ids across every project one probe at a time. The delete is now scoped to project_id directly, so both cases return an identical 404.
  2. New custom permission — added example.manage and gated the Hello Project Settings tab behind it, demonstrating a plugin-specific custom permission on a project.settings.tab extension point. The sidebar/task-detail/view Hello surfaces are left ungated on purpose, matching their existing read/write bar (projects.write for mutations).

Also bumps the plugin's patch version in plugin.json.

Verification

go test ./... and go vet ./... pass, including a new regression test for the existence-oracle fix.

🤖 Generated with Claude Code

pikann and others added 2 commits September 14, 2026 08:32
…ssion

deleteHello returned a distinguishable 403 for "id exists but belongs
to another project" vs. 404 for "id doesn't exist", letting a caller
enumerate valid ids across every project one probe at a time. Both
cases now scope the DELETE itself to project_id and return an
identical 404.

Also adds a new example.manage custom permission and gates the Hello
Project Settings tab behind it; the sidebar/task-detail/view surfaces
stay open to any project member on purpose.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@pikann
pikann merged commit 1965a81 into master Sep 14, 2026
3 checks passed
@pikann
pikann deleted the fix/jsonbody-tinygo-collision branch September 14, 2026 09:29
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.

1 participant