Replaces the 2 ad-hoc subtasks (Verification items, WP1 report) with all
6 work packages/milestone from the CRM Research tab's timeline, so the
full plan is visible from Tasks too, not just CRM Research. Preserved the
verification-items detail and WP1 submission date as notes/reports.
Six-row plan (WP1-5 + Final Review milestone) above the vendor comparison
table, with a Completed column -- WP1 (Requirements Definition) marked
done today.
Currently no open items, just a note about the manual monthly sync step
(next run 2026-09-01). Also hardens buildTaskDetail/buildTaskSidebarCard
for entries with zero subtasks: shows "No open items right now" instead of
an empty table, and "No open items" instead of a misleading "All done" in
the sidebar summary chip.
Replaces the single consolidated card with one entry per track: LinkedIn
(EOM Report), Outreach, Department Dash, Demographics, Mail Merge
Interface, CRM Research. Weekly Task card (Peter's sheet) untouched. Uses
the same card/subtask mechanism as before, just one entry per agent
instead of one shared entry. Mail Merge Interface's note flags the
undecided email-finding ownership between Outreach and Mail Merge.
Nine open items spanning multiple tracks (July EOM Report, PE-company
LinkedIn sends, Outreach Board stage-tracking, Mail Merge email gap,
Demographics wiring, SPIE data anomaly, duplicate file cleanup, CRM
Research verification items, CRM Research WP1 report). Holds off on a
possible 10th item (CRM Research naming one final recommended CRM) per
Mckinley's note that it may be a misunderstanding still being confirmed
directly with that session.
The shared .drill-view .narrative rule capped text at 60ch, which only
Conferences had overridden with max-width: none. Removed the cap globally
instead of overriding it per-view, and dropped the now-unneeded Conferences
override. Also removes the leftover "[Placeholder narrative — edit me.]"
markers from Marketing, Social Media, Sales, and Market Intelligence.
Checked the 12 PE companies against the SPIE 2026 presenter list (137
total) -- zero matches, confirmed against both the cleaned 131-count and
raw 137-count. Likely a scope mismatch (SPIE O&P skews academic/photonics,
not power-semiconductor industry) -- flagged as worth raising with Peter
directly rather than an outreach gap.
Removed the trailing "Decided by Mckinley..." sentence from the GaN
Systems/Infineon correction note. Reports now points to the updated Phase 1
contact list (~/Downloads/Updated_Contact_List_Phase1_Mckinley.xlsx).
Mckinley confirmed all 12 companies have a verified contact, role, LinkedIn,
website, and CEO name. SPIE attendees is no longer blocked as a result, but
stays open until its own check is actually done.
Relayed via the cross-session tracker: GaN Systems has been a wholly-owned
Infineon subsidiary since 2023, so the PE companies count is 11 independent
companies + 1 additional Infineon business line, not 12 distinct companies.
Named contact: Kai Ha, Reliability Engineering Manager (Ottawa).
Each week/single-task card now carries its own notes and reports arrays,
rendered alongside its task table in the detail panel -- add items to a
TASKS_DATA entry's notes/reports array as they come in, rather than one
shared Notes/Reports section for the whole tab.
Each task arrival (a full week's sheet, or sometimes a single one-off task)
is now its own card in a left-hand list; selecting one shows its full detail
on the right, reusing the same .ab-card/.ab-outreach-list/.ab-outreach-detail
styling as the Directory tab for visual consistency. Also drops the
placeholder narrative text under Notes and Reports.
A new task sheet arrives roughly weekly, so instead of one table that gets
overwritten, Weekly Tasks is now a running list of per-week cards (starting
with Week of 17-21 Aug 2026) -- add a new card each week rather than
replacing the last one.
New sidebar entry between Team and Directory, listing Peter's current
weekly task sheet (PE companies, SPIE attendees, message draft, CRM IPP,
LinkedIn posts), plus placeholder Notes and Reports sections to fill in
going forward.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Cron changed from every Monday (0 6 * * 1) to the 1st of every month
(0 6 1 * *), next run 2026-09-01. Updated the tracked config.json,
its README, and the dashboard's own description text to match.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
From the CRM Research session: replaces the plain comparison table with a
richer one (origin, catch column), adds a full Requirements page (must-have/
nice-to-have, other names looked at, sources) and a new Pricing page,
following the same hero-nav + drill-view pattern as Marketing/Sales. Adds
click-triggered info-badge popovers for contested/unverified facts (Zoho's
EU/DPA tier, Capsule's IMAP support, etc.), replicating the info_popover()
pattern from linkedin_analytics as vanilla JS since this dash has no Dash
runtime. Also adds CRM_Research_README.md documenting the whole section,
and tracks CRM_Research_Notes.md's latest revisions.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Matches the Marketing "Conferences" hero-nav pattern: appears only when
the CRM Research tab is active, jumps straight to the Notes drill-view.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Matches the Marketing/Sales breadcrumb pattern: the comparison table stays
on the root view, "Notes ->" drills into a dedicated sub-page linking out
to CRM_Research_Notes.md, with back navigation and breadcrumbs. Left
CRM_Research_Notes.md's own changes uncommitted — that file belongs to the
CRM Research session.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Left untracked since the presenter restructure work earlier this week;
committing it now so it's preserved in Gitea rather than only on this Mac.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
New nav-group below the main tabs (Team/Directory/Marketing/Sales/
Opportunities), separated by a divider since it's a newer, separate
initiative. Links out to CRM_Research_Notes.md, which already existed
with real requirements/candidate-survey content from ongoing research.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Replaces the free-text From field with a select of real working addresses
(mblack@txproducts.de, now the default; mckinley@mckinleyblack.com kept for
internal test sends), deduplicating the 8 render_template("index.html", ...)
call sites into a single render_index() helper along the way. Also picks up
today's real outreach-log entry from testing the reconnect_message send to
Peter's actual address.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- opportunities/README.md: what's in the folder, how to update the
OPPORTUNITIES/SCOUT_RESULTS data, and the fetch-based loading
architecture (why it's separate from the index.html monolith and
what that means for anyone editing it)
- Root README.md was still describing four branches with no mention
of Opportunities at all — added it as the fifth
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- opportunities/: opportunities.html (markup), opportunities.js (calendar,
event list, scout list, drill-view logic), opportunities.css — loaded by
index.html via fetch + dynamic <script>, replacing the inline copy that
used to live directly in the monolith
- Shared shell (index.html) no longer hardcodes Opportunities-specific
drill-view config; the module registers itself into HERO_NAV_BY_TAB /
DRILL_CONFIG / DRILL_DEFAULT_VIEW at load time, and setDrillView now
tolerates scopes that haven't registered yet
- agents/conference-scout/: the scheduled cloud routine's actual definition
(schedule, model, tools, full prompt) as a tracked config.json, plus a
README covering where it really runs (Anthropic's cloud, no server-side
component here), how to keep it in sync, how to recreate it if deleted,
and its current WebFetch/egress limitation
Team/Directory/Marketing/Sales remain inline in index.html for now — a
separate, larger pass given their size and interdependencies.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- New sidebar tab: side-by-side Events list and month calendar, with
multi-day event bars spanning their date range (title + location)
- Events: SPIE Optics + Photonics 2026, SEMICON Europa 2026
- New Conference Scout drill-view, hero button, and dedicated page
wired to a scheduled cloud routine that sweeps the web weekly for
conferences/seminars/networking events relevant to TXproducts
(semiconductors, power electronics GaN/SiC, X-ray optics,
photon/nanoscience, synchrotron/beamline science, and defense/
aerospace prospecting), syncing results in for manual review
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Selected panel now mirrors the contact list's width and stays in sync via a
pageshow reset and refreshSelectedList(). Contact rows drop the raw email/
conference/draft-opened clutter in favor of just name and company. Also
sorts the contact list alphabetically and clears out test-drafting noise
that had accumulated in the dash's Outreach Log during today's debugging.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
conference_contacts.xlsx is now the single working file behind both the dash's
Download button and the mail-merge tool -- populated with all 139 SPIE 2026
presenters (not just ones with emails already found), so Peter can fill in
emails as he meets people at the conference. Also adds a second message
template (reconnect_message) alongside the existing wavegate_focus one, and
a search/scroll UI for the contacts list now that it's no longer a handful
of rows.
Wires the Sales & Marketing dash's presenter cards directly into the mail-merge
tool: Compose Email now opens a real Mail.app draft via localhost:8505 (merged
template, attachments, signature intact), and logs the outreach automatically
back into both conference_contacts.xlsx and the presenter's Outreach Log.
Builds a person-first presenter directory across all four SPIE Optics + Photonics 2026
sub-conferences Peter is attending, plus a curated cross-conference itinerary with
deep-dive partnership angles and value-tag (Money/Idea/Connector/Collaborator) filtering
for the shortlist of contacts worth meeting in person.
Fixes the logo not displaying when the file is copied/downloaded
standalone (e.g. the Nextcloud snapshot), since it no longer depends
on an assets/ folder sitting alongside it.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Department shell (Team / Directory / Marketing / Sales) with the
Directory's Outreach Board, plus 12 of 25 boss's Phase 1 targets
researched so far.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>