fix: address review findings - transitions, spec wording, dead fallback

This commit is contained in:
lda
2026-07-08 16:48:40 +07:00 Verified
parent 801a76b740
commit 03689c719e
2 changed files with 18 additions and 4 deletions
@@ -85,7 +85,7 @@ const PositioningScene = ({ scene, beat }: { scene: SceneDefinition; beat: Scene
>
<span className="scene-body__positioning-label">This thesis</span>
<strong>lda.chat</strong>
<p>Typed workflow substrate for external agents and human operators.</p>
<p>Typed lifecycle substrate for external agents and human operators.</p>
<ul>
<li>Lifecycle</li>
<li>Validation</li>
@@ -139,7 +139,7 @@ const BoundaryScene = ({ scene, beat }: { scene: SceneDefinition; beat: SceneBea
<ul>
<li>Proposes workflow structure</li>
<li>Revises steps and bindings</li>
<li>Chooses public operations</li>
<li>Chooses tools</li>
</ul>
</section>
<div className="scene-body__boundary-seam" aria-label="workflow operation boundary">
@@ -156,7 +156,8 @@ const BoundaryScene = ({ scene, beat }: { scene: SceneDefinition; beat: SceneBea
<ul>
<li>Validates schemas and routes</li>
<li>Executes deterministic nodes</li>
<li>Records traces and resume state</li>
<li>Records traces and run output</li>
<li>Resumes from persisted state</li>
</ul>
</section>
</div>
@@ -174,7 +175,7 @@ const lifecycleStages = [
const LifecycleScene = ({ scene, beat }: { scene: SceneDefinition; beat: SceneBeatDefinition }) => {
const activeIndex = Math.max(0, lifecycleStages.findIndex((stage) => stage.id === beat.id));
const activeStage = lifecycleStages[activeIndex] ?? lifecycleStages[0];
const activeStage = lifecycleStages[activeIndex]!;
return (
<>
<StageCaption eyebrow="Act II · implemented" title={scene.title}>
@@ -751,6 +751,11 @@
opacity: 0.58;
}
.scene-body__positioning-tile,
.scene-body__positioning-substrate {
transition: opacity 0.25s ease, transform 0.25s ease, border-color 0.2s ease, background 0.2s ease;
}
.scene-body__positioning-substrate[data-positioning-active="true"] {
transform: translateY(-0.25rem);
border-color: color-mix(in oklch, var(--accent-cyan, oklch(0.7 0.16 195)) 68%, transparent);
@@ -781,6 +786,10 @@
opacity: 0.58;
}
.scene-body__boundary-pane {
transition: opacity 0.25s ease, transform 0.25s ease, border-color 0.2s ease, background 0.2s ease;
}
.scene-body__boundary-pane h3 {
margin: 0;
color: var(--color-editorial-ink, oklch(0.19 0.015 65));
@@ -851,6 +860,10 @@
opacity: 0.68;
}
.scene-body__lifecycle-stage {
transition: opacity 0.25s ease, transform 0.25s ease, border-color 0.2s ease, background 0.2s ease;
}
.scene-body__lifecycle-stage[data-lifecycle-active="true"] {
opacity: 1;
transform: translateY(-0.25rem);