@atolis-hq/wake 0.2.83 → 0.2.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -89,6 +89,7 @@ export const indexHtml = `<!DOCTYPE html>
89
89
  .card-error { border-left: 3px solid #ff8f7f; }
90
90
  .chip { display: inline-block; background: #2c313a; border-radius: 4px; padding: 0.05rem 0.35rem; font-size: 0.68rem; margin-right: 0.2rem; }
91
91
  .chip-label { background: transparent; border: 1px solid #3a4150; color: #9aa2ad; margin-bottom: 0.2rem; }
92
+ .chip-meta { border: 1px solid #3a4150; color: #cbd5e1; margin-bottom: 0.2rem; }
92
93
  table { border-collapse: collapse; width: 100%; font-size: 0.8rem; }
93
94
  th, td { text-align: left; padding: 0.35rem 0.5rem; border-bottom: 1px solid #2c313a; }
94
95
  th { color: #9aa2ad; font-weight: 600; }
@@ -435,12 +436,18 @@ function renderCardSummaryNodes(item) {
435
436
  const pillClass = 'pill ' + (COND_PILL[item.condition] || 'pill-finished');
436
437
  const statsText = item.totalRuns + ' runs | ' + fmtCost(item.totalCostUsd) + ' | ' + fmtCompact(item.totalTokens) + ' tokens';
437
438
  const isFinished = item.condition === 'finished';
439
+ const displayStatus = item.displayStatus || item.lastRunStatus || item.stage;
440
+ const metaPills = [
441
+ el('span', { class: pillClass, text: displayStatus.replace(/-/g, ' ') }),
442
+ ...(item.isFrozen ? [el('span', { class: 'pill pill-frozen', text: 'Frozen' })] : []),
443
+ el('span', { class: 'chip chip-meta', text: item.workflow }),
444
+ el('span', { class: 'chip chip-meta', text: item.stage }),
445
+ ];
446
+ if (!isFinished) {
447
+ metaPills.push(el('span', { class: 'chip chip-meta', text: fmtMs(item.timeInStageMs) + ' in stage' }));
448
+ }
438
449
  return [
439
- el('div', { class: 'meta', style: 'display:flex;align-items:center;gap:0.3rem;flex-wrap:wrap;margin-top:0.2rem;' }, [
440
- el('span', { class: pillClass, text: item.condition }),
441
- ...(item.isFrozen ? [el('span', { class: 'pill pill-frozen', text: 'Frozen' })] : []),
442
- document.createTextNode('| ' + item.workflow + ' | ' + item.stage + (isFinished ? '' : ' | ' + fmtMs(item.timeInStageMs) + ' in stage')),
443
- ]),
450
+ el('div', { class: 'meta', style: 'display:flex;align-items:center;gap:0.3rem;flex-wrap:wrap;margin-top:0.2rem;' }, metaPills),
444
451
  el('div', { class: 'card-stats', text: statsText }),
445
452
  ...(nonWakeLabels.length > 0
446
453
  ? [el('div', { class: 'meta', style: 'margin-top:0.2rem;' }, nonWakeLabels.map((label) => el('span', { class: 'chip chip-label', text: label })))]
@@ -57,6 +57,9 @@ function timeInStageMs(item, now) {
57
57
  const lastChange = item.wake.stageHistory.at(-1)?.changedAt ?? item.wake.syncedAt;
58
58
  return now.getTime() - Date.parse(lastChange);
59
59
  }
60
+ function displayStatusForCard(item) {
61
+ return item.context.status ?? 'queued';
62
+ }
60
63
  function activeChildRunsForItem(item, runs, now) {
61
64
  return runs
62
65
  .filter((run) => run.workItemKey === item.workItemKey &&
@@ -145,6 +148,7 @@ export async function buildBoard(input) {
145
148
  totalRuns: runTotals.totalRuns,
146
149
  totalTokens: runTotals.totalTokens,
147
150
  totalCostUsd: runTotals.totalCostUsd,
151
+ displayStatus: displayStatusForCard(item),
148
152
  lastRunAction: lastRun?.action,
149
153
  lastRunSentinel: lastRun?.sentinel,
150
154
  lastRunStatus: lastRun?.status,
@@ -124,4 +124,4 @@ export function resolveWakeVersion(options = {}) {
124
124
  }
125
125
  return '0.1.0-dev';
126
126
  }
127
- export const wakeVersion = "gf3111aa";
127
+ export const wakeVersion = "g78f9f6b";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atolis-hq/wake",
3
- "version": "0.2.83",
3
+ "version": "0.2.84",
4
4
  "description": "Local autonomous agent control plane for software development",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {