Add Workflow tab and run-progress API for workflow runs
This commit is contained in:
+132
-1
@@ -405,7 +405,8 @@ a.task-link {
|
||||
.files-view,
|
||||
.terminal-view,
|
||||
.inbox-view,
|
||||
.reviews-view {
|
||||
.reviews-view,
|
||||
.workflow-view {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
display: flex;
|
||||
@@ -1858,6 +1859,136 @@ pre.file-text .line::before {
|
||||
color: var(--warn);
|
||||
}
|
||||
|
||||
.workflow-header {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: baseline;
|
||||
gap: 10px;
|
||||
padding: 8px 16px;
|
||||
border-bottom: 1px solid var(--border);
|
||||
}
|
||||
|
||||
.workflow-header:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.workflow-name {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.workflow-title {
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.workflow-scroll {
|
||||
flex: 1;
|
||||
overflow-y: auto;
|
||||
padding: 8px 16px 16px;
|
||||
}
|
||||
|
||||
.workflow-graph .mermaid-diagram {
|
||||
margin: 0 0 12px;
|
||||
}
|
||||
|
||||
.workflow-brief {
|
||||
margin: 0 0 12px;
|
||||
}
|
||||
|
||||
.workflow-brief > summary,
|
||||
.workflow-output > summary {
|
||||
cursor: pointer;
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.workflow-stages,
|
||||
.workflow-attempts {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.workflow-stages {
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.workflow-stage {
|
||||
border: 1px solid var(--border);
|
||||
border-radius: 10px;
|
||||
padding: 10px 14px;
|
||||
background: var(--raised);
|
||||
}
|
||||
|
||||
.workflow-stage > header,
|
||||
.workflow-attempt-head {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: baseline;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
.workflow-stage-name {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.workflow-line {
|
||||
font-size: 11px;
|
||||
color: var(--muted);
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.workflow-attempts {
|
||||
gap: 8px;
|
||||
margin-top: 8px;
|
||||
}
|
||||
|
||||
.workflow-attempt {
|
||||
border-top: 1px solid var(--border);
|
||||
padding-top: 8px;
|
||||
}
|
||||
|
||||
.workflow-attempt.current .workflow-task {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.workflow-attempt-n {
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.workflow-task {
|
||||
color: var(--accent);
|
||||
}
|
||||
|
||||
.workflow-state {
|
||||
font-size: 11px;
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.workflow-state.running {
|
||||
color: var(--accent);
|
||||
}
|
||||
|
||||
.workflow-state.idle,
|
||||
.workflow-state.discarding {
|
||||
color: var(--warn);
|
||||
}
|
||||
|
||||
.workflow-state.finished,
|
||||
.workflow-state.merged {
|
||||
color: var(--ok);
|
||||
}
|
||||
|
||||
.workflow-output {
|
||||
margin-top: 6px;
|
||||
}
|
||||
|
||||
.workflow-output > .md {
|
||||
margin-top: 6px;
|
||||
padding-left: 10px;
|
||||
border-left: 1px solid var(--border);
|
||||
}
|
||||
|
||||
.findings {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
|
||||
Reference in New Issue
Block a user