fix(team): clarify task in-progress duration label
This commit is contained in:
parent
05acff348b
commit
72b7d9ee72
3 changed files with 23 additions and 10 deletions
|
|
@ -1455,7 +1455,7 @@ export const TaskDetailDialog = ({
|
||||||
title="Implementation time from persisted work intervals"
|
title="Implementation time from persisted work intervals"
|
||||||
>
|
>
|
||||||
<Clock size={10} />
|
<Clock size={10} />
|
||||||
<span>Work time {taskImplementationDurationLabel}</span>
|
<span>In progress time {taskImplementationDurationLabel}</span>
|
||||||
</span>
|
</span>
|
||||||
) : undefined
|
) : undefined
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -210,16 +210,29 @@ describe('TeamTaskWriter', () => {
|
||||||
const writtenPath = '/mock/tasks/my-team/11.json';
|
const writtenPath = '/mock/tasks/my-team/11.json';
|
||||||
const persisted = JSON.parse(hoisted.files.get(writtenPath) ?? '{}');
|
const persisted = JSON.parse(hoisted.files.get(writtenPath) ?? '{}');
|
||||||
expect(persisted.historyEvents).toHaveLength(1);
|
expect(persisted.historyEvents).toHaveLength(1);
|
||||||
expect(persisted.historyEvents[0]).toMatchObject({
|
expect(persisted.historyEvents[0]).toMatchObject({
|
||||||
type: 'task_created',
|
type: 'task_created',
|
||||||
status: 'in_progress',
|
status: 'in_progress',
|
||||||
actor: 'bob',
|
actor: 'bob',
|
||||||
});
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
it('createTask records in_progress workIntervals as status time, not runtime activity', async () => {
|
||||||
|
await writer.createTask('my-team', {
|
||||||
|
id: '14',
|
||||||
|
subject: 'Already assigned',
|
||||||
|
status: 'in_progress',
|
||||||
|
createdAt: '2026-05-14T10:00:00.000Z',
|
||||||
});
|
});
|
||||||
|
|
||||||
it('createTask without createdBy omits actor', async () => {
|
const writtenPath = '/mock/tasks/my-team/14.json';
|
||||||
await writer.createTask('my-team', {
|
const persisted = JSON.parse(hoisted.files.get(writtenPath) ?? '{}');
|
||||||
id: '13',
|
expect(persisted.workIntervals).toEqual([{ startedAt: '2026-05-14T10:00:00.000Z' }]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('createTask without createdBy omits actor', async () => {
|
||||||
|
await writer.createTask('my-team', {
|
||||||
|
id: '13',
|
||||||
subject: 'No author',
|
subject: 'No author',
|
||||||
status: 'pending',
|
status: 'pending',
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -635,7 +635,7 @@ describe('TaskDetailDialog changes summary loading', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(host.textContent).toContain('Workflow History');
|
expect(host.textContent).toContain('Workflow History');
|
||||||
expect(host.textContent).toContain('Work time 5m 00s');
|
expect(host.textContent).toContain('In progress time 5m 00s');
|
||||||
|
|
||||||
const workflowButton = [...host.querySelectorAll('button')].find(
|
const workflowButton = [...host.querySelectorAll('button')].find(
|
||||||
(button) => button.textContent?.startsWith('Workflow History') === true
|
(button) => button.textContent?.startsWith('Workflow History') === true
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue