fix(share): the felt-change share text carries a resolvable lesson URL #91
No reviewers
Labels
No labels
backend
bug
completed
documentation
duplicate
enhancement
feature
frontend
good first issue
help wanted
in-progress
invalid
performance
phase-1
Phase1
Phase2
Phase3
planning
question
refactor
security
test
testing
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Kalle/ATM!91
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/share-felt-change-url"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Plan
Make the share-the-felt-change flow actually deliver a working link: the shared message must carry a resolvable public lesson URL (
<origin>/library/<lesson_id>) in both share paths.Outcome
ShareSheet.handleSharenow builds the public lesson URL and passes it as the native Web Shareurlfield (rich link card on iOS/Android) and inside the clipboard fallback text.buildShareUrl: the oldhttps?origin check rejectedtauri://localhost— the actualwindow.location.origininside the packaged Tauri app — sohandleSharewould have thrown and the native share sheet broken exactly where it matters most (desktop/mobile app). It now accepts any absolute origin (scheme + host) and still throws on schemeless/hostless garbage.Impact on release goals
Roadmap Core Platform → "Share-the-felt-change flow (viral hook)" advances: the shared message previously had no link at all (dead end, zero conversion); it now lands a recipient on the lesson. Blackbox suite 66 → 67 (0 failures). Unit suite 240 → 250 (4 new ShareSheet carrier tests, 10 share-url contract tests incl. the Tauri-origin regression).
Blackbox
python3 scripts/blackbox_test.py --target testing→ greenSix-perspectives check
Risk
Low.
buildShareUrlis only called fromShareSheet. The relaxed origin check still rejects schemeless input. Landing-page content (og:title parity, server-rendered text) is intentionally not in scope — that is open PR #87's contract (checks 14e/14f) and this branch deliberately does not duplicate or regress it; zero file overlap with #87.Checklist
dev(4017790= tip at branch time)View command line instructions
Manual merge helper
Use this merge commit message when completing the merge manually.
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.