Skip to content

Add read-only public sharing for scenarios#80

Merged
kcdragon merged 1 commit into
mainfrom
share-readonly-scenario
Jul 1, 2026
Merged

Add read-only public sharing for scenarios#80
kcdragon merged 1 commit into
mainfrom
share-readonly-scenario

Conversation

@kcdragon

@kcdragon kcdragon commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Scenario owners can now generate a revocable public link that renders a read-only summary of their giving plan (name, totals, allocation breakdown with chart, and owner attribution) at /public/scenarios/:token with no login required and scoped to the org subdomain for tenant isolation. Sharing is off by default and managed from a Share modal opened via a button aligned with the scenario name, where the owner can create, copy, regenerate, or stop the link; disabling makes the old link 404. The already read-only "Summary" panel was extracted into a shared partial reused by both the authenticated page and the public view. Adds a share_token column plus enable/regenerate/disable model methods, a namespaced public/scenarios controller, a scenarios/share resource, and a small clipboard Stimulus controller. Also defaults integration tests to the tenant host in test_helper.rb, removing repeated host! calls across controller tests.

🤖 Generated with Claude Code

Let scenario owners generate a revocable public link that renders a
read-only summary of their giving plan (name, totals, allocation
breakdown, chart, owner attribution) at /public/scenarios/:token with no
login required. Sharing is off by default and managed from a Share modal
opened via a button aligned with the scenario name; disabling the link
makes it 404. Also defaults integration tests to the tenant host in
test_helper to remove repeated host! calls.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kcdragon kcdragon merged commit b44ce0e into main Jul 1, 2026
5 checks passed
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