codepiper 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/package.json +2 -1
- package/packages/web/dist/assets/{AnalyticsPage-B2Jo5KhD.js → AnalyticsPage-DqhM5ADr.js} +1 -1
- package/packages/web/dist/assets/{PoliciesPage-Co0wDxU6.js → PoliciesPage-U-K61nH-.js} +1 -1
- package/packages/web/dist/assets/{SessionDetailPage-B02hN2vV.js → SessionDetailPage-BSz5hcHE.js} +1 -1
- package/packages/web/dist/assets/{SettingsPage-CsblfgAu.js → SettingsPage-Dlrev9PO.js} +1 -1
- package/packages/web/dist/assets/{WorkflowsPage-D6nmynEV.js → WorkflowsPage-Chn2r8wA.js} +1 -1
- package/packages/web/dist/assets/{index-CpYkYxsw.js → index-DBlyZnLx.js} +6 -6
- package/packages/web/dist/assets/{pencil-BQdMfs6R.js → pencil-Da7xVL3F.js} +1 -1
- package/packages/web/dist/assets/{refresh-cw-Bk2hIBMy.js → refresh-cw-CPonRjbV.js} +1 -1
- package/packages/web/dist/assets/{tabs-8Wa2H5Vg.js → tabs-B571nOS8.js} +1 -1
- package/packages/web/dist/assets/{trash-2-kiez5gqY.js → trash-2-CP0E4E_1.js} +1 -1
- package/packages/web/dist/index.html +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,16 @@ This project follows [Semantic Versioning](https://semver.org/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.2.1] - 2026-02-21
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- Added `test:onboarding-smoke` scenario test to validate first-run auth onboarding end-to-end (bootstrap password, MFA setup, and final authenticated state).
|
|
13
|
+
- Added onboarding smoke coverage to release smoke gate to catch onboarding regressions before publishing.
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
- Fixed MFA setup screen retry/race behavior that could leave onboarding stuck on “Generating authenticator QR code...”.
|
|
17
|
+
- Improved setup page MFA retry behavior so failed attempts can be retried cleanly without refresh.
|
|
18
|
+
|
|
9
19
|
## [0.2.0] - 2026-02-21
|
|
10
20
|
|
|
11
21
|
### Added
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codepiper",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Orchestrate Claude Code and Codex sessions from one control plane: policy-guarded, real-time, and recoverable across devices.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "g3ortega",
|
|
@@ -74,6 +74,7 @@
|
|
|
74
74
|
"dev:web": "bun run --cwd packages/web dev",
|
|
75
75
|
"cli": "bun run packages/cli/src/main.ts",
|
|
76
76
|
"test": "bun test",
|
|
77
|
+
"test:onboarding-smoke": "bun run scripts/tests/onboarding-smoke.ts",
|
|
77
78
|
"test:integration": "bun test --integration",
|
|
78
79
|
"typecheck": "bunx tsc -b tsconfig.json",
|
|
79
80
|
"typecheck:strict:daemon": "bunx tsc -p packages/daemon/tsconfig.strict.json --pretty false",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as i,j as e}from"./react-vendor-B5MgMUHH.js";import{c as A,a as f,f as h,u as U,S as ne,b as le,d as ce,e as de,g as N,B as xe,M as me,A as he,Z as pe}from"./index-
|
|
1
|
+
import{r as i,j as e}from"./react-vendor-B5MgMUHH.js";import{c as A,a as f,f as h,u as U,S as ne,b as le,d as ce,e as de,g as N,B as xe,M as me,A as he,Z as pe}from"./index-DBlyZnLx.js";import{R as g,A as B,C as E,X as w,Y as S,T as v,a as u,B as K,b as F,P as ue,d as fe,e as je}from"./chart-vendor-DlOHLaCG.js";import"./monaco-core-DQ5Mk8AK.js";/**
|
|
2
2
|
* @license lucide-react v0.564.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as c,j as e}from"./react-vendor-B5MgMUHH.js";import{c as z,S as V,b as O,d as U,e as q,g as y,h as v,i as B,j as f,u,B as p,P as D,I as j,D as S,k as $,l as F,m as I,n as E,o as R,p as T,C as X,q as J,X as K,r as L}from"./index-
|
|
1
|
+
import{r as c,j as e}from"./react-vendor-B5MgMUHH.js";import{c as z,S as V,b as O,d as U,e as q,g as y,h as v,i as B,j as f,u,B as p,P as D,I as j,D as S,k as $,l as F,m as I,n as E,o as R,p as T,C as X,q as J,X as K,r as L}from"./index-DBlyZnLx.js";import{T as _}from"./trash-2-CP0E4E_1.js";import{P as Q,L as k}from"./pencil-Da7xVL3F.js";import{T as Y,a as Z,b as C,c as P}from"./tabs-B571nOS8.js";import"./monaco-core-DQ5Mk8AK.js";import"./chart-vendor-DlOHLaCG.js";/**
|
|
2
2
|
* @license lucide-react v0.564.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
package/packages/web/dist/assets/{SessionDetailPage-B02hN2vV.js → SessionDetailPage-BSz5hcHE.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/monacoSetup-DvBj52bT.js","assets/monaco-react-DfZNWvtW.js","assets/react-vendor-B5MgMUHH.js","assets/monaco-core-DQ5Mk8AK.js","assets/monaco-core-B_19GPAS.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as u,j as t,k as ur,l as hs,o as gt,m as pt,n as wn,p as At,q as Vt,t as ps,w as dr,E as xs,x as kn,y as Rt,z as ke,A as gs,C as bs,D as We,F as Zt,G as ys,H as St,I as ft,J as vs,M as ws,K as ks,u as js}from"./react-vendor-B5MgMUHH.js";import{c as K,j as A,q as xt,i as Gt,S as mr,b as fr,G as jn,d as hr,e as pr,g as pn,s as Ns,a as Qe,t as xr,C as gr,u as q,T as Cs,v as Ss,B as Ke,P as Es,X as et,r as Rs,h as Et,L as br,w as Ae,x as yr,M as vr,y as en,z as wr,E as Ts,F as As,H as Ms,J as Ds,K as Ps,N as Ls,O as _s,Q as Fs,R as zs,U as $s,I as Is,V as Os,W as Bs,Y as Hs,_ as Us,$ as qs}from"./index-
|
|
2
|
+
import{r as u,j as t,k as ur,l as hs,o as gt,m as pt,n as wn,p as At,q as Vt,t as ps,w as dr,E as xs,x as kn,y as Rt,z as ke,A as gs,C as bs,D as We,F as Zt,G as ys,H as St,I as ft,J as vs,M as ws,K as ks,u as js}from"./react-vendor-B5MgMUHH.js";import{c as K,j as A,q as xt,i as Gt,S as mr,b as fr,G as jn,d as hr,e as pr,g as pn,s as Ns,a as Qe,t as xr,C as gr,u as q,T as Cs,v as Ss,B as Ke,P as Es,X as et,r as Rs,h as Et,L as br,w as Ae,x as yr,M as vr,y as en,z as wr,E as Ts,F as As,H as Ms,J as Ds,K as Ps,N as Ls,O as _s,Q as Fs,R as zs,U as $s,I as Is,V as Os,W as Bs,Y as Hs,_ as Us,$ as qs}from"./index-DBlyZnLx.js";import{_ as In}from"./monaco-core-DQ5Mk8AK.js";import{R as Vs}from"./refresh-cw-CPonRjbV.js";import{L as On,P as Ks}from"./pencil-Da7xVL3F.js";import{x as Gs,a as Ws}from"./terminal-vendor-Cs8KPbV3.js";import{T as Qs,a as Ys,b as Xs,c as kt}from"./tabs-B571nOS8.js";import"./chart-vendor-DlOHLaCG.js";/**
|
|
3
3
|
* @license lucide-react v0.564.0 - ISC
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the ISC license.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as a,j as e}from"./react-vendor-B5MgMUHH.js";import{c as $,F as gs,a0 as Y,j as C,u as t,a1 as ys,a2 as vs,z as js,r as pe,Z as Ns,a3 as Re,a4 as ws,a as Ue,a5 as ks,a6 as Me,D as J,k as He,B as E,P as X,l as ee,m as se,n as te,o as ae,I as T,p as re,a7 as he,C as Ss,q as Cs,a8 as V,a9 as Es,x as Le,aa as Ps,ab as me,ac as As}from"./index-
|
|
1
|
+
import{r as a,j as e}from"./react-vendor-B5MgMUHH.js";import{c as $,F as gs,a0 as Y,j as C,u as t,a1 as ys,a2 as vs,z as js,r as pe,Z as Ns,a3 as Re,a4 as ws,a as Ue,a5 as ks,a6 as Me,D as J,k as He,B as E,P as X,l as ee,m as se,n as te,o as ae,I as T,p as re,a7 as he,C as Ss,q as Cs,a8 as V,a9 as Es,x as Le,aa as Ps,ab as me,ac as As}from"./index-DBlyZnLx.js";import{R as $e}from"./refresh-cw-CPonRjbV.js";import{T as We}from"./trash-2-CP0E4E_1.js";import{T as Ds,a as Fs,b as G,c as Q}from"./tabs-B571nOS8.js";import"./monaco-core-DQ5Mk8AK.js";import"./chart-vendor-DlOHLaCG.js";/**
|
|
2
2
|
* @license lucide-react v0.564.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r,j as e}from"./react-vendor-B5MgMUHH.js";import{G as n,i,j as c,u as m}from"./index-
|
|
1
|
+
import{r,j as e}from"./react-vendor-B5MgMUHH.js";import{G as n,i,j as c,u as m}from"./index-DBlyZnLx.js";import"./monaco-core-DQ5Mk8AK.js";import"./chart-vendor-DlOHLaCG.js";function b(){const[t,d]=r.useState([]),[a,l]=r.useState(!0);return r.useEffect(()=>{(async()=>{try{const o=await c.getWorkflows();d(o.workflows)}catch{m.error("Failed to load workflows")}finally{l(!1)}})()},[]),e.jsxs("div",{className:"p-4 md:p-8 max-w-7xl mx-auto",children:[e.jsx("div",{className:"flex justify-between items-center mb-4 md:mb-6",children:e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl md:text-3xl font-bold tracking-tight",children:"Workflows"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Orchestrate multi-step session automations"})]})}),a?e.jsx("div",{className:"flex justify-center items-center h-64",children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx("div",{className:"w-4 h-4 border-2 border-cyan-500/30 border-t-cyan-500 rounded-full animate-spin"}),e.jsx("span",{className:"text-sm",children:"Loading workflows..."})]})}):t.length===0?e.jsxs("div",{className:"flex flex-col items-center justify-center h-64 rounded-xl border border-border bg-card/80",children:[e.jsx(n,{className:"h-10 w-10 text-muted-foreground/20 mb-3"}),e.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"No workflows defined"}),e.jsxs("p",{className:"text-xs text-muted-foreground/60",children:["Create workflows via the CLI:"," ",e.jsx("code",{className:"bg-muted/50 px-1.5 py-0.5 rounded text-[11px] font-mono border border-border",children:"codepiper workflow create"})]})]}):e.jsx("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-3",children:t.map(s=>e.jsxs("div",{className:"rounded-xl border border-border bg-card/80 backdrop-blur-sm p-5 hover:bg-accent/50 transition-colors",children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsx("h3",{className:"text-sm font-semibold",children:s.name}),e.jsx("span",{className:"text-[10px] font-mono text-muted-foreground/50 bg-muted/50 px-1.5 py-0.5 rounded border border-border",children:s.id})]}),s.description&&e.jsx("p",{className:"text-sm text-muted-foreground mb-3",children:s.description}),e.jsxs("p",{className:"text-[11px] text-muted-foreground/50",children:["Created ",i(s.createdAt)]})]},s.id))})]})}export{b as WorkflowsPage};
|