5.9 KiB
5.9 KiB
| ui_doc_type | view_id | status | frame | source_evidence | regions | ||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| view | executions | 구현됨 | null |
|
|
Executions
View ID: executions
Frame:
- 없음
Status: 구현됨
Source Evidence
| Type | Path | Notes |
|---|---|---|
| code | packages/flutter/oto_console/lib/src/oto_executions_surface.dart |
OtoExecutionsSurface 구현 |
| code | apps/client/lib/src/app/oto_client_app.dart |
execution actions, logs, artifacts snapshot 연결 |
| docs | agent-roadmap/sdd/control-plane-product-surface/control-plane-security-audit-surface/SDD.md |
execution write action과 감사 노출 경계 |
| user | 없음 | agent-ui 생성 요청 |
Purpose
execution 상태를 확인하고, 상세 영역에서 cancel/report/log/artifact write action과 log/artifact preview를 조작한다.
Primary Users
- operator/admin
- local developer
Primary Tasks
- execution 목록과 상태 확인
- execution detail 확장/접기
- cancel/report/log/artifact action submit
- logs preview와 artifacts preview 확인
- artifacts tab으로 이동
Information Priority
- execution id, job id, runner id, state
- action toolbar와 결과 feedback
- logs/artifacts preview
Jenkins Reference Alignment
- Jenkins Build History, build/run detail, Console Output, Pipeline Graph View를 OTO
executionsview의 active reference로 삼는다. - 현재 구현은 execution list row를 tap해서 detail을 확장하는 구조이며, Jenkins build page의 run header, action list, console/artifact 영역을 한 row detail 안으로 압축한다.
- Pipeline Graph View의 stage graph, collapsible stage list, live log pane은 후속 조정 후보다. 현재 정의에서는
executions.logs-preview와executions.artifacts-preview가 우선 대응한다. - Blue Ocean restart/stage UI는 deprecated legacy reference로만 두고, 신규 정의 기준은 Pipeline Graph View로 맞춘다.
- cancel/report/log/artifact action은 Jenkins Abort/Restart/Console/Artifacts 흐름을 참고하되 OTO write action contract와 audit masking 기준을 우선한다.
Target Layout Delta
- execution list와 selected run detail을 Jenkins Build History + build page처럼 list/detail 관계로 재정렬한다.
- selected detail은 run header, action toolbar, stage/step summary placeholder, log pane, artifact pane 순서로 구성한다.
- Pipeline Graph View의 graph/stage/log 통합 layout을 후속 구현 기준으로 두되, OTO에 stage graph 데이터가 없으면 summary placeholder를 먼저 둔다.
- 현재 코드는 selected run detail, action toolbar, stage summary placeholder, log pane, artifact pane 반영이 완료되어
구현됨상태다.
Regions
| Region ID | Purpose | Component | Priority | Notes |
|---|---|---|---|---|
executions.header |
화면 제목 | 없음 | high | Executions |
executions.state-panel |
loading/empty/error 표현 | state-panel |
high | snapshot state 기준 |
executions.execution-list |
execution row 목록 | record-list |
high | expandable row |
executions.execution-detail |
확장된 execution 상세 | record-list |
high | actions, logs, artifacts 포함 |
executions.action-toolbar |
cancel/report/log/artifact action | execution-action-toolbar |
high | runner id 존재, not canceled, not submitting |
executions.action-feedback |
action 결과 표시 | action-feedback |
medium | success/failed |
executions.logs-preview |
execution log preview | log-preview |
medium | raw log 원문 복제 노출은 SDD 기준에서 주의 |
executions.artifacts-preview |
execution artifact preview | artifact-list |
medium | artifact path 민감도는 SDD 기준에서 주의 |
Actions
| Action ID | Trigger | Result | Guard |
|---|---|---|---|
executions.toggle-detail |
execution row tap | detail expand/collapse | execution id 존재 |
executions.cancel |
Cancel button and confirmation | cancel execution draft submit | runner id 존재, not canceled, not submitting |
executions.report |
Report button | report execution draft submit | runner id 존재, not canceled, not submitting |
executions.append-log |
Log button | append log draft submit | runner id 존재, not canceled, not submitting |
executions.append-artifact |
Artifact button | append artifact draft submit | runner id 존재, not canceled, not submitting |
executions.view-artifacts |
View Artifacts Tab | artifacts view로 이동 |
navigation handler 존재 |
States
- loading: 중앙 progress indicator.
- empty:
No executionsstate panel. - error:
Error loading executionsstate panel과 snapshot error message. - permission-denied: 계획
authorization-statecomponent에서 operator/admin 권한 실패를 display-safe message로 표현한다.
Planned Extensions
authorization-state: cancel/report/log/artifact action의 허용/거부, disabled/error 상태.audit-action-summary: cancel/report/log/artifact action의 actor/action/target/outcome/timestamp/reason metadata 요약.
Open Questions
- 없음
Decision History
- 2026-06-24: execution detail과 action toolbar를 주요 region으로 정의했다.