fpf-skillplanning-update-plan

venikman's avatarfrom venikman

Updates a PlanItem by recording variance, preserving the audit trail.

0stars🔀0forks📁View on GitHub🕐Updated Jan 10, 2026

When & Why to Use This Skill

This Claude skill enables precise plan iteration by updating PlanItems through a structured variance-recording process. It ensures data integrity and a clear audit trail by creating new editions instead of modifying original objects, documenting exactly why and how a plan has evolved to maintain full traceability.

Use Cases

  • Dynamic Project Planning: Updating project constraints or requirements while preserving the original baseline for historical comparison and progress tracking.
  • Audit-Ready Workflows: Maintaining a transparent, immutable record of changes in automated decision-making processes to meet compliance or quality assurance standards.
  • Iterative Slot-Filling: Managing evolving user inputs in complex data collection tasks by tracking specific deltas and reasoning between different versions of a plan.
namefpf-skill:planning-update-plan
descriptionUpdates a PlanItem by recording variance, preserving the audit trail.
version0.1.0
allowed_tools[]

planning/update-plan Kernel

Context

This skill handles Plan Iteration. In FPF, you update a plan by creating a NEW edition (or delta) that explicitly records the variance from the baseline. You never mute the history.

Instructions

Given a previous SlotFillingsPlanItem and a requested change (Constraint Update), generate the new plan edition.

1. Invariants

  • Immutability: Do NOT modify the original object. Return a new object.
  • Traceability: The new object must reference the previous_edition_ref.
  • Reasoning: You must include a variance_reason explaining WHY the change occurred (e.g., "User added constraint X").

2. Output Schema

{
  kind: "SlotFillingsPlanItem",
  // ... (standard fields updated)
  previous_edition_ref: string, // URI of the previous plan
  variance_record: {
    reason: string,
    delta: {
       // Describe what slots changed
       // e.g. "removed Slot X, added Slot Y"
    }
  }
}