How Policy Versioning Works

Policy Identifiers

Each policy in BaseState is uniquely identified by three components:

Policy ID: 550e8400-e29b-41d4-a716-446655440000
Version: v1.0
Document Hash: a7f5e8d3c2b1f4e6a9d8c7b6a5f4e3d2c1b0a9f8e7d6c5b4a3f2e1d0...

Why Document Hash Matters

The document hash proves the exact content of the policy that was acknowledged:

  1. When a policy is created, BaseState computes a SHA-256 hash of the entire policy text (or URL).
  2. This hash is stored with the policy and included on all certificates.
  3. If even a single character changes, the hash would be completely different.
  4. This proves to auditors exactly which version of the policy the employee acknowledged.
Example: If your policy text changes from "employees should" to "employees shall", the document hash would be completely different, proving it's a different policy version.

Policy Immutability

Once a policy is created, its content is immutable. This is by design:

Effective Date

The effective date indicates when this policy version became (or will become) the official company policy. This is separate from:

Attestation Text Version

The attestation text (the checkbox statement employees agree to) is also versioned. This ensures: