{objective.summary || 'No summary text is available.'}
- ID
{objective.id}- Updated
- {formatDate(objective.updated_at)}
- Linked tickets
- {objective.linked_tickets?.length ? objective.linked_tickets.join(', ') : 'none'}
{repository.id}{repository.workspace_root}{repositoryError}
{:else}Waiting for /api/repositories/local…
{repository.git.root ?? 'unknown'}{shortHash(repository.git.head)}{repository.git.remote.name} · {repository.git.remote.url}
{#if repository.git.remote.redacted}credentials redacted{/if}
{:else}
not configured
{/if}
Git metadata is unavailable for this local Repository.
{/if} {:else if repositoryError}{repositoryError}
{:else}Waiting for Git summary…
{/if}No recent commits are available from the bounded Git log API.
{:else}| Commit | Subject | Author | Timestamp |
|---|---|---|---|
{shortHash(commit.hash)} |
{commit.subject} | {commit.author_name} {commit.author_email} | {commit.timestamp} |
{repositoryLogError}
{:else}Waiting for /api/repositories/local/log…
Read-only grouping of canonical Ticket records. No drag/drop or lifecycle mutation is exposed.
{#if repositoryTickets}{repositoryTicketsError}
{:else}Waiting for /api/repositories/local/tickets…
{diagnostic.code}
{diagnostic.message}
Objectives are read from canonical filesystem records through /api/objectives.
No Objective records are present.
{:else}{objective.summary || 'No summary text is available.'}
{objective.id}{objectives.invalid_records.length} invalid objective record(s) hidden.
{/if} {:else if objectivesError}{objectivesError}
{:else}Waiting for /api/objectives…
{objectiveDetail.id}Objective body was truncated by the backend response limit.
{/if}{objectiveDetail.body || 'No Objective body text is available.'}
{:else if objectiveDetailError}
{objectiveDetailError}
{:else if objectiveDetailLoading}Loading Objective {route.objectiveId}…
Waiting for Objective detail…
{/if}{workspaceError}
{:else}Waiting for /api/workspace…
{endpoint.path} — {endpoint.label}Event streams remain represented as extension-point state in the backend response. Hosts and Workers are read-only local observations; no scheduler, lifecycle control, or hosted multi-tenant behavior is implemented in this slice.
No local Hosts are visible.
{:else}{host.host_id}{host.runtime_id}{hostsError}
{:else}Waiting for /api/hosts…
No local Workers are visible.
{:else}| Worker | Host | State | Workspace | Implementation |
|---|---|---|---|---|
| {worker.label} {#if worker.role || worker.profile} {worker.role ?? 'role unknown'} / {worker.profile ?? 'profile unknown'} {/if} | {worker.host_id} |
{worker.state} · {worker.status} | {worker.workspace.visibility} · {worker.workspace.identity} | {worker.implementation.kind} |
{workersError}
{:else}Waiting for /api/workers…
{diagnostic.code}
{diagnostic.message}