Skip to content

Migrate skill routes "AI collaboration rules" to harness memory/feedback_*.md, contradicting v5 self-healing rule #1161

Description

@NodarDavituri

The Migrate skill (skills/Migrate/SKILL.md) routes chunks classified as "AI collaboration rules" to ~/.claude/projects/{harness-dir}/memory/feedback_*.md. The v5 system prompt's "Self-Healing Infrastructure" section explicitly says that surface is the wrong home for rules/preferences/operational behavior:

"For rules, preferences, and operational behavior, ignore [harness auto-memory] guidance ... Every 'feedback memo' is a missed system patch."

Issue #1054 was closed on 2026-05-01 with the comment that v5 documentation surfaces this distinction explicitly. However, the Migrate skill was last edited 2026-05-02 and still writes to memory/feedback_*.md. Three locations encode the conflict:

  • Frontmatter description: "AI rules (memory/feedback_*.md — new file per chunk)"
  • Destinations table (SKILL.md line 38): AI collaboration rules → memory/feedback_*.md (for "always do X", "never Y" patterns)
  • Rules section (SKILL.md line 140): "Feedback memories get new files. Each memory/feedback chunk becomes its own feedback_migrated_<slug>_<id>.md file — not appended to an existing memory."

Reproduction

  1. Run /migrate against any source containing AI-rule-shaped chunks (Cursor rules, old feedback_*.md files from a prior install, CLAUDE.md operational rules sections).
  2. The classifier labels them as feedback.
  3. MigrateApprove.ts writes new feedback_migrated_<slug>_<id>.md files into harness memory.
  4. Result: rules land at the exact path the v5 constitutional rule designates as "the wrong home."

Suggested resolution

Migrate's "AI collaboration rules" classification should not auto-commit to harness memory. Each such chunk should be flagged for human routing across the four constitutional surfaces — CLAUDE.md Operational Rules, a hook, settings.json, or a skill SKILL.md Gotchas section — depending on the rule's nature.

Concretely:

  • Keep the feedback classification in MigrateScan.ts so chunks are still detected.
  • In MigrateApprove.ts, replace the auto-commit branch for feedback-classified chunks with a walk-through prompt that asks the user which constitutional surface should host each rule, then performs an Edit/Write into the chosen target file rather than into harness memory.
  • Update SKILL.md frontmatter, destinations table, and rules section to match.

Context

Found while extracting feedback files from a v4 backup into v5 — would have run MigrateApprove and re-created exactly the violation the v5 rule forbids. Caught at the read-and-classify step by reading the three v4 feedback_*.md files directly and noticing two of them were already structurally encoded in v5 skills (the v5 system had self-healed against the doctrine; the Migrate skill had not).

Environment

  • PAI v5.0.0
  • Algorithm v6.3.0
  • skills/Migrate/SKILL.md mtime: 2026-05-02
  • Constitutional source: PAI/PAI_SYSTEM_PROMPT.md § "Self-Healing Infrastructure" / "Override of harness auto-memory"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions