Repousser un projet en bloc, sauf ce dont on ne décide pas

Glisser la barre résumé décale toutes les phases du même nombre de jours,
écarts conservés : un projet engagé glisse souvent, et le faire phase par
phase les déformait. Restent en place ce qui est terminé — on ne réécrit
pas le passé — et les phases à date imposée, nouveau booléen `fixed` pour
ce qui est délégué ou tenu du dehors.

D'où le format en version 6 : sans l'incrément, un binaire antérieur
effacerait ces dates imposées à la première sauvegarde.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-10 18:07:31 +02:00
parent 55128fd0d4
commit 4a513f9a59
15 changed files with 788 additions and 74 deletions

View File

@@ -165,6 +165,18 @@
<input type="text" name="name" required autocomplete="off" />
</label>
<!--
Les deux cases encadrent les dates, chacune du côté où elle agit :
« Jalon » décide s'il y en a une ou deux, et se lit donc avant ;
« Date imposée » qualifie celles qu'on vient de saisir, et se lit
après. Le statut ferme la marche : il parle du travail, pas du
calendrier.
-->
<label class="case">
<input type="checkbox" name="milestone" />
Jalon (une seule date, affichée en losange)
</label>
<div class="champ-double">
<label>
Début
@@ -176,6 +188,16 @@
</label>
</div>
<!--
Orthogonale au statut, et c'est le point : une phase déléguée avance,
se termine ou se bloque comme une autre. Seul son ancrage dans le temps
nous échappe (docs/decisions.md, section 28).
-->
<label class="case">
<input type="checkbox" name="fixed" />
Date imposée (déléguée, contractuelle ou réglementaire)
</label>
<label>
Statut
<select name="status">
@@ -186,11 +208,6 @@
</select>
</label>
<label class="case">
<input type="checkbox" name="milestone" />
Jalon (une seule date, affichée en losange)
</label>
<!--
Les notes sont bâties par `notes.js` : aperçu markdown, barre d'outils
et zone de saisie, le tout identique dans les deux panneaux. Un seul
@@ -369,12 +386,15 @@
</section>
<section>
<h3>Modifier la phase du curseur</h3>
<h3>Modifier la ligne du curseur</h3>
<dl class="aide">
<dt><kbd></kbd> <kbd></kbd></dt>
<dd>Décale d'un jour</dd>
<dd>
Décale d'un jour — la phase du curseur, ou, sur la ligne d'un
projet, toutes ses phases non terminées
</dd>
<dt><kbd>Maj</kbd>+<kbd></kbd> <kbd></kbd></dt>
<dd>Allonge, raccourcit d'un jour</dd>
<dd>Allonge, raccourcit la phase d'un jour</dd>
<dt><kbd>Espace</kbd></dt>
<dd>Statut suivant : à venir, en cours, terminé, bloqué</dd>
<dt><kbd>Entrée</kbd> <kbd>e</kbd></dt>