@@ -69,6 +69,20 @@ export default function TerminalDepositReadWorkbench({
6969 if ( ! workbench ?. deposit . selectedEntries . length ) return [ ] ;
7070 return workbench . deposit . selectedEntries . slice ( 0 , 6 ) . map ( ( entry ) => entry . label ) ;
7171 } , [ workbench ] ) ;
72+ const readAdmissionActionLabel =
73+ recordingKey === 'read-admission'
74+ ? 'Admitting Read...'
75+ : readFitProgress === 'draft'
76+ ? 'Record Read before admitting'
77+ : readFitProgress === 'measured'
78+ ? 'Admit measured Read for fit search'
79+ : 'Read admitted for fit search' ;
80+ const fitResultActionLabel =
81+ recordingKey === 'fit'
82+ ? 'Recording fit...'
83+ : readFitProgress === 'fit-recorded'
84+ ? 'Fit result recorded'
85+ : 'Record fit result posture' ;
7286
7387 const handleRecord = async ( kind : 'deposit' | 'read' | 'fit' ) => {
7488 if ( ! workbench || ! onRecordActivity ) return ;
@@ -256,13 +270,13 @@ export default function TerminalDepositReadWorkbench({
256270 < div className = "mt-5 flex flex-wrap gap-3" >
257271 < button
258272 type = "button"
259- disabled = { recordingKey !== null || readFitProgress === 'draft '}
273+ disabled = { recordingKey !== null || readFitProgress !== 'measured '}
260274 onClick = { ( ) => {
261275 void handleRecordReadAdmission ( ) ;
262276 } }
263277 className = "rounded-[1.25rem] border border-emerald-400/30 bg-emerald-400/10 px-4 py-3 text-sm font-medium text-emerald-100 transition hover:border-emerald-300/50 hover:bg-emerald-400/15 disabled:cursor-not-allowed disabled:opacity-55"
264278 >
265- { recordingKey === 'read-admission' ? 'Admitting Read…' : 'Admit measured Read for fit search' }
279+ { readAdmissionActionLabel }
266280 </ button >
267281 < button
268282 type = "button"
@@ -272,6 +286,16 @@ export default function TerminalDepositReadWorkbench({
272286 >
273287 Review fit result posture
274288 </ button >
289+ < button
290+ type = "button"
291+ disabled = { recordingKey !== null || readFitProgress !== 'admitted' }
292+ onClick = { ( ) => {
293+ void handleRecord ( 'fit' ) ;
294+ } }
295+ className = "rounded-[1.25rem] border border-amber-300/30 bg-amber-300/10 px-4 py-3 text-sm font-medium text-amber-100 transition hover:border-amber-200/50 hover:bg-amber-300/15 disabled:cursor-not-allowed disabled:opacity-55"
296+ >
297+ { fitResultActionLabel }
298+ </ button >
275299 </ div >
276300 </ section >
277301
@@ -293,13 +317,13 @@ export default function TerminalDepositReadWorkbench({
293317 </ button >
294318 < button
295319 type = "button"
296- disabled = { recordingKey !== null }
320+ disabled = { recordingKey !== null || readFitProgress === 'fit-recorded' }
297321 onClick = { ( ) => {
298322 void handleRecord ( 'fit' ) ;
299323 } }
300324 className = "rounded-full border border-white/10 bg-white/5 px-3 py-2 text-[0.66rem] uppercase tracking-[0.18em] text-neutral-100 transition hover:border-white/18 hover:bg-white/10 disabled:cursor-not-allowed disabled:opacity-60"
301325 >
302- { recordingKey === 'fit' ? 'Recording…' : 'Record fit result posture' }
326+ { fitResultActionLabel }
303327 </ button >
304328 </ div >
305329 < p className = "mt-3 text-sm leading-6 text-neutral-300" > { workbench . fit . summary } </ p >
0 commit comments