diff --git a/web/ui/state.mjs b/web/ui/state.mjs index ff60758..4580c1a 100644 --- a/web/ui/state.mjs +++ b/web/ui/state.mjs @@ -5574,7 +5574,7 @@ function renderMemDiff(from, to){ function renderMemList(){ const wrap=$('mem_list'); if(!wrap) return const rows=(MEM_ROWS||[]).filter(r=>r.status!=='archived') - if(!rows.length){ wrap.innerHTML='

No accomplishments yet — capture one above.

'; return } + if(!rows.length){ wrap.innerHTML='

No accomplishments yet. Memory holds raw wins — originals are immutable and never edited.

Workflow: Capture → Polish (Accept to save polished) → Promote to Portfolio. Enrich from URL tip: paste excerpt works best, LinkedIn may be blocked.

'; return } wrap.innerHTML=rows.map(r=>{ const st=r.status||'inbox' const orig=r.body_original!==r.body_current?`
Original: ${esc(r.body_original)}
`:'' @@ -5813,7 +5813,7 @@ $('mem_save')?.addEventListener('click', async ()=>{ function renderPfList(){ const wrap=$('pf_list'); if(!wrap) return const rows=(PF_ROWS||[]).filter(r=>!r.archived_at) - if(!rows.length){ wrap.innerHTML='

No portfolio items yet.

'; return } + if(!rows.length){ wrap.innerHTML='

No portfolio items yet. Portfolio holds polished, reusable stories — used for Tailor and interview.

To add: Promote from Memory (recommended) or +New.

'; return } wrap.innerHTML=rows.map(r=>`
${esc(r.title)} · ${esc(r.item_type)} · ${esc(r.visibility)}
${esc(r.summary||r.body_current||'')}