Skip to content

Commit 303ceab

Browse files
committed
Add Codex workflow walkthrough proof
1 parent 23e0045 commit 303ceab

3 files changed

Lines changed: 208 additions & 0 deletions

File tree

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,8 @@ The Customer Desk is the ongoing communication lane. It keeps customer requests,
8787

8888
Connection and deployment steps stay approval-gated. Frontsmith prepares the path; it does not connect accounts, publish the site, or send customer messages without explicit owner approval.
8989

90+
The Codex workflow walkthrough proof is available at `docs/walkthroughs/codex-workflow-proof.md`. It shows the Owner Brief, Customer Desk reply draft, estimate preparation, website update/preview, extension planning, connected-action receipt, generated files, preview links, and approval boundaries.
91+
9092
For proposed live actions, Frontsmith can prepare a dry-run connected-action receipt before any adapter runs:
9193

9294
```bash
Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
# Codex Workflow Walkthrough Proof
2+
3+
This proof shows the real Frontsmith operating loop inside Codex. It is a static walkthrough for reviewers and operators; it does not expose private business records, credentials, or live customer data.
4+
5+
## 1. Owner Brief
6+
7+
Owner prompt:
8+
9+
```text
10+
Run today's Owner Brief for Acme.
11+
```
12+
13+
Local command:
14+
15+
```bash
16+
npm run owner:brief
17+
```
18+
19+
Expected Frontsmith response:
20+
21+
- summarizes current business state;
22+
- points to waiting customer reply drafts;
23+
- points to waiting estimate drafts;
24+
- shows launch status and integration blockers;
25+
- names the next owner decisions.
26+
27+
Generated files:
28+
29+
- `.frontsmith/business/activity/owner-brief.md`
30+
- `.frontsmith/business/launch/launch-status.md`
31+
- `.frontsmith/business/settings/integrations.md`
32+
33+
Approval boundary:
34+
35+
- local-only summary;
36+
- no email sent;
37+
- no website deployed;
38+
- no provider connected;
39+
- no connected action executed.
40+
41+
## 2. Customer Desk Reply Draft
42+
43+
Owner prompt:
44+
45+
```text
46+
Prepare a reply for Jamie's kitchen remodeling request. The customer wants a better layout, new cabinets, and clearer next steps.
47+
```
48+
49+
Local command:
50+
51+
```bash
52+
npm run prepare:reply -- --name "Jamie" --project "Kitchen Remodeling" --notes "Customer wants a better layout, new cabinets, and clearer next steps."
53+
```
54+
55+
Expected Frontsmith response:
56+
57+
- prepares a customer-ready reply draft;
58+
- summarizes customer context;
59+
- lists follow-up tracking items;
60+
- identifies send checklist items;
61+
- names the exact approval needed before sending.
62+
63+
Generated files:
64+
65+
- `.frontsmith/business/customer-inquiries/kitchen-remodeling-reply-draft.md`
66+
67+
Approval boundary:
68+
69+
- draft only;
70+
- nothing sent to the customer;
71+
- no Gmail, CRM, or provider action runs.
72+
73+
## 3. Estimate Preparation
74+
75+
Owner prompt:
76+
77+
```text
78+
Draft the estimate path for the kitchen remodeling request and show what still needs owner approval.
79+
```
80+
81+
Local command:
82+
83+
```bash
84+
npm run prepare:estimate -- --project "Kitchen Remodeling" --scope "Cabinet replacement, counter update, lighting review, and layout clarification."
85+
```
86+
87+
Expected Frontsmith response:
88+
89+
- prepares estimate assumptions;
90+
- lists captured scope;
91+
- lists missing pricing inputs;
92+
- prepares proposal outline;
93+
- links the related customer reply draft.
94+
95+
Generated files:
96+
97+
- `.frontsmith/business/estimates/kitchen-remodeling-estimate-draft.md`
98+
99+
Approval boundary:
100+
101+
- estimate preparation only;
102+
- no final price is created unless owner rules are provided;
103+
- no proposal is sent.
104+
105+
## 4. Website Update And Preview
106+
107+
Owner prompt:
108+
109+
```text
110+
Update the website from the current business profile and show me the changed files.
111+
```
112+
113+
Local command:
114+
115+
```bash
116+
npm run update:website
117+
npm run preview:website
118+
```
119+
120+
Expected Frontsmith response:
121+
122+
- updates `website/` from the business profile;
123+
- writes a website review artifact;
124+
- names changed files;
125+
- gives a local preview path.
126+
127+
Generated files:
128+
129+
- `website/index.html`
130+
- `website/styles.css`
131+
- `website/script.js`
132+
- `.frontsmith/business/launch/website-review.md`
133+
- `.frontsmith/business/activity/latest-website-update.md`
134+
135+
Preview links:
136+
137+
- local website preview: `http://127.0.0.1:4183/`
138+
- hosted Frontsmith demo: `https://frontsmith.neurapath.ai/`
139+
- hosted sample website path: `https://frontsmith.neurapath.ai/website`
140+
141+
Approval boundary:
142+
143+
- local preview only;
144+
- no deployment;
145+
- no DNS change;
146+
- no production contact-form test send.
147+
148+
## 5. Extension Planning And Connected-Action Receipt
149+
150+
Owner prompt:
151+
152+
```text
153+
Prepare an extension plan for consultation scheduling, then prepare a dry-run connected-action receipt for the proposed calendar action.
154+
```
155+
156+
Local commands:
157+
158+
```bash
159+
npm run prepare:extension -- --capability "Consultation scheduling" --connector "Google Calendar" --goal "Prepare an owner-reviewed workflow for approved consultation requests."
160+
npm run prepare:connected-action -- --action-type "calendar" --title "Create consultation hold" --target "Approved consultation request" --evidence "Owner-approved scheduling notes"
161+
```
162+
163+
Expected Frontsmith response:
164+
165+
- creates an extension plan before implementation;
166+
- creates a dry-run connected-action receipt;
167+
- records Neura Registry and Relay placeholder refs;
168+
- lists blocked adapters;
169+
- names approval requirements before connected mode.
170+
171+
Generated files:
172+
173+
- `.frontsmith/business/extensions/consultation-scheduling-extension-plan.md`
174+
- `.frontsmith/business/connected-actions/calendar-create-consultation-hold-receipt.md`
175+
- `.frontsmith/business/connected-actions/calendar-create-consultation-hold-receipt.json`
176+
177+
Approval boundary:
178+
179+
- no Google Calendar action;
180+
- no provider setup;
181+
- no email, file upload, publishing, export, or external action;
182+
- connected-mode Neura Relay preflight remains pending until the owner approves it.
183+
184+
## Verification Commands
185+
186+
```bash
187+
npm run check
188+
npm run build:demo
189+
npm test
190+
```
191+
192+
These commands verify the repo contract, hosted demo build, workflow scripts, regression proof, and local-only approval boundaries.

tests/launch-readiness.mjs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const packageSpec = await readFile("docs/product/package-spec.md", "utf8");
99
const architecture = await readFile("docs/product/architecture.md", "utf8");
1010
const launchScenarios = await readFile("docs/product/launch-scenarios.md", "utf8");
1111
const extensionGuide = await readFile("docs/developer/extension-guide.md", "utf8");
12+
const codexWorkflowProof = await readFile("docs/walkthroughs/codex-workflow-proof.md", "utf8");
1213

1314
const requiredCapabilities = [
1415
"business-setup",
@@ -50,6 +51,7 @@ const requiredFiles = [
5051
"workflows/prepare-extension-plan.md",
5152
"workflows/prepare-connected-action.md",
5253
"docs/product/launch-scenarios.md",
54+
"docs/walkthroughs/codex-workflow-proof.md",
5355
"docs/developer/extension-guide.md",
5456
"tests/regression.mjs",
5557
"docs/assets/frontsmith-control-panel.png",
@@ -116,6 +118,7 @@ for (const command of [
116118

117119
assertIncludes(readme, "docs/assets/frontsmith-control-panel.png", "README Control Panel screenshot");
118120
assertIncludes(readme, "docs/assets/frontsmith-acme-website.png", "README Acme website screenshot");
121+
assertIncludes(readme, "docs/walkthroughs/codex-workflow-proof.md", "README walkthrough proof");
119122

120123
for (const doc of [
121124
["README", readme],
@@ -137,6 +140,17 @@ assertIncludes(extensionGuide, "Extension Planning Workflow", "developer extensi
137140
assertIncludes(extensionGuide, "Connected-Action Receipt Workflow", "developer connected-action workflow");
138141
assertIncludes(launchScenarios, "must not send email, publish a website, change DNS, connect providers", "launch gate safety");
139142
assertIncludes(launchScenarios, "Connected-Action Receipt", "connected-action launch scenario");
143+
for (const section of [
144+
"Owner Brief",
145+
"Customer Desk Reply Draft",
146+
"Estimate Preparation",
147+
"Website Update And Preview",
148+
"Extension Planning And Connected-Action Receipt"
149+
]) {
150+
assertIncludes(codexWorkflowProof, section, `walkthrough section ${section}`);
151+
}
152+
assertIncludes(codexWorkflowProof, "Generated files", "walkthrough generated files");
153+
assertIncludes(codexWorkflowProof, "Approval boundary", "walkthrough approval boundary");
140154

141155
console.log("Frontsmith launch-readiness contract passed.");
142156

0 commit comments

Comments
 (0)