# Dynamic Workplan Contract ```yaml contract id: dynamic-workplan-contract-v1 document: type: workplan fields: id: type: string required: true status: type: string required: true enum: [proposed, active, done, deferred] owner: type: string source: context.workplan.owner sections: - id: purpose title: Purpose presence: required level: 2 - id: tasks title: Tasks presence: required level: 2 - id: decision-point title: Decision Point presence: optional level: 2 rules: - id: require-decision-point-when-done if: path: fields.status.value equals: done then: sections: decision-point: presence: required - id: owner-needed-for-active-work if: path: fields.status.value equals: active then: required: [owner] ```