Skip to content

Slice 1 (1/4): core engine, workflow ABC, free-form seed + CI - #1

Merged
tildesrc merged 1 commit into
mainfrom
slice1/01-core
Jun 14, 2026
Merged

Slice 1 (1/4): core engine, workflow ABC, free-form seed + CI#1
tildesrc merged 1 commit into
mainfrom
slice1/01-core

Conversation

@tildesrc

@tildesrc tildesrc commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

First of four stacked PRs implementing Slice 1 — Contracts + walking skeleton (docs/ROADMAP.md). Lands the core contracts + CI.

  • panopticon.core.models — domain types (Task, Repo, HistoryEntry, Ball, Mode, Verdict, DoDItem); pure data, no clock/I/O.
  • panopticon.core.workflow — the Workflow ABC (the workflow interface, ADR 0004).
  • panopticon.core.engine — deterministic lifecycle engine (state machine + ball + DoD gating).
  • panopticon.workflows.FreeFormWorkflow — the seed workflow.
  • Golden tests + a determinism test (no LLM imports in control-plane pkgs) + GitHub Actions CI (uv, mypy, pytest).

Stack: #1→main, #2#1, #3#2, #4#3. Merge bottom-up.

🤖 Generated with Claude Code

@tildesrc
tildesrc force-pushed the slice1/01-core branch 5 times, most recently from 84c25b9 to 0658a01 Compare June 12, 2026 21:17
Comment thread src/panopticon/__init__.py Outdated
Comment thread src/panopticon/core/workflow.py Outdated
Comment thread src/panopticon/core/models.py
Comment thread src/panopticon/core/workflow.py Outdated
Comment thread src/panopticon/core/workflow.py Outdated
Comment thread src/panopticon/core/engine.py Outdated
Comment thread src/panopticon/core/engine.py Outdated
Comment thread src/panopticon/core/models.py Outdated
Comment thread src/panopticon/core/state.py Outdated
Comment thread tests/test_determinism.py Outdated
@tildesrc
tildesrc force-pushed the slice1/01-core branch 2 times, most recently from 58db21b to cd90db8 Compare June 14, 2026 16:05
Comment thread src/panopticon/core/workflow.py Outdated
@tildesrc
tildesrc force-pushed the slice1/01-core branch 5 times, most recently from be04033 to 7b5b92b Compare June 14, 2026 16:49
Comment thread src/panopticon/core/models.py
Comment thread src/panopticon/core/models.py Outdated
Comment thread src/panopticon/core/models.py Outdated
Comment thread src/panopticon/core/workflow.py Outdated
… seed + CI

Slice 1, PR 1 of 4 — the core contracts the rest of the slice builds on.

- panopticon.core.models: domain types (Task, Repo[+git_url], HistoryEntry[+trigger],
  Turn, Status, Advance, Responsibility) — pure data, no clock, no I/O.
- panopticon.core.state: states as classes — State (non-terminal, inherits a DROPPED
  transition) / TerminalState, with built-in Complete/Dropped. Each declares two
  orthogonal facts: turn_on_enter (who acts on entry) and advance (MANUAL: the user
  transitions out / AUTOMATIC: the agent does when satisfied).
- panopticon.core.workflow: the Workflow interface owns the whole state machine —
  nested State classes discovered and their string/class transitions resolved +
  validated at instantiation; queries (transitions, turn_on_enter, advance, …); and
  task lifecycle (start_task, apply_transition). Dropping is the universal escape hatch.
- panopticon.workflows.Spike: the minimal seed workflow.
- Golden tests for resolution / turn / advance / responsibility gating.
- GitHub Actions CI: uv sync, mypy, pytest.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@tildesrc
tildesrc merged commit f4db08a into main Jun 14, 2026
1 check passed
@tildesrc
tildesrc deleted the slice1/01-core branch June 14, 2026 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant