Slice 1 (3/4): task service REST API + liveness protocol + artifacts - #3
Merged
Conversation
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 17:34
d6294a0 to
f627a51
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 12, 2026 17:34
12ec457 to
07b7858
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 18:35
f627a51 to
72324c3
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 12, 2026 18:35
07b7858 to
7158983
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 19:02
72324c3 to
f4b127f
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 12, 2026 19:02
7158983 to
819559e
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 19:07
f4b127f to
41d4b3a
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
2 times, most recently
from
June 12, 2026 21:17
9688647 to
0b112f5
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 21:17
41d4b3a to
00a9d5b
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 12, 2026 22:08
0b112f5 to
8961ac5
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 12, 2026 22:08
00a9d5b to
615c7be
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 15:11
8961ac5 to
89c1d21
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
2 times, most recently
from
June 14, 2026 15:25
21fe057 to
f1fafbc
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 15:25
89c1d21 to
0405e77
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 14, 2026 16:05
f1fafbc to
61da990
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 16:05
0405e77 to
545ac23
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 14, 2026 16:15
61da990 to
ffb1d50
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 16:15
545ac23 to
2dbe3ad
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 14, 2026 17:17
ffb1d50 to
3865076
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 17:17
2dbe3ad to
c1e0010
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 14, 2026 17:33
3865076 to
bde155e
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
2 times, most recently
from
June 14, 2026 17:38
3ecbcae to
6605c95
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
4 times, most recently
from
June 14, 2026 18:31
55ebe58 to
4c3afe7
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
3 times, most recently
from
June 14, 2026 19:00
784870d to
03fe50e
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 14, 2026 19:11
6605c95 to
f22d879
Compare
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 15, 2026 00:24
03fe50e to
729e5b3
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 15, 2026 00:24
f22d879 to
68afdd0
Compare
tildesrc
commented
Jun 15, 2026
tildesrc
force-pushed
the
slice1/02-persistence
branch
from
June 15, 2026 00:33
729e5b3 to
61f03c8
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 15, 2026 00:34
68afdd0 to
e1cf4b4
Compare
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 15, 2026 00:44
e1cf4b4 to
8961047
Compare
tildesrc
commented
Jun 15, 2026
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 15, 2026 00:50
8961047 to
550f2b2
Compare
…ontract Slice 1, PR 3 of 4 — the task service API contract. - panopticon.taskservice.service.TaskService: deterministic orchestration over the repository — tasks, transition enforcement (via the engine), slug, artifacts, and ephemeral liveness registrations. Injectable clock + id factory for test determinism. - panopticon.taskservice.api: FastAPI app factory exposing repos, tasks, transitions (with per-responsibility settlement on the wire), slug, artifacts, liveness, and discovery, with domain exceptions mapped to HTTP status codes. - panopticon.core.artifacts + taskservice.artifacts_fs: the artifact-store interface, the filesystem adapter, and the shared id->path->MCP-URI resolver (ADR 0003). - panopticon.taskservice.mcp: the MCP surface contract (resource URI scheme + tool specs), defined now; the server is wired when real containers connect (Slice 2). Adds fastapi + uvicorn (runtime) and httpx (dev, for TestClient). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
tildesrc
force-pushed
the
slice1/03-task-service
branch
from
June 15, 2026 00:57
550f2b2 to
de83f4e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Third of four stacked PRs for Slice 1. The task service API contract (contracts #3 and #4).
TaskService— deterministic orchestration; transition enforcement via the engine; liveness registrations.Stacked; base is
slice1/02-persistence. Adds fastapi/uvicorn/httpx.🤖 Generated with Claude Code