Skip to content

refactor(state): use worktree-local QP state - #132

Merged
mosobande merged 1 commit into
agent/ko-skill-preserve-contractsfrom
agent/project-local-qp-state
Sep 11, 2026
Merged

refactor(state): use worktree-local QP state#132
mosobande merged 1 commit into
agent/ko-skill-preserve-contractsfrom
agent/project-local-qp-state

Conversation

@mosobande

@mosobande mosobande commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

What

  • use each working tree's ignored .qp/<owner-or-category>/ for local generated/project-support state
  • treat a linked worktree and its .qp as one isolated candidate rather than redirecting state into the main checkout
  • keep skill-owned state in concise homes such as .qp/atona/, .qp/architect/, .qp/iwadi/, .qp/se-triage/, .qp/seda-spec/, .qp/prototype/, .qp/ayewo-igba-ise/, and .qp/qp-setup/
  • use semantic categories such as .qp/artifacts/, .qp/evidence/, .qp/handoffs/, or .qp/snapshots/ when no skill is the natural owner; no fixed registry/taxonomy is introduced
  • keep producer instructions terse: name the destination and rely on the repository-level state convention instead of repeating storage policy
  • keep disposable work in host/system temp and intentional project files at their natural project destination
  • remove the obsolete generic QP workspace/settings model and the unreleased akosile skill, including its CAS/index runtimes, tests, dedicated CI, and workspace ADR
  • make Atọ́nà retain execution workspace identity: absolute path, <branch-name> [main|worktree], and main-worktree path for a linked worktree
  • make Atọ́nà reconcile relevant worktree-local .qp state before Closed, clean reconciled/disposable local state, record workspace disposition, and offer worktree removal with explicit user approval
  • make Pepeye treat a worker worktree plus .qp as one candidate and hand accepted candidates to the accepting workflow for semantic reconciliation
  • keep local plan projections aware of workspace paths while omitting machine-specific paths from portable/public projections by default
  • keep QP Setup rollback data with the host it belongs to: Codex user backups under $CODEX_HOME/backups/qp-setup/ and repository backups under <repo>/.codex/backups/qp-setup/; future Claude host configuration follows the same host-local rule
  • keep Kọ Skill focused on skill authoring: file-producing skills name their natural destinations, while runtime/worktree policy stays with repository instructions and runtime/lifecycle owners

Core contract

local state         → .qp/<owner-or-category>/
worktree + .qp      → one candidate
accepted candidate  → reconcile relevant .qp state
completed candidate → clean local .qp; offer worktree removal

There is no shared .qp, generic settings file, registry, central index, lock/CAS service, or automatic directory mirroring.

Ownership

  • repository instructions → universal .qp convention
  • Atọ́nà → initiative workspace identity, closure reconciliation, and cleanup
  • Pepeye → delegated worktree candidate handoff/integration
  • producing skills → only their natural output/state destination
  • QP Setup → host-local setup state and rollback
  • Kọ Skill → authoring/verification that skill instructions state the right destination; no runtime/worktree mechanics

Atọ́nà workspace shape

Main checkout:

workspace:
  path: /absolute/path/to/repo
  branch: ori [main]

Linked worktree:

workspace:
  path: /absolute/path/to/worktree
  branch: feature/example [worktree]
  main: /absolute/path/to/repo

At closure, relevant local state is reconciled into the accepting workspace and reconciled/disposable .qp state is cleaned from the completed candidate. The worktree may then be removed after explicit user approval or retained without blocking Closed.

Loss audit

  • retired: unreleased Akọsílẹ̀ identity and scripts; generic QP settings/workspace; Git-common/shared-main-worktree storage; central record catalogue and dedicated CI
  • relocated: universal state convention to repository instructions; delegated candidate lifecycle to Pepeye; initiative reconciliation/cleanup to Atọ́nà; destinations to natural producing owners; host rollback material to each host's own data/config directory
  • preserved: skill-owned semantic records, intentional project destinations, exact candidate/authority rules at their natural owners, and explicit legacy-record support in Amọ̀ṣẹ́

Stack

Parent: #131 (agent/ko-skill-preserve-contracts).

Verification

  • parent head: 78a810df896aaea4937457f97c1026349513deea
  • head: cf39364ff815b8fb10b31d2dbc837a944c1460df
  • one coherent commit
  • full repository Validate passed (run 871): package state, skill package validation/tests, Skills CLI discovery/copy, Claude Code plugin validation and clean install, macOS/Windows portable mechanics, and browser controls

@mosobande
mosobande force-pushed the agent/project-local-qp-state branch 2 times, most recently from 0823c9d to 37dcdb1 Compare September 11, 2026 07:52
@mosobande mosobande changed the title refactor(state): use project-local QP storage refactor(state): simplify project-local QP storage Sep 11, 2026
@mosobande
mosobande force-pushed the agent/project-local-qp-state branch from 3f262be to 6b0dc74 Compare September 11, 2026 10:46
@mosobande mosobande changed the title refactor(state): simplify project-local QP storage refactor(state): use worktree-local QP state Sep 11, 2026
@mosobande
mosobande force-pushed the agent/project-local-qp-state branch 6 times, most recently from 25e14e0 to 56acaea Compare September 11, 2026 11:25
@mosobande
mosobande force-pushed the agent/project-local-qp-state branch from 9b715bd to cf39364 Compare September 11, 2026 11:32
@mosobande
mosobande added this pull request to stack #133 September 11, 2026 11:39
@mosobande
mosobande merged commit 79a7ccc into ori Sep 11, 2026
8 checks passed
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