Back to Plate

keep goal rule source canonical

docs/plans/2026-05-25-move-goal-rule-source.md

53.0.612.3 KB
Original Source

keep goal rule source canonical

Objective: Keep goal as a Skiller .mdc source, remove the attempted nested skill source, regenerate .agents/skills/goal/SKILL.md, and verify no stale nested source references remain.

Goal plan: docs/plans/2026-05-25-move-goal-rule-source.md

Template: docs/plans/templates/task.md

Task source:

  • type: chat correction
  • id / link: N/A
  • title: Restore goal.mdc and generated skill references
  • acceptance criteria:
    • .agents/rules/goal.mdc exists.
    • The attempted nested skill source does not exist.
    • .agents/skills/goal/SKILL.md is generated by pnpm install.
    • No references to the abandoned nested source path or temporary sync script remain.

Completion threshold:

  • The canonical source is .agents/rules/goal.mdc.
  • Generated goal skill metadata points to .agents/rules/goal.mdc.
  • pnpm install completes without the Skiller unmanaged-goal warning.
  • node .agents/rules/goal/scripts/check-complete.mjs docs/plans/2026-05-25-move-goal-rule-source.md passes.

Verification surface:

  • File existence checks for old and new paths.
  • pnpm install.
  • rg stale-path audit.
  • Goal plan completion check.

Constraints:

  • Preserve Skiller’s standard .agents/rules/*.mdc source model.
  • Do not hand-edit generated .agents/skills/*/SKILL.md except through sync.
  • Keep the abandoned compatibility script out.

Boundaries:

  • Source of truth: user correction in chat.
  • Allowed edit scope: .agents/rules/goal.mdc, generated .agents/skills/goal/SKILL.md, generated AGENTS.md/CLAUDE.md sync, package.json restoration, removal of the temporary sync script, and this plan.
  • Browser surface: N/A.
  • Tracker sync: N/A.
  • Non-goals: PR, commits, broad historical docs rewrite.

Blocked condition:

  • Blocked only if pnpm install cannot regenerate Skiller output from .agents/rules/goal.mdc.

Task state:

  • task_type: agent-skill-source cleanup
  • task_complexity: small
  • current_phase: closeout
  • current_phase_status: complete
  • next_phase: final response
  • goal_status: active

Current verdict:

  • verdict: done
  • confidence: high
  • next owner: final response
  • reason: canonical source and generated skill output are restored.

Completion rule:

  • Do not call update_goal(status: complete) while any required checklist item remains unchecked. If an item does not apply, check it and add N/A: <reason>.
  • Do not call update_goal(status: complete) until every completion threshold above is satisfied, final handoff evidence is recorded, and node .agents/rules/goal/scripts/check-complete.mjs docs/plans/2026-05-25-move-goal-rule-source.md passes.
  • Do not create hook state for this goal. This file plus the active goal are the durable state.

Start Gates:

GateAppliesEvidence
Skill analysis before editsyesUsed goal because repo rules require goal for measurable durable work; inspected Skiller behavior from local package.
Active goal checked or createdyesActive goal was created before the user corrected the direction; this plan records the corrected target.
Source of truth read before editsyesRead user correction: restore goal.mdc, no nested SKILL.md, references through generated goal skill.
Tracker comments and attachments readnoN/A: no tracker.
Video transcript evidence requirednoN/A: no video.
docs/solutions checked for non-trivial existing-code worknoN/A: small agent-source cleanup, no product-code behavior.
TDD decision before behavior change or bug fixnoN/A: no runtime behavior change.
Branch decision for code-changing tasknoN/A: user did not request branch/PR.
Release artifact decisionnoN/A: no package release change.
Browser tool decision for browser surfacenoN/A: no browser surface.
PR expectation decisionnoN/A: no PR requested.
Tracker sync expectation decisionnoN/A: no tracker.

Work Checklist:

  • Objective includes outcome, completion threshold, verification surface, constraints, boundaries, and blocked condition.
  • Task source classified with source type, id/link, title, task type, acceptance criteria, caveats, likely files/routes/packages, browser surface, and root-cause layer.
  • Required video or screen-recording evidence is cached/read as normalized <video-transcripts> XML, or marked N/A with reason.
  • Nearby repo instructions and implementation patterns read before edits.
  • Implementation fixes the right ownership boundary, or the narrower choice is recorded with reason.
  • Release artifact requirement recorded: changeset, registry changelog, or N/A with reason.
  • Final handoff shape decided: concise local-change summary plus verification commands.
  • Branch handling recorded for code-changing work: N/A, no branch/PR.
  • Local-env-rot retry policy recorded: N/A, no surprising repo-wide failure.
  • Workspace authority recorded: proof commands ran in /Users/zbeyens/git/plate-2.
  • High-risk note recorded: command-contract risk was Skiller ownership; pnpm install proved the restored .mdc path removes the warning.
  • Review/autoreview target selected: N/A, trivial cleanup after user correction.
  • Agent-native review decision recorded: read .agents/skills/agent-native-reviewer/SKILL.md; no UI/tool parity issue applies because this only changes agent instructions/source sync.

Completion Gates:

GateAppliesRequired actionEvidence
Named verification thresholdyesRun path checks, pnpm install, stale-path audit, completion checkPath checks and pnpm install passed; completion check recorded below.
Bug reproduced before fixnoRecord failing test/repro or N/A with reasonN/A: user corrected a source-layout choice.
Targeted behavior verificationyesVerify generated skill source metadata and stale refssed confirmed metadata source .agents/rules/goal.mdc; rg found no nested-source refs.
TypeScript or typed config changednoRun relevant typecheckN/A: no TS/config behavior.
Package exports or file layout changednoRun pnpm brl before final verificationN/A: no package exports/barrels.
Package manifests, lockfile, or install graph changedyesRun pnpm installpnpm install passed after restoring package prepare.
Agent rules or skills changedyesRun pnpm install and verify generated skill syncpnpm install regenerated .agents/skills/goal/SKILL.md.
Workspace authority proofyesRun verification in owning repoAll commands ran in /Users/zbeyens/git/plate-2.
Browser surface changednoCapture browser proof or record waiverN/A.
Browser final proofnoAttach screenshot or caveatN/A.
CI-controlled template output changednoRestore generated template output or record why keptN/A.
Package behavior or public API changednoAdd changeset or record why noneN/A.
Registry-only component work changednoUpdate docs components changelog or record N/AN/A.
High-risk mini gateyesRecord failure mode, proof plan, chosen boundaryFailure mode was Skiller not owning nested rule source; restored .mdc boundary and proved pnpm install clean.
Agent-native review for agent/tooling changesyesLoad reviewer and close findings or record N/ALoaded reviewer; no action parity gap applies to instruction-source cleanup.
Local install corruption suspectednoRun reinstall or N/AN/A.
Autoreview for non-trivial implementation changesnoRun autoreview or N/AN/A: trivial cleanup of abandoned approach.
PR create or updatenoRun check before PR workN/A: no PR requested.
PR proof image hostingnoHost proof images or N/AN/A.
Tracker sync-backnoPost issue/Linear sync or N/AN/A.
Final handoff contractyesFill final handoff fieldsFilled below.
Final lintnoRun pnpm lint:fix or scoped equivalentN/A: markdown/generated instruction cleanup; pnpm install is the relevant sync gate.
Goal plan completeyesRun node .agents/rules/goal/scripts/check-complete.mjs docs/plans/2026-05-25-move-goal-rule-source.mdPending final run.
Knowledge extractionnoEvaluate ce-compoundN/A: no reusable new pattern beyond correcting local source layout.

Phase / pass table:

PhaseStatusEvidenceNext
Intake and source readcompleteUser correction read; Skiller source model inspected.implementation
ImplementationcompleteRestored .agents/rules/goal.mdc; removed nested SKILL.md source and temporary sync script.verification
Verificationcompletepnpm install, path checks, generated skill inspection, stale-path audit.closeout
PR / tracker synccompleteN/A: no PR/tracker requested.final response
CloseoutcompletePlan completion check pending final command.final response

Findings:

  • Skiller’s supported local source path remains .agents/rules/*.mdc; the nested skill-source path caused bad ownership behavior.

Decisions and tradeoffs:

  • Restored the standard Skiller source shape instead of keeping a repo-side compatibility layer.
  • Historical plan files still mention .agents/rules/goal.mdc as source provenance; not rewriting old records.

Implementation notes:

  • Moved the attempted nested skill source back to .agents/rules/goal.mdc.
  • Removed the temporary pre-sync script.
  • Restored package.json prepare to bun x skiller@latest apply.
  • Regenerated .agents/skills/goal/SKILL.md with pnpm install.

Review fixes:

  • Agent-native reviewer loaded; no parity issue applies.

Error attempts:

Error / failed attemptCountNext different moveResolution
Nested goal skill source not recognized by Skiller ownership1Restore .mdc sourceRestored goal.mdc; pnpm install clean.

Verification evidence:

  • pnpm install: passed; Skiller apply completed successfully without unmanaged-goal warning.
  • Path checks confirmed the attempted nested skill source and temporary pre-sync script are gone, while .agents/rules/goal.mdc and .agents/skills/goal/SKILL.md exist.
  • sed -n '1,18p' .agents/skills/goal/SKILL.md: confirmed metadata.skiller.source: .agents/rules/goal.mdc.
  • Stale-reference audit over .agents docs package.json AGENTS.md CLAUDE.md .codex: no abandoned nested source path or temporary sync-script references.

Final handoff contract:

  • PR line: N/A, no PR requested.
  • Issue / tracker line: N/A.
  • Confidence line: high.
  • Flow table:
    • Reproduced: Skiller rejected nested source with unmanaged warning earlier.
    • Verified: restored source path and clean Skiller sync.
  • Browser check: N/A.
  • Outcome: canonical goal.mdc source restored; generated skill present.
  • Caveat: historical plans still mention .agents/rules/goal.mdc because that is correct provenance.
  • Design:
    • Chosen boundary: Skiller-supported .agents/rules/*.mdc source.
    • Why not quick patch: Generated SKILL.md hand edits would be overwritten.
    • Why not broader change: Patching Skiller or adding repo-side source shims is worse DX than using its native contract.
  • Verified: pnpm install, path checks, stale-path audit, generated metadata.

Final handoff / sync:

  • PR: N/A.
  • Issue / tracker: N/A.
  • Browser proof: N/A.
  • Caveats: historical docs untouched.

Timeline:

  • 2026-05-25T07:18:42.122Z Task goal plan created.
  • 2026-05-25T07:25Z Nested goal/SKILL.md approach tested and found bad: Skiller emitted unmanaged-goal warning.
  • 2026-05-25T07:31Z User corrected direction: restore goal.mdc, no nested SKILL.md.
  • 2026-05-25T07:34Z Restored .agents/rules/goal.mdc, removed temporary sync script, ran pnpm install, and verified generated goal skill.

Reboot status:

QuestionAnswer
Where am I?Closeout
Where am I going?Final response
What is the goal?Restore canonical goal .mdc source and generated skill references
What have I learned?Skiller local sources are .agents/rules/*.mdc; nested source was wrong
What have I done?Restored source, regenerated skill, verified no stale nested source refs

Open risks:

  • None.