← Commit history
SKILL.md+32−2@@ -90,8 +90,28 @@ pup_open_window {"sessionId":"sxsw-vote","profile":"sxsw","url":"https://id.sxsw ``` If the user already has a SXSW ID (ask, or check their password manager /-contacts), go to `https://id.sxsw.com/sign_in` instead, fill-`#user_email` / `#user_password`, submit, and jump to step 5.+contacts / `credential_list`), go to `https://id.sxsw.com/sign_in` instead+and jump to step 5 after signing in. **The sign-in form uses DIFFERENT ids+than signup**: `#session_email` and `#session_password` (not `#user_*`).++**Sign-in quirk (verified 2026-08-12):** trusted typing into these two+fields reports ok but leaves them EMPTY (the React form clears them), so the+submit does nothing and you sit on /sign_in with no error. Set the values in+page context instead, then submit in page context:++```js+const e=document.querySelector('#session_email'), p=document.querySelector('#session_password');+e.value='<email>'; p.value='<password>';+e.dispatchEvent(new Event('input',{bubbles:true}));+p.dispatchEvent(new Event('input',{bubbles:true}));+document.querySelector('input[type=submit]').click();+```++Success = you land on `https://id.sxsw.com/` showing "Welcome, <name>!".+Then **store the login in pup's vault** so future sessions can reuse it:+`credential_set {"host":"id.sxsw.com","username":"<email>","password":"<pw>"}`.+Do NOT rely on pup's automatic login capture for this site: in testing it did+not fire on the SXSW sign-in and the vault stayed empty until set explicitly. ### 2. Kill the cookie banner FIRST @@ -203,6 +223,16 @@ selectors. After the vote is verified, offer to help the user leave one. - Check `aria-pressed === "true"` and that `heart-open-icon` is gone (filled heart). Then `pup_reload` and check AGAIN; only a state that survives reload is a counted vote. Do not report success without the post-reload check.+- **The AUTHORITATIVE check is the "My votes" filter**, not the heart. On the+ catalog page (`.../page/community-voting`), tick the "My votes" checkbox+ (find the `<label>` containing "My votes", then click its input in page+ context) and confirm the result count includes this panel. Verified+ 2026-08-12: a freshly signed-in browser can render the detail-page heart as+ UNVOTED (`aria-pressed="false"`) even though the vote IS recorded+ server-side, because that heart doesn't always hydrate from the user's+ profile. The "My votes" list is read from the account and told the truth+ (exactly 1 proposal: ours). If the heart looks unvoted, CHECK THIS BEFORE+ clicking again, or you will toggle the user's real vote OFF. - `pup_screenshot`, show the user the filled heart (shotlog channel or send the file), and flash the pup window's taskbar so they can admire it. - Encourage them to share the public panel link with friends (every SXSW
package.json+1−1@@ -1,7 +1,7 @@ { "name": "sxsw-vote", "slug": "sxsw-vote",- "version": "1.0.3",+ "version": "1.0.4", "type": "skill", "dependencies": {}, "scripts": {
page.json+43@@ -11,5 +11,48 @@ "hero": { "type": "image", "path": "docs/hero.png"+ },+ "name": "sxsw-vote",+ "slug": "sxsw-vote",+ "version": "1.0.4",+ "type": "skill",+ "dependencies": {},+ "scripts": {+ "install": "./install.sh",+ "uninstall": "./uninstall.sh"+ },+ "description": "Your AI clicks the heart for you: casts your SXSW PanelPicker vote for the Adom panel, newbie-friendly ab+pup install included. Deadline Aug 23, 2026.",+ "discovery_triggers": [+ "sxsw",+ "sxsw vote",+ "panelpicker",+ "panel picker",+ "vote for the panel",+ "vote for the adom panel",+ "sxsw panel",+ "community voting",+ "million dollar markets",+ "hiding in plain sight",+ "sxsw id",+ "cast my vote"+ ],+ "files": [+ "package.json",+ "README.md",+ "SKILL.md",+ "install.sh",+ "uninstall.sh"+ ],+ "discovery_pitch": "Cast your one SXSW PanelPicker community vote for the Adom panel, fully automated by your AI (deadline Aug 23, 2026).",+ "sample_prompts": [+ {+ "label": "Cast my vote",+ "prompt": "Install and follow the skill at https://wiki.adom.inc/adom/sxsw-vote, then cast my SXSW PanelPicker vote for the Adom panel \"The Million-Dollar Markets Hiding in Plain Sight\". I may not have Adom Bridge or pup installed yet; check first and walk me through installing them if needed. Use my real name and my @adom.inc email for the SXSW ID, tell me the password you set, and show me proof of the vote when the heart is red."+ }+ ],+ "org": "adom",+ "author": {+ "name": "John Lauer",+ "email": "[email protected]" } }