23 Commits
Author SHA1 Message Date
beantownbabe 297d4fa53d Correct Infineon's contact to the real warm relationship
Mckinley clarified directly: the actual contact to use for Infineon
is Sabine E. Herlitschka (CEO, Infineon Technologies Austria AG) - not
the cold-outreach reliability engineer. Peter knows her personally and
she already follows TXproducts on LinkedIn, making her the #1 easiest
contact in the whole PE set, not just a footnote.

No email/LinkedIn URL attached since this goes through an existing
relationship, not a cold channel. Preserved the original engineer
contact (Yuhong Chen) in the notes as a secondary/fallback technical
contact rather than discarding it. Synced from prospect_scout.json
into index.html's embedded array; verified via jsdom.
2026-09-02 09:52:14 +02:00
beantownbabe f1f0d23e7e Embed Edit Existing Prospect panel directly in the dashboard
Mckinley wants Edit in the dash itself, not the separate localhost
page - the earlier split (Add embedded, Edit stays remote) didn't
hold. Built the same picker -> field -> current-value -> new-value ->
submit flow as Input Interface's standalone page (reused their exact
UX pattern, restyled to match this dashboard), calling their JSON API
via absolute URLs (this page isn't served by their Flask app, so
relative paths from their reference wouldn't resolve):

  GET  http://localhost:8507/prospect-scout/api/entries
  GET  http://localhost:8507/prospect-scout/api/entries/<id>
  POST http://localhost:8507/prospect-scout/api/edit

Category field swaps to a select (matching the 6 known categories)
instead of free text, same as their reference. Editing contact_email
shows the same "counts as human confirmation" hint. Viewing the
dashboard stays fully static/dependency-free; only Add and Edit
require the backend running, same trade-off already accepted for Add.

Verified via jsdom with a stubbed backend: entry list loads, field
list populates per entry, current value fetches and displays, email
hint shows correctly, category field renders as a select with the
right value pre-selected, submit posts and updates status, and none
of the existing 73 rendered cards regressed.
2026-09-01 18:34:24 +02:00
beantownbabe b34b75224b Embed Add Prospect form on the dashboard, styled to match
Input Interface's plain form (category/name/submitter, POSTs to their
localhost:8507 backend) placed at the top of the Prospect Scout tab,
above the methodology accordion. Restyled to match this dashboard's
design system (--navy/--border/--surface tokens, .panel conventions)
rather than leaving it as unstyled plain markup. Category options use
&amp; entities to match this file's existing convention (their raw
markup had literal & characters).

Kept their submit/validation logic as-is, just reworded the success
message to be explicit that a new entry won't appear in the rendered
grid until the next JSON merge runs (Input Interface flagged this gap
directly; addressed it as a clearer status message rather than
building live-sync, since periodic merge is the established pattern
for this whole integration).

Verified via jsdom: exact 6-category option match, button
enable/disable logic, and the network-failure status path all work;
no regression to the existing 73 rendered cards or the methodology
accordion.
2026-09-01 18:17:34 +02:00
beantownbabe e9b8cd84d6 Pull Input Interface's round-trip test, add badge support for form entries
prospect_scout.json only differed by a trailing-newline formatting
change from their tested add+edit round trip (test entry was cleanly
removed after, still 73/73 unique ids) — restored the newline for
consistency, no content changed.

Proactively added source-badge support for their new
"Input Interface (Peter/Mckinley)" convention (renders as "Added via
form" in blue) plus a generic color fallback for any future unknown
source value, so the next real form submission doesn't render with
invalid CSS. Verified via jsdom by simulating a form-added entry.
2026-09-01 16:58:06 +02:00
beantownbabe bf48138dd2 Add stable ids to all 73 Prospect Scout entries
Input Interface flagged that name-based matching is the same class
of fragility they already had to fix for Tasks (added real ids there
after hitting duplicate-name risk). Adding it here proactively rather
than waiting to hit the same problem: every entry in prospect_scout.json
and index.html's embedded PROSPECT_RESULTS array now carries a stable
id ("ps-" + 8 hex chars), generated once and mirrored identically into
both files. Verified: 73/73 unique ids, all matched by name during
the one-time migration, both files still parse/render correctly
(73 cards, Nexperia's full enrichment intact).

Input Interface's new add/edit form will key on this id going forward
instead of matching by name.
2026-09-01 16:35:49 +02:00
beantownbabe 264d7804d8 Collapse Prospect Scout's methodology note into an expandable accordion
Was always-visible text pushing the actual entries down the page.
Wrapped it in the same acc-header/acc-body pattern already used in
the Sources tab (collapsed by default, click to expand) instead of
inventing a new UI pattern or moving it to a separate page. The
render function's existing target element (#prospect-scout-note)
just moved inside the new collapsible body, so no JS logic changed
beyond the wrapping markup. Verified with jsdom: collapsed by
default, content populates correctly, click opens/closes it.
2026-09-01 10:58:25 +02:00
beantownbabe ed83f8ae7c Commit Outreach's contact enrichment + PE priority ranking data
All 73 entries now have ceo/contact_person/contact_role/contact_email/
contact_linkedin/notes filled in (was sitting as an uncommitted local
edit). The 17 Power Electronics entries also carry priority_rank,
priority_tier, materials, and ranking_rationale. Now merged into the
live dashboard (see previous commit).
2026-08-31 16:01:19 +02:00
beantownbabe ac7c856045 Wire dashboard to Outreach's full contact enrichment + PE priority ranking
Merged prospect_scout.json's newly populated fields into index.html's
embedded PROSPECT_RESULTS array (matched by name, all 73 matched):
ceo, contact_person, contact_role, contact_email, contact_linkedin,
updated notes, and for the 17 Power Electronics entries: priority_rank,
priority_tier, materials, ranking_rationale.

Kept the dashboard as a single self-contained file (same pattern as
the earlier notes merge) rather than having it fetch the JSON live,
since that would add a two-file sync dependency and file:// CORS risk
with no benefit over the existing merge workflow.

Render changes:
- Each card now shows a contact block (CEO, contact person + role +
  LinkedIn link, email) when present.
- contact_email is parsed to split the address from its
  "[UNVERIFIED PATTERN GUESS...]" caveat (both variants Outreach used);
  the caveat renders as a visible red warning line, not hidden behind
  a click, per the explicit ask that it not read as confirmed contact
  info.
- Power Electronics cards get a colored priority-tier badge (Tier 1-4)
  and a materials badge (SiC/GaN/Both), and the category is now sorted
  by priority_rank so the ranking is visually meaningful instead of
  just a stored number.
- ranking_rationale renders inline on ranked cards.

Verified with jsdom: PE sort order matches rank 1-17, a fully enriched
card (Nexperia) renders every field correctly including the caveat,
a no-rank card (SweGaN) renders contact info without tier/materials
badges, and a no-contact-person card (PCsemic) degrades gracefully.
2026-08-31 16:00:43 +02:00
beantownbabe d4222b4e35 Surface Outreach's per-entry contact research notes as a flag badge
Outreach finished enriching all 73 prospect_scout.json entries with
named contacts (60/73) and per-entry verification notes (unconfirmed
LinkedIn matches, SK Siltron's Michigan facility closure, leadership
instability at a couple of WBG manufacturers, entries where no
contact was found). Merged the notes field from prospect_scout.json
into index.html's PROSPECT_RESULTS array (matched by name, all 73
matched cleanly) and generalized the existing correction badge into
a combined flag badge: shows a "Dashboard correction" section and/or
a "Contact research note" section depending on what each entry has.
Verified via jsdom: badge appears and opens correctly for a
notes-only entry (SK Siltron CSS) and a both-correction-and-notes
entry (GaN Systems).
2026-08-22 15:55:34 +02:00
beantownbabe e0f9154fb2 Rename division field to category throughout, matching Peter's terminology
Peter's own Phase 1 Contact List uses "Category" for this same concept.
Since this system extends his framework rather than replacing it, his
term wins. Renamed in index.html (all 73 PROSPECT_RESULTS entries, the
render function's byCategory/order variables, and visible UI text) and
in prospect_scout.json (top-level "divisions" -> "categories", each
entry's "division" -> "category"). The 6 category values themselves
are unchanged. Verified with a real DOM render afterward: all 6 panels
and 73 cards still render correctly.
2026-08-22 13:43:38 +02:00
beantownbabe 441c3e7936 Switch correction callout from hover to click-to-open popup
Hover tooltips (native title attribute) are unreliable on small
icons and inconsistent with this dashboard's existing info-popup
pattern (click to open, click outside to close, e.g. the "What is
a vertical?" tips). Added toggleTipEl() as a companion to the
existing id-based toggleTip() for dynamically created elements,
and rebuilt the correction badge as a positioned popup using it.
Verified end-to-end with a real DOM (jsdom): click opens the tip,
click again or click outside closes it.
2026-08-22 11:02:37 +02:00
beantownbabe 2cb0319cbb Note the GaN Systems/Transphorm correction in prospect_scout.json too
Keeps the JSON master list in sync with the dashboard's new hover
callout badges for these two corrected entries.
2026-08-22 10:49:28 +02:00
beantownbabe 01aa0ae182 Add hover callout badge for corrected Prospect Scout entries
Yellow circle with a question mark on any card that had a factual
error fixed, showing what changed on hover (native title tooltip).
Applied to GaN Systems and Transphorm, whose acquirers were swapped
in an earlier pass and corrected after web-search verification.
2026-08-22 10:48:38 +02:00
beantownbabe 532546a082 Add prospect_scout.json as the master list for CEO/contact enrichment
Exported from the live Prospect Scout dashboard data (73 entries,
6 divisions): name, location, website, source, and reason are
populated; ceo/contact_person/contact_role/contact_email/
contact_linkedin/notes are empty placeholders ready to fill in next.
2026-08-22 10:43:28 +02:00
beantownbabe f6c01c1a0e Add website links to every Prospect Scout card, fix acquisition mix-up
Filled in the 26 entries that had no url field yet, each verified via
web search rather than guessed. Also caught and fixed a factual error:
Transphorm was acquired by Renesas (completed June 2024), not Infineon
as an earlier pass had it — GaN Systems is the one Infineon acquired
(2023), consistent with Peter's sheet listing its site as infineon.com.
2026-08-22 10:43:01 +02:00
beantownbabe b1098b8a32 Expand Prospect Scout verification note to full methodology detail
Was condensed to a single paragraph, dropping useful transparency
(excluded weak-evidence candidate, pre-commercial flag, query-phrasing
insight behind Round 2's Power Electronics gap-fill, unverified pricing
caveat). Restructured as a bulleted list covering both rounds in full,
since this detail matters for judging how much to trust each entry.
2026-08-22 09:25:54 +02:00
beantownbabe bb5bcefc0b Round 2 Prospect Scout sweep: 29 new entries, 73 total
Gap-filling sweep informed by the Peter-list cross-check: told the
subagent exactly what Round 1 + Peter's Phase 1 Contact List already
covered so it wouldn't re-find the same names, and pushed hardest on
Power Electronics (Devices) where Round 1 had only independently
found 4 of Peter's 12 established players.

Added across all 6 divisions: 5 materials/substrate makers (Resonac,
Coherent, Soitec, TekSiC, Kyma), 5 established power electronics
manufacturers (Mitsubishi Electric, Fuji Electric, Nexperia, Semikron
Danfoss, Microchip), 4 niche WBG device makers (GeneSiC, Qorvo Power
Device Solutions, Powdec, STARPOWER), 5 test labs (Presto Engineering,
Aehr, Ansys Reliability/DfR, EAG, Element Materials), 5 rad-hard
companies/facilities (TTM, DDC, Frontgrade Gaisler, RADEF, Microchip's
rad-hard line), and 5 research partners (Nagoya, Linkoping C3NiT,
Chalmers, Fraunhofer IISB, ESRF RCI group).
2026-08-22 09:24:31 +02:00
beantownbabe 5f26491989 Merge Peter's Phase 1 Contact List into Prospect Scout, expand to 6 divisions
Restructured from 5 to 6 divisions to preserve Peter's own granularity
(his Power Electronics (Devices) and WBG Device Manufacturer categories
stay separate rather than merged) and to give this sweep's two new
finds their own visible divisions: Semiconductor Materials & Substrates
(wafer/crystal-growth makers, absent from Peter's device-only list) and
Research & Collaborations (academic/national-lab partners).

Prospect Scout now holds 44 deduplicated entries (25 from Peter's list +
24 from the sweep, 5 overlaps resolved) with a per-card source badge
(Peter's list / this sweep / both) and per-division counts.
2026-08-22 09:10:22 +02:00
beantownbabe 64312a4754 Add Yole Group as a tracked source with quarterly recheck note
Peter uses Yole Group for the power electronics/WBG market landscape.
Added it to Sources -> Market Sizing, plus a visible reminder on the
Prospect Scout tab to recheck it each quarter (Yole's publish cadence)
for new companies in the Semiconductor and WBG Device Manufacturer
divisions. Manual recheck only, no automated job requested.
2026-08-22 08:56:50 +02:00
beantownbabe a32d2f61e1 Replace pharma/aerospace verticals with 5 target divisions, add Prospect Scout
Verticals tab now reflects the corrected focus: Semiconductor (GaN/SiC),
WBG Device Manufacturer, Device Testing, Radiation Hardness, and
Research & Collaborations, replacing the old pharma/aerospace/energy set.

New Prospect Scout tab mirrors Conference Scout's pattern: a hardcoded
results snapshot from a worldwide research sweep, grouped by division,
with a verification note on sourcing/confidence per entry.
2026-08-22 08:40:48 +02:00
beantownbabeandClaude Sonnet 5 3d55adaa4e Track market_intelligence.html to prevent data loss
This file was untracked and held 5 prospects (Bosch, Volkswagen PowerCo,
Infineon Technologies, Verkor, TSMC Dresden) not present in the live
index.html version, with no backup anywhere. Committing it preserves
that data while the discrepancy between the two files gets resolved.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-18 10:53:57 +02:00
beantownbabe 01e3eedf35 Remove unused restyle assets and stale backup file
The three images added in the restyle commit are not referenced
anywhere in index.html (the logo is embedded inline as base64), and
the pre-sidebar .bak backup is no longer needed now that the sidebar
version is confirmed correct.
2026-07-23 08:15:20 +02:00
beantownbabeandClaude Sonnet 4.6 6b7b1f5739 Initial commit: TXproducts market intelligence dashboard
Self-contained single-file dashboard. No build step, no dependencies.
Open index.html directly in a browser or serve with any static file server.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-27 14:03:38 +02:00