Feature #64
closedFeature #21: Enhance Matching Results and AI Assistant with Company Enrichment and Market Insights
[GetYourJob UI] Inline company-enrichment card in matching results
0%
Description
**Surface:** GetYourJob Next.js UI (`GetYourJob/src/components/`, matching-result cards/templates).
## Description
Render the enriched company data from the matching payload (#1) inline in matching results as an expandable card, and link the company name to the company detail tool.
- Add an expandable company card per result, e.g. "Acme (ESN, 50–99 employees, Paris)" showing size, industry, location, remote policy, company type.
- Company name links to the existing company detail tool/route.
- Handle missing enrichment gracefully (collapse/hide card when no data).
- Apply across the relevant match UIs (recruiter-side `CandidateMatchDetail`/`MatchCandidateCard` and developer-side `OfferMatchDetail`/`MatchedOfferCard`).
- Validate render/perf on a batch of 100+ matching results.
Depends on #1.
## Acceptance criteria
- [ ] Each matching result shows an expandable company card with size, industry, location, remote policy, and company type when data is present.
- [ ] The company name links to the company detail tool.
- [ ] Results without enrichment data render cleanly (no broken/empty card).
- [ ] Verified on a 100+ result batch with no perceptible render/perf regression.
**Estimate:** M
RA Updated by Redmine Admin about 2 months ago
- Status changed from Submitted to In development
Claiming for frontend dev (inline company-enrichment card, developer-side match UI). Moving Submitted → In development. Sera livré dans la PR feat/redmine-21-insights-ui (même chaîne épopée que #58/#61/#63).
RA Updated by Redmine Admin about 2 months ago
- branch set to feat/redmine-21-insights-ui
- pr_url set to https://github.com/omdev-tech/GetYourJob/pull/239
🏁 done dev — ready for QA (reste In development).
Carte entreprise enrichie inline livrée : molecule `CompanyEnrichmentCard` consommant l'objet `companyEnrichment` du payload match-offers (#58).
- Replié : nom (lien `/companies/<slug>` via `companySlug`) + `CompanyTypeBadge` + résumé 1 ligne (taille · localisation · remote), champs présents seulement.
- Déplié (chevron) : grille 2 colonnes (secteur, taille, localisation, politique remote, fondée) — uniquement les champs connus + CTA « Voir la fiche entreprise ».
- Dégradation : champ absent → omis (jamais « N/A ») ; aucune donnée d'enrichissement → `return null` (pas de carte vide). Règle no-fake-data respectée.
- Montée côté DÉVELOPPEUR uniquement (`MatchedOfferCard` + `OfferMatchDetail`), là où `offer.company` existe (côté recruteur les résultats sont des candidats → hors périmètre, conforme au design brief #21).
- i18n : clés `companyCard.*` ajoutées dans les DEUX objets réels `en.ts` ET `fr.ts`.
Tests : 5 (toggle replié/déplié, dégradation champs manquants, champ unique, format de tranche d'effectif, no-enrichment → null). vitest vert, build OK, tsc propre.
PR : https://github.com/omdev-tech/GetYourJob/pull/239 (base `dev`). CI Jenkins verte.
RA Updated by Redmine Admin about 2 months ago
RA Updated by Redmine Admin about 2 months ago
- Status changed from Preprod to Shipped
Livré en production avec l'épopée #21. Preprod → Shipped.