feat: default steps are read only
Server Deploy / deploy (push) Successful in 1m46s

This commit is contained in:
2026-07-28 13:34:08 +01:00
parent 26567766a9
commit 31e0000306
7 changed files with 80 additions and 23 deletions
+6 -4
View File
@@ -175,14 +175,16 @@ export default function StepsPage() {
<td className="px-4 py-3 text-right">
<div className="flex items-center justify-end gap-3 text-text-secondary">
<button onClick={() => openEdit(s)} className="hover:text-text-primary">
Edit
{s.source === "default" ? "View" : "Edit"}
</button>
<a href={api.exportStepUrl(s.step_id)} download className="hover:text-text-primary">
Export
</a>
<button onClick={() => openEdit(s)} className="hover:text-danger">
Delete
</button>
{s.source !== "default" && (
<button onClick={() => openEdit(s)} className="hover:text-danger">
Delete
</button>
)}
</div>
</td>
</tr>
+9 -2
View File
@@ -457,7 +457,8 @@ export default function WorkflowBuilder() {
<div className="border-b border-border pb-4">
<label className="mb-1 block text-xs uppercase text-text-secondary">Command</label>
<textarea
className={`${inputClass} h-32 font-mono text-xs`}
className={`${inputClass} h-32 font-mono text-xs ${selectedLib?.source === "default" ? "cursor-not-allowed opacity-70" : ""}`}
readOnly={selectedLib?.source === "default"}
value={selectedRef.overrides?.script ?? selectedLib?.script ?? ""}
onChange={(e) =>
updateRef(selectedIdxInWf, {
@@ -466,7 +467,13 @@ export default function WorkflowBuilder() {
}
/>
<p className="mt-1 text-xs text-text-secondary">
Write <code className="text-signal">KEY=value</code> to <code className="text-signal">$WORKFLOW_ENV</code> to expose it to later steps.
{selectedLib?.source === "default" ? (
<>This step ships with Vantage, so its script is fixed. Set its inputs below, or duplicate it into a shared step to change the script.</>
) : (
<>
Write <code className="text-signal">KEY=value</code> to <code className="text-signal">$WORKFLOW_ENV</code> to expose it to later steps.
</>
)}
</p>
</div>
)}