45 Commits

Author SHA1 Message Date
Oliver Hofmann
badb2f698d fix: use hover() instead of click() to trigger Teams profile hover card 2026-05-17 15:07:37 +02:00
Oliver Hofmann
00bbd196bf fix: click avatar/author via element handles, prevent wild scrolling 2026-05-17 15:03:16 +02:00
Oliver Hofmann
2caffab1fa fix: split profile card wait into container + email; add diagnostic output 2026-05-17 14:59:46 +02:00
Oliver Hofmann
a7835c3057 fix: re-prime on chat switch; native Playwright click for profile cards 2026-05-17 14:56:02 +02:00
Oliver Hofmann
196acbac47 chore: add .gitignore, update spec with correct Python version 2026-05-17 14:47:32 +02:00
Oliver Hofmann
a492e391ce feat: installable package with teampulse entry point 2026-05-17 14:46:16 +02:00
Oliver Hofmann
1cbeb5e41c feat: startup banner and improved --help description 2026-05-17 14:38:16 +02:00
Oliver Hofmann
47f8b44330 feat: --history flag to include existing messages at script start 2026-05-17 14:34:25 +02:00
Oliver Hofmann
6e06d624df feat: skip existing messages on start, only process new ones 2026-05-17 14:32:39 +02:00
Oliver Hofmann
f6d52f8011 fix: remove early !start hint that appeared before chat recognition 2026-05-17 14:28:45 +02:00
Oliver Hofmann
43d9490b22 fix: single-line chat title, faster spinner, scroll to bottom before poll 2026-05-17 14:21:17 +02:00
Oliver Hofmann
952606cf7e feat: spinner, clean output, multi-cycle loop after !stop 2026-05-17 14:15:11 +02:00
Oliver Hofmann
537f5a52e5 fix: walk message-author-name + chat-pane-message as siblings in document order 2026-05-17 14:05:51 +02:00
Oliver Hofmann
19c5b2ce17 debug: check if message-author-name is inside or outside chat-pane-message 2026-05-17 14:02:56 +02:00
Oliver Hofmann
b69398803c fix: catch KeyboardInterrupt for clean Ctrl+C exit 2026-05-17 13:59:52 +02:00
Oliver Hofmann
24cbea0c97 debug: add DOM element counts per poll for diagnosis 2026-05-17 13:58:03 +02:00
Oliver Hofmann
22c6e8febc fix: use getBoundingClientRect for visibility; DOM-based chat title logging 2026-05-17 13:53:03 +02:00
Oliver Hofmann
8531eb2f02 feat: log URL on chat switch for easier debugging 2026-05-17 13:47:12 +02:00
Oliver Hofmann
eb5d2bb4a2 fix: filter hidden DOM elements (offsetParent) to ignore cached SPA panes 2026-05-17 13:45:47 +02:00
Oliver Hofmann
8c91d8839e fix: remove broken hash-URL navigation, stay on Teams main as fallback 2026-05-17 13:39:07 +02:00
Oliver Hofmann
a4727454b9 fix: use raw string for _POLL_JS to avoid Python escape warnings 2026-05-17 13:36:53 +02:00
Oliver Hofmann
ed3bff76e5 fix: robust text extraction for chat messages + debug output 2026-05-17 13:35:31 +02:00
Oliver Hofmann
ad0ed7528c fix: escape newline in JS string literal (\n vs literal newline) 2026-05-17 13:28:58 +02:00
Oliver Hofmann
98274d0917 fix: reconnect re-waits for chat; fallback to chat list on join lobby 2026-05-17 13:23:49 +02:00
Oliver Hofmann
2fee448e0b fix: extract message text from p elements in private meeting chat 2026-05-17 13:15:03 +02:00
Oliver Hofmann
ccfe47aa35 feat: support channel meetings with channel-pane-message selectors 2026-05-17 13:04:20 +02:00
Oliver Hofmann
3ff8381e5a feat: accept !start name without quotes, strip typographic quotes 2026-05-17 12:35:44 +02:00
Oliver Hofmann
e1485e72f0 fix: stay on Teams main instead of navigating to meet join URL 2026-05-17 12:18:23 +02:00
Oliver Hofmann
3a993bc741 fix: extract Teams URL via regex to support 'Teilnahmeinfos kopieren' format 2026-05-17 12:15:24 +02:00
Oliver Hofmann
83642b2b8d fix: retry username detection with split on 'von'/'of' and length validation 2026-05-17 12:12:15 +02:00
Oliver Hofmann
7c6aa4ccd7 fix: disable pyc caching in start.sh to prevent stale bytecode 2026-05-17 12:09:39 +02:00
Oliver Hofmann
2c948914ea fix: load Teams main before meeting URL to resolve username 2026-05-17 12:03:05 +02:00
Oliver Hofmann
01785d6ddc feat: auto-detect meeting URL from argument or clipboard 2026-05-17 11:52:56 +02:00
Oliver Hofmann
72aff02a9b feat: add start.sh and PyCharm run configuration 2026-05-17 11:49:23 +02:00
Oliver Hofmann
d67a6c2a83 fix: update DOM selectors from live Teams Web inspection 2026-05-17 11:46:49 +02:00
Oliver Hofmann
3fcd457639 feat: main entry point wiring all components 2026-05-17 11:24:09 +02:00
Oliver Hofmann
f1a021dedd feat: Playwright session management with login detection 2026-05-17 11:24:01 +02:00
Oliver Hofmann
290bb553a4 feat: browser-based email extraction from Teams profile cards 2026-05-16 17:28:52 +02:00
Oliver Hofmann
3332592bef feat: trigger parsing for !start and !stop commands 2026-05-16 17:22:55 +02:00
Oliver Hofmann
7758eb21fa feat: resolver cache layer 2026-05-16 17:20:17 +02:00
Oliver Hofmann
08db8b8fb1 feat: memo generation with filtering and sorting 2026-05-16 17:17:44 +02:00
Oliver Hofmann
239654767a feat: add shared data models 2026-05-16 17:17:06 +02:00
Oliver Hofmann
ade939c9cb feat: project scaffold with dependencies 2026-05-16 17:16:24 +02:00
Oliver Hofmann
658ec75274 Add TeamPulse implementation plan 2026-05-16 17:12:50 +02:00
Oliver Hofmann
3ba945f283 Add TeamPulse design spec
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 17:05:58 +02:00