ExperienceBuilder
배경·행동·결과를 원문과 나란히 놓고 정리.
- 라이브러리 전용
개요
미리보기
예시
상태
작성 중
저장 중
저장 실패
제안 도착
위아래
이렇게 · 이렇게 하지 않기
- 이렇게 문장마다 ClaimRow로 신뢰 상태를 단다. 자동 저장하되 직접 쓴 문장을 자동 정리로 덮어쓰지 않는다.
- 이렇게 하지 않기 모든 칸을 채워야 저장되는 구조로 만들지 않는다. 확인되지 않은 수치를 결과 문장에 자동으로 넣지 않는다.
토큰과 속성
| 이름 | 타입 | 기본값 | 설명 |
|---|---|---|---|
sections? | { context; actions; results: { id; text; origin; status; evidence }[] } | — | 구획별 처음 문장. 어느 구획도 채워야 하는 것은 아니다(철학 3). |
source? | { title; body; service; date } | — | 옆(≥1024) 또는 아래(<1024)에 보이는 원문. |
saveState? | 'none' | 'saving' | 'saved' | 'failed' | none | 자동 저장 상태. 실패만 알린다. |
suggestion? | string | | 자동 정리 제안. 사용자 문장을 덮지 않고 옆에 “추정”으로 둔다. 비우면 없음. |
layout? | 'auto' | 'side' | 'stacked' | auto | auto = 1024px부터 나란히. |
onChange? | (sections) => void | — | 변경마다 호출(호출자가 자동 저장). |
onAnnounce? | (message: string, politeness: 'polite' | 'assertive') => void | — | 공용 알림기(기본 announce()). 저장 실패 assertive, 근거 연결 polite. |
접근성
키보드: 구획은 <fieldset><legend>. “문장 추가” → 새 Textarea로 초점. 문장 빼기 → 다음 문장 → 이전 → 구획 제목. “이 문장에 근거로 연결” → 그 ClaimRow로 초점.
- 자동 저장 실패만 assertive, 근거 연결은 polite 한 번.