AseptSoft Core Documentation
Breadcrumbs

Validation

Validation is the process of formally marking individual entities as valid in their current form within a Review Session. Each validation is cryptographically tied to the entity's content using a SHA-256 hash — if the entity changes in any way, the validation is automatically invalidated.

Access: Validation is available through the Review Session Ribbon (in-ribbon checkboxes) or through the Validation Inspector window.


🏭 Pharma Example — GMP Validation Checklist Walkthrough

During a GMP validation of a WFI distribution loop, the quality team must formally verify every valve state in every step of the sanitization process. Using the Validation Inspector, the validator opens the tree view and works through each step: checking that VP-101 is "open" during sanitization, VP-102 is "closed" during drain, and so on. Each checkbox click records the validator's identity and a SHA-256 hash of the entity's current state. If the process engineer later changes VP-101's percentage from 100% to 80%, that validation is automatically expired and flagged for re-review — ensuring the GMP record always reflects the actual configuration.


🔍 Validatable Entities

The following entity types can be individually validated:

Entity

What the Hash Covers

Process

Process name, structure, and all child entities

Phase (step)

Step definition and all child entities (Conditions + Valve statuses)

Condition

All condition field values

Valve state within a phase

The State and percentage of a Valve within a specific Step, including all Flow States


🔐 Hash-Based Integrity

When a validator marks an entity as valid, AseptSoft computes a SHA-256 hash of the entity's current content and stores it alongside the validation record. On every subsequent access, the current hash is recomputed and compared:

  • Match — the entity is unchanged; validation remains valid

  • Mismatch — the entity has been modified; the validation is automatically expired

⚠️ What Invalidates a Validation

Any of the following changes will break the hash and invalidate the validation:

Change

Affected Validations

Step order changed

Step + parent Process

Step created or deleted

Parent Process

Condition field values edited

Condition + parent Step + parent Process

Condition created, reordered, or deleted

Parent Step + parent Process

Valve State or percentage changed

Valve Status + parent Step + parent Process

Flow State changed

Valve Status + parent Step + parent Process

Important: When a child entity loses validation, all parent entities in the hierarchy automatically lose validation as well. The hierarchy is: Process -> Step -> Conditions + Valve Statuses.


🔎 Validation Inspector

The Validation Inspector is a dedicated window showing the complete validation tree for the current module. It displays every entity in a hierarchical view with checkboxes:

🌳 Structure

The tree follows this hierarchy:

  • Process (e.g., "CIP")

    • Step 1 (e.g., "Pre-rinse")

      • Conditions (e.g., "Start", "Timer")

      • Valves (e.g., "V-101: Open", "V-102: Closed")

    • Step 2 (e.g., "Wash")

      • ...

📋 How To: Validate a CIP Process Using the Inspector

  1. Open the Review Session Ribbon and click the Validation Inspector button

  2. Expand the CIP Process node in the tree

  3. Work through each Step: expand it, review the Conditions and Valve statuses

  4. Click the checkbox next to each entity you have verified

  5. Use "Display unresolved items only" to filter the tree and focus on remaining work

  6. Once all children of a Step are validated, the Step is automatically validated (bottom-up propagation)

  7. Once all Steps are validated, the Process is automatically validated

📐 Propagation Rules

Rule

Behavior

Bottom-up auto-validation

When all children of an entity are validated, the parent is automatically validated

Top-down invalidation

When a parent is validated and any child loses validation, the parent automatically loses validation

Inactive Valves excluded

Valves with no active state in a particular Step are hidden from that Step's validation view — they cannot be validated and do not count as unvalidated

Note: These propagation rules are customizable upon request.


🎛️ In-Ribbon Validation

The Review Session Ribbon provides four quick-validation checkboxes that reflect and control the validation status of the currently active entities:

Checkbox

Scope

Active Process Valid

Validates or unvalidates the current Process entirely (including all child Steps, Conditions, and Valve statuses)

Active Step Valid

Validates or unvalidates the current Step entirely (including all child Conditions and Valve statuses)

Active Condition Valid

Validates or unvalidates the currently active Condition

Active Selection Valid

Validates or unvalidates the currently selected Valves in the drawing

Note: Active Selection Valid will not validate Valves that have no active State in the current Step.

🔍 Select Unvalidated

Use the Select Unvalidated button in the ribbon to automatically select (in AutoCAD) all Valves that are not yet validated in the current Step. This helps quickly identify which Valves still need review on the P&ID.


🏷️ Entity Trace

Each validation record includes an Entity Trace — a breadcrumb path identifying exactly which entity was validated and its location in the hierarchy. The trace includes:

Level

Identifier

Process

Process name and ID

Step

Step name, index, and parent Process

Condition

Condition index and parent Step

Valve Status

Valve tag, State name, and parent Step

This trace ensures validations remain unambiguous even if entities are renamed or reordered after validation.