{% extends "base.html" %} {% load i18n static %} {% block title %}{% trans "New baseline" %} · {{ project.name }}{% endblock %} {% block contents %}
{% trans "Baseline metadata" %}
{% csrf_token %} {% if form.non_field_errors %}
{{ form.non_field_errors }}
{% endif %}
{{ form.name }}

{% trans "Unique within this project — e.g. v1.0, sprint-23, audit-2026Q2." %}

{{ form.name.errors }}
{{ form.version }}

{% trans "Pin this baseline to a Kiwi management.Version row so release notes can quote a single identifier." %}

{{ form.version.errors }}
{{ form.notes }}

{% trans "What's the purpose of this snapshot? Audit reviewers will see this verbatim." %}

{{ form.notes.errors }}

{% trans "Cancel" %}
{% trans "What gets frozen" %}
  • {% blocktrans %}Every Requirement currently scoped to this project — identifier, title, level, category, status, and full text are snapshotted into BaselineRequirementSnapshot rows.{% endblocktrans %}
  • {% blocktrans %}Every RequirementTestCaseLink attached to those requirements (link type, suspect flag, coverage notes) lands in BaselineLinkSnapshot.{% endblocktrans %}
  • {% trans "The snapshot is immutable. Edits to live requirements after freezing don't alter it — that's the whole point." %}
  • {% trans "Diff any two baselines to see what changed between releases." %}
{% trans "When to freeze" %}

{% trans "Typical milestones:" %}

  • {% trans "Sprint or iteration end" %}
  • {% trans "Release candidate cut" %}
  • {% trans "Audit / review handover" %}
  • {% trans "Customer acceptance gate" %}
{% endblock %}