@autoview/cli 0.1.0
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/LICENSE +661 -0
- package/README.md +407 -0
- package/lib/AutoViewAgent.d.ts +109 -0
- package/lib/AutoViewAgent.js +123 -0
- package/lib/AutoViewAgent.js.map +1 -0
- package/lib/agent/emitMcpServer.d.ts +15 -0
- package/lib/agent/emitMcpServer.js +157 -0
- package/lib/agent/emitMcpServer.js.map +1 -0
- package/lib/agent/emitReport.d.ts +14 -0
- package/lib/agent/emitReport.js +85 -0
- package/lib/agent/emitReport.js.map +1 -0
- package/lib/agent/toolSurface.d.ts +130 -0
- package/lib/agent/toolSurface.js +342 -0
- package/lib/agent/toolSurface.js.map +1 -0
- package/lib/agent/verifyAgentTasks.d.ts +87 -0
- package/lib/agent/verifyAgentTasks.js +126 -0
- package/lib/agent/verifyAgentTasks.js.map +1 -0
- package/lib/cli/main.d.ts +2 -0
- package/lib/cli/main.js +295 -0
- package/lib/cli/main.js.map +1 -0
- package/lib/compiler/AutoViewInterfaceCompiler.d.ts +27 -0
- package/lib/compiler/AutoViewInterfaceCompiler.js +68 -0
- package/lib/compiler/AutoViewInterfaceCompiler.js.map +1 -0
- package/lib/constants/AutoViewFrontendTemplate.d.ts +1 -0
- package/lib/constants/AutoViewFrontendTemplate.js +46 -0
- package/lib/constants/AutoViewFrontendTemplate.js.map +1 -0
- package/lib/constants/AutoViewSystemPromptConstant.d.ts +5 -0
- package/lib/constants/AutoViewSystemPromptConstant.js +4 -0
- package/lib/constants/AutoViewSystemPromptConstant.js.map +1 -0
- package/lib/context/IAutoViewAgentContext.d.ts +60 -0
- package/lib/context/IAutoViewAgentContext.js +3 -0
- package/lib/context/IAutoViewAgentContext.js.map +1 -0
- package/lib/fromSwagger.d.ts +53 -0
- package/lib/fromSwagger.js +513 -0
- package/lib/fromSwagger.js.map +1 -0
- package/lib/generateDeterministic.d.ts +26 -0
- package/lib/generateDeterministic.js +75 -0
- package/lib/generateDeterministic.js.map +1 -0
- package/lib/index.d.ts +15 -0
- package/lib/index.js +41 -0
- package/lib/index.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoView.d.ts +17 -0
- package/lib/orchestrate/orchestrateAutoView.js +491 -0
- package/lib/orchestrate/orchestrateAutoView.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewProductPlan.d.ts +37 -0
- package/lib/orchestrate/orchestrateAutoViewProductPlan.js +109 -0
- package/lib/orchestrate/orchestrateAutoViewProductPlan.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewRender.d.ts +133 -0
- package/lib/orchestrate/orchestrateAutoViewRender.js +943 -0
- package/lib/orchestrate/orchestrateAutoViewRender.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewRenderDeterministic.d.ts +24 -0
- package/lib/orchestrate/orchestrateAutoViewRenderDeterministic.js +92 -0
- package/lib/orchestrate/orchestrateAutoViewRenderDeterministic.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewReview.d.ts +48 -0
- package/lib/orchestrate/orchestrateAutoViewReview.js +328 -0
- package/lib/orchestrate/orchestrateAutoViewReview.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewScaffold.d.ts +45 -0
- package/lib/orchestrate/orchestrateAutoViewScaffold.js +586 -0
- package/lib/orchestrate/orchestrateAutoViewScaffold.js.map +1 -0
- package/lib/orchestrate/orchestrateAutoViewSdkStudy.d.ts +26 -0
- package/lib/orchestrate/orchestrateAutoViewSdkStudy.js +85 -0
- package/lib/orchestrate/orchestrateAutoViewSdkStudy.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewProductPlan.d.ts +96 -0
- package/lib/orchestrate/structures/IAutoViewProductPlan.js +3 -0
- package/lib/orchestrate/structures/IAutoViewProductPlan.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewProductPlanApplication.d.ts +38 -0
- package/lib/orchestrate/structures/IAutoViewProductPlanApplication.js +3 -0
- package/lib/orchestrate/structures/IAutoViewProductPlanApplication.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewRenderApplication.d.ts +38 -0
- package/lib/orchestrate/structures/IAutoViewRenderApplication.js +3 -0
- package/lib/orchestrate/structures/IAutoViewRenderApplication.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewReviewApplication.d.ts +40 -0
- package/lib/orchestrate/structures/IAutoViewReviewApplication.js +3 -0
- package/lib/orchestrate/structures/IAutoViewReviewApplication.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewSdkMap.d.ts +63 -0
- package/lib/orchestrate/structures/IAutoViewSdkMap.js +3 -0
- package/lib/orchestrate/structures/IAutoViewSdkMap.js.map +1 -0
- package/lib/orchestrate/structures/IAutoViewSdkStudyApplication.d.ts +37 -0
- package/lib/orchestrate/structures/IAutoViewSdkStudyApplication.js +3 -0
- package/lib/orchestrate/structures/IAutoViewSdkStudyApplication.js.map +1 -0
- package/lib/orchestrate/utils/HistoryMessage.d.ts +10 -0
- package/lib/orchestrate/utils/HistoryMessage.js +25 -0
- package/lib/orchestrate/utils/HistoryMessage.js.map +1 -0
- package/lib/orchestrate/utils/auditFrontendRuntime.d.ts +53 -0
- package/lib/orchestrate/utils/auditFrontendRuntime.js +362 -0
- package/lib/orchestrate/utils/auditFrontendRuntime.js.map +1 -0
- package/lib/orchestrate/utils/buildDeterministicPlan.d.ts +4 -0
- package/lib/orchestrate/utils/buildDeterministicPlan.js +233 -0
- package/lib/orchestrate/utils/buildDeterministicPlan.js.map +1 -0
- package/lib/orchestrate/utils/buildDeterministicSdkMap.d.ts +22 -0
- package/lib/orchestrate/utils/buildDeterministicSdkMap.js +154 -0
- package/lib/orchestrate/utils/buildDeterministicSdkMap.js.map +1 -0
- package/lib/orchestrate/utils/cacheNodeModules.d.ts +31 -0
- package/lib/orchestrate/utils/cacheNodeModules.js +134 -0
- package/lib/orchestrate/utils/cacheNodeModules.js.map +1 -0
- package/lib/orchestrate/utils/describeEndpointPropsShape.d.ts +37 -0
- package/lib/orchestrate/utils/describeEndpointPropsShape.js +192 -0
- package/lib/orchestrate/utils/describeEndpointPropsShape.js.map +1 -0
- package/lib/orchestrate/utils/describeEndpointRequestBodyShape.d.ts +22 -0
- package/lib/orchestrate/utils/describeEndpointRequestBodyShape.js +29 -0
- package/lib/orchestrate/utils/describeEndpointRequestBodyShape.js.map +1 -0
- package/lib/orchestrate/utils/describeEndpointResponseShape.d.ts +19 -0
- package/lib/orchestrate/utils/describeEndpointResponseShape.js +30 -0
- package/lib/orchestrate/utils/describeEndpointResponseShape.js.map +1 -0
- package/lib/orchestrate/utils/executeCachedBatch.d.ts +22 -0
- package/lib/orchestrate/utils/executeCachedBatch.js +64 -0
- package/lib/orchestrate/utils/executeCachedBatch.js.map +1 -0
- package/lib/orchestrate/utils/loadShoppingFixture.d.ts +33 -0
- package/lib/orchestrate/utils/loadShoppingFixture.js +17 -0
- package/lib/orchestrate/utils/loadShoppingFixture.js.map +1 -0
- package/lib/orchestrate/utils/normalizeProductPlanPaths.d.ts +24 -0
- package/lib/orchestrate/utils/normalizeProductPlanPaths.js +77 -0
- package/lib/orchestrate/utils/normalizeProductPlanPaths.js.map +1 -0
- package/lib/orchestrate/utils/renderJsonSchema.d.ts +23 -0
- package/lib/orchestrate/utils/renderJsonSchema.js +122 -0
- package/lib/orchestrate/utils/renderJsonSchema.js.map +1 -0
- package/lib/orchestrate/utils/renderResourcePage.d.ts +36 -0
- package/lib/orchestrate/utils/renderResourcePage.js +1415 -0
- package/lib/orchestrate/utils/renderResourcePage.js.map +1 -0
- package/lib/orchestrate/utils/validateFrontendTypecheck.d.ts +109 -0
- package/lib/orchestrate/utils/validateFrontendTypecheck.js +274 -0
- package/lib/orchestrate/utils/validateFrontendTypecheck.js.map +1 -0
- package/lib/preview/renderPreview.d.ts +22 -0
- package/lib/preview/renderPreview.js +198 -0
- package/lib/preview/renderPreview.js.map +1 -0
- package/lib/typings/compiler.d.ts +39 -0
- package/lib/typings/compiler.js +3 -0
- package/lib/typings/compiler.js.map +1 -0
- package/lib/typings/events.d.ts +106 -0
- package/lib/typings/events.js +3 -0
- package/lib/typings/events.js.map +1 -0
- package/lib/typings/index.d.ts +10 -0
- package/lib/typings/index.js +27 -0
- package/lib/typings/index.js.map +1 -0
- package/lib/typings/misc.d.ts +78 -0
- package/lib/typings/misc.js +3 -0
- package/lib/typings/misc.js.map +1 -0
- package/lib/utils/ArrayUtil.d.ts +8 -0
- package/lib/utils/ArrayUtil.js +30 -0
- package/lib/utils/ArrayUtil.js.map +1 -0
- package/lib/utils/StringUtil.d.ts +11 -0
- package/lib/utils/StringUtil.js +28 -0
- package/lib/utils/StringUtil.js.map +1 -0
- package/lib/utils/classifyEndpoints.d.ts +62 -0
- package/lib/utils/classifyEndpoints.js +216 -0
- package/lib/utils/classifyEndpoints.js.map +1 -0
- package/lib/utils/endpointFilter.d.ts +26 -0
- package/lib/utils/endpointFilter.js +0 -0
- package/lib/utils/endpointFilter.js.map +1 -0
- package/lib/utils/extractFields.d.ts +85 -0
- package/lib/utils/extractFields.js +231 -0
- package/lib/utils/extractFields.js.map +1 -0
- package/lib/utils/index.d.ts +13 -0
- package/lib/utils/index.js +30 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/normalizeForNestia.d.ts +34 -0
- package/lib/utils/normalizeForNestia.js +133 -0
- package/lib/utils/normalizeForNestia.js.map +1 -0
- package/lib/utils/resourcePlan.d.ts +39 -0
- package/lib/utils/resourcePlan.js +95 -0
- package/lib/utils/resourcePlan.js.map +1 -0
- package/lib/utils/sliceDocument.d.ts +17 -0
- package/lib/utils/sliceDocument.js +114 -0
- package/lib/utils/sliceDocument.js.map +1 -0
- package/lib/utils/toEndpoints.d.ts +90 -0
- package/lib/utils/toEndpoints.js +227 -0
- package/lib/utils/toEndpoints.js.map +1 -0
- package/lib/verify/runWorkflows.d.ts +25 -0
- package/lib/verify/runWorkflows.js +366 -0
- package/lib/verify/runWorkflows.js.map +1 -0
- package/lib/verify/workflows.d.ts +53 -0
- package/lib/verify/workflows.js +107 -0
- package/lib/verify/workflows.js.map +1 -0
- package/package.json +82 -0
- package/prompts/AUTOVIEW_RENDER.md +398 -0
- package/prompts/AUTOVIEW_REVIEW.md +60 -0
- package/prompts/AUTOVIEW_SDK_STUDY.md +89 -0
- package/src/AutoViewAgent.ts +222 -0
- package/src/agent/emitMcpServer.integration.test.ts +168 -0
- package/src/agent/emitMcpServer.test.ts +51 -0
- package/src/agent/emitMcpServer.ts +178 -0
- package/src/agent/emitReport.ts +117 -0
- package/src/agent/toolSurface.test.ts +243 -0
- package/src/agent/toolSurface.ts +501 -0
- package/src/agent/verifyAgentTasks.test.ts +106 -0
- package/src/agent/verifyAgentTasks.ts +171 -0
- package/src/cli/main.ts +363 -0
- package/src/compiler/AutoViewInterfaceCompiler.ts +69 -0
- package/src/constants/AutoViewFrontendTemplate.ts +42 -0
- package/src/constants/AutoViewSystemPromptConstant.ts +6 -0
- package/src/context/IAutoViewAgentContext.ts +84 -0
- package/src/fromSwagger.test.ts +269 -0
- package/src/fromSwagger.ts +500 -0
- package/src/generateDeterministic.test.ts +39 -0
- package/src/generateDeterministic.ts +77 -0
- package/src/index.ts +30 -0
- package/src/orchestrate/orchestrateAutoView.ts +590 -0
- package/src/orchestrate/orchestrateAutoViewProductPlan.ts +121 -0
- package/src/orchestrate/orchestrateAutoViewRender.ts +1117 -0
- package/src/orchestrate/orchestrateAutoViewRenderDeterministic.ts +101 -0
- package/src/orchestrate/orchestrateAutoViewReview.ts +272 -0
- package/src/orchestrate/orchestrateAutoViewScaffold.ts +627 -0
- package/src/orchestrate/orchestrateAutoViewSdkStudy.ts +90 -0
- package/src/orchestrate/renderNavTs.test.ts +74 -0
- package/src/orchestrate/structures/IAutoViewProductPlan.ts +119 -0
- package/src/orchestrate/structures/IAutoViewProductPlanApplication.ts +41 -0
- package/src/orchestrate/structures/IAutoViewRenderApplication.ts +40 -0
- package/src/orchestrate/structures/IAutoViewReviewApplication.ts +42 -0
- package/src/orchestrate/structures/IAutoViewSdkMap.ts +72 -0
- package/src/orchestrate/structures/IAutoViewSdkStudyApplication.ts +40 -0
- package/src/orchestrate/utils/HistoryMessage.ts +41 -0
- package/src/orchestrate/utils/auditFrontendRuntime.test.ts +18 -0
- package/src/orchestrate/utils/auditFrontendRuntime.ts +454 -0
- package/src/orchestrate/utils/buildDeterministicPlan.test.ts +170 -0
- package/src/orchestrate/utils/buildDeterministicPlan.ts +289 -0
- package/src/orchestrate/utils/buildDeterministicSdkMap.test.ts +90 -0
- package/src/orchestrate/utils/buildDeterministicSdkMap.ts +169 -0
- package/src/orchestrate/utils/cacheNodeModules.ts +136 -0
- package/src/orchestrate/utils/describeEndpointPropsShape.test.ts +86 -0
- package/src/orchestrate/utils/describeEndpointPropsShape.ts +202 -0
- package/src/orchestrate/utils/describeEndpointRequestBodyShape.test.ts +87 -0
- package/src/orchestrate/utils/describeEndpointRequestBodyShape.ts +31 -0
- package/src/orchestrate/utils/describeEndpointResponseShape.test.ts +70 -0
- package/src/orchestrate/utils/describeEndpointResponseShape.ts +32 -0
- package/src/orchestrate/utils/executeCachedBatch.ts +59 -0
- package/src/orchestrate/utils/loadShoppingFixture.ts +52 -0
- package/src/orchestrate/utils/normalizeProductPlanPaths.ts +92 -0
- package/src/orchestrate/utils/renderJsonSchema.test.ts +162 -0
- package/src/orchestrate/utils/renderJsonSchema.ts +133 -0
- package/src/orchestrate/utils/renderResourcePage.test.ts +468 -0
- package/src/orchestrate/utils/renderResourcePage.ts +1624 -0
- package/src/orchestrate/utils/validateFrontendTypecheck.test.ts +32 -0
- package/src/orchestrate/utils/validateFrontendTypecheck.ts +335 -0
- package/src/preview/renderPreview.ts +273 -0
- package/src/typings/compiler.ts +47 -0
- package/src/typings/events.ts +155 -0
- package/src/typings/index.ts +10 -0
- package/src/typings/misc.ts +93 -0
- package/src/utils/ArrayUtil.ts +16 -0
- package/src/utils/StringUtil.ts +29 -0
- package/src/utils/classifyEndpoints.test.ts +86 -0
- package/src/utils/classifyEndpoints.ts +291 -0
- package/src/utils/endpointFilter.test.ts +50 -0
- package/src/utils/endpointFilter.ts +0 -0
- package/src/utils/extractFields.test.ts +82 -0
- package/src/utils/extractFields.ts +306 -0
- package/src/utils/index.ts +13 -0
- package/src/utils/normalizeForNestia.test.ts +93 -0
- package/src/utils/normalizeForNestia.ts +139 -0
- package/src/utils/resourcePlan.test.ts +104 -0
- package/src/utils/resourcePlan.ts +180 -0
- package/src/utils/sliceDocument.test.ts +85 -0
- package/src/utils/sliceDocument.ts +119 -0
- package/src/utils/toEndpoints.test.ts +251 -0
- package/src/utils/toEndpoints.ts +343 -0
- package/src/verify/runWorkflows.ts +403 -0
- package/src/verify/workflows.test.ts +117 -0
- package/src/verify/workflows.ts +154 -0
- package/template/CLAUDE.md +140 -0
- package/template/Dockerfile +31 -0
- package/template/PROMPT.md +80 -0
- package/template/SANDBOX.md +70 -0
- package/template/app/api/health/route.ts +10 -0
- package/template/app/globals.css +97 -0
- package/template/app/layout.tsx +30 -0
- package/template/app/page.tsx +19 -0
- package/template/components/AppShell.tsx +114 -0
- package/template/components/auto/CatalogGrid.tsx +159 -0
- package/template/components/auto/ConfirmButton.tsx +67 -0
- package/template/components/auto/EmbeddedCollection.tsx +144 -0
- package/template/components/auto/ResourceDashboard.tsx +104 -0
- package/template/components/auto/ResourceDetail.tsx +93 -0
- package/template/components/auto/ResourceForm.tsx +235 -0
- package/template/components/auto/ResourceIcon.tsx +88 -0
- package/template/components/auto/ResourceLanding.tsx +155 -0
- package/template/components/auto/ResourceTable.tsx +223 -0
- package/template/components/auto/formatValue.tsx +186 -0
- package/template/components/auto/types.ts +42 -0
- package/template/components/ui/badge.tsx +40 -0
- package/template/components/ui/button.tsx +57 -0
- package/template/components/ui/card.tsx +86 -0
- package/template/components/ui/dialog.tsx +119 -0
- package/template/components/ui/input.tsx +23 -0
- package/template/components/ui/label.tsx +24 -0
- package/template/components/ui/pagination.tsx +117 -0
- package/template/components/ui/select.tsx +92 -0
- package/template/components/ui/sheet.tsx +135 -0
- package/template/components/ui/skeleton.tsx +15 -0
- package/template/components/ui/table.tsx +120 -0
- package/template/components/ui/tabs.tsx +55 -0
- package/template/lib/utils.ts +35 -0
- package/template/next.config.mjs +52 -0
- package/template/package.json +46 -0
- package/template/postcss.config.js +6 -0
- package/template/scripts/start-shopping-backend.sh +56 -0
- package/template/tailwind.config.ts +96 -0
- package/template/tsconfig.json +29 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrateAutoViewRender.js","sourceRoot":"","sources":["../../src/orchestrate/orchestrateAutoViewRender.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { OpenApi } from "@typia/interface";
|
|
2
|
+
import { IAutoViewAgentContext } from "../context/IAutoViewAgentContext";
|
|
3
|
+
import { IAutoViewProductPlan } from "./structures/IAutoViewProductPlan";
|
|
4
|
+
import { IAutoViewRenderOutput } from "./orchestrateAutoViewRender";
|
|
5
|
+
/**
|
|
6
|
+
* Phase 4 — deterministic Render.
|
|
7
|
+
*
|
|
8
|
+
* Replaces the LLM-driven `orchestrateAutoViewRender`. For each screen it emits
|
|
9
|
+
* a thin `page.tsx` that wires the typed SDK call to a universal `Resource*`
|
|
10
|
+
* component, with the column / field metadata baked from the swagger schema (see
|
|
11
|
+
* {@link renderResourcePage}). No LLM call, no parser-retry loop, no per-page
|
|
12
|
+
* latency — the whole phase is a synchronous map. The result keeps the
|
|
13
|
+
* {@link IAutoViewRenderOutput} shape so the typecheck / review phases downstream
|
|
14
|
+
* are unchanged.
|
|
15
|
+
*
|
|
16
|
+
* "모든 엔드포인트 빡빡 + 테이블 모든 필드 빡빡 + 누락 0" is now a structural
|
|
17
|
+
* guarantee: every screen the deterministic plan produced gets a page, and every
|
|
18
|
+
* property of its row / response / request type becomes a column / row / input.
|
|
19
|
+
*/
|
|
20
|
+
export declare function orchestrateAutoViewRenderDeterministic(ctx: IAutoViewAgentContext, props: {
|
|
21
|
+
document: OpenApi.IDocument;
|
|
22
|
+
productPlan: IAutoViewProductPlan;
|
|
23
|
+
step: number;
|
|
24
|
+
}): Promise<IAutoViewRenderOutput>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.orchestrateAutoViewRenderDeterministic = orchestrateAutoViewRenderDeterministic;
|
|
13
|
+
const uuid_1 = require("uuid");
|
|
14
|
+
const toEndpoints_1 = require("../utils/toEndpoints");
|
|
15
|
+
const orchestrateAutoViewRender_1 = require("./orchestrateAutoViewRender");
|
|
16
|
+
const renderResourcePage_1 = require("./utils/renderResourcePage");
|
|
17
|
+
/**
|
|
18
|
+
* Phase 4 — deterministic Render.
|
|
19
|
+
*
|
|
20
|
+
* Replaces the LLM-driven `orchestrateAutoViewRender`. For each screen it emits
|
|
21
|
+
* a thin `page.tsx` that wires the typed SDK call to a universal `Resource*`
|
|
22
|
+
* component, with the column / field metadata baked from the swagger schema (see
|
|
23
|
+
* {@link renderResourcePage}). No LLM call, no parser-retry loop, no per-page
|
|
24
|
+
* latency — the whole phase is a synchronous map. The result keeps the
|
|
25
|
+
* {@link IAutoViewRenderOutput} shape so the typecheck / review phases downstream
|
|
26
|
+
* are unchanged.
|
|
27
|
+
*
|
|
28
|
+
* "모든 엔드포인트 빡빡 + 테이블 모든 필드 빡빡 + 누락 0" is now a structural
|
|
29
|
+
* guarantee: every screen the deterministic plan produced gets a page, and every
|
|
30
|
+
* property of its row / response / request type becomes a column / row / input.
|
|
31
|
+
*/
|
|
32
|
+
function orchestrateAutoViewRenderDeterministic(ctx, props) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
const endpoints = (0, toEndpoints_1.toEndpoints)(props.document);
|
|
35
|
+
const total = props.productPlan.screens.length;
|
|
36
|
+
const files = {};
|
|
37
|
+
const screens = [];
|
|
38
|
+
let completed = 0;
|
|
39
|
+
for (const screen of props.productPlan.screens) {
|
|
40
|
+
const tsx = (0, renderResourcePage_1.renderResourcePage)(screen, endpoints, props.document, props.productPlan.screens);
|
|
41
|
+
const filePath = (0, orchestrateAutoViewRender_1.screenPathToFile)(screen.path);
|
|
42
|
+
files[filePath] = tsx;
|
|
43
|
+
completed++;
|
|
44
|
+
screens.push({
|
|
45
|
+
pagePath: screen.path,
|
|
46
|
+
uiPattern: screen.uiPattern,
|
|
47
|
+
actor: screen.actor,
|
|
48
|
+
rationale: "deterministic",
|
|
49
|
+
attempts: 1,
|
|
50
|
+
ok: true,
|
|
51
|
+
diagnostic: "",
|
|
52
|
+
});
|
|
53
|
+
ctx.dispatch({
|
|
54
|
+
type: "autoViewRenderPage",
|
|
55
|
+
id: (0, uuid_1.v7)(),
|
|
56
|
+
created_at: new Date().toISOString(),
|
|
57
|
+
step: props.step,
|
|
58
|
+
total,
|
|
59
|
+
completed,
|
|
60
|
+
pagePath: screen.path,
|
|
61
|
+
uiPattern: screen.uiPattern,
|
|
62
|
+
attempts: 1,
|
|
63
|
+
ok: true,
|
|
64
|
+
tokenUsage: zeroTokenUsage(),
|
|
65
|
+
metric: zeroMetric(),
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
return { files, screens };
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function zeroTokenUsage() {
|
|
72
|
+
return {
|
|
73
|
+
total: 0,
|
|
74
|
+
input: { total: 0, cached: 0 },
|
|
75
|
+
output: {
|
|
76
|
+
total: 0,
|
|
77
|
+
reasoning: 0,
|
|
78
|
+
accepted_prediction: 0,
|
|
79
|
+
rejected_prediction: 0,
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
function zeroMetric() {
|
|
84
|
+
return {
|
|
85
|
+
attempt: 0,
|
|
86
|
+
success: 0,
|
|
87
|
+
invalidJson: 0,
|
|
88
|
+
validationFailure: 0,
|
|
89
|
+
consent: 0,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=orchestrateAutoViewRenderDeterministic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrateAutoViewRenderDeterministic.js","sourceRoot":"","sources":["../../src/orchestrate/orchestrateAutoViewRenderDeterministic.ts"],"names":[],"mappings":";;;;;;;;;;;AAyBA,wFAoDC;AA5ED,+BAA0B;AAI1B,sDAAmD;AAEnD,2EAAsF;AACtF,mEAAgE;AAEhE;;;;;;;;;;;;;;GAcG;AACH,SAAsB,sCAAsC,CAC1D,GAA0B,EAC1B,KAIC;;QAED,MAAM,SAAS,GAAG,IAAA,yBAAW,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;QAC/C,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,MAAM,OAAO,GAA0C,EAAE,CAAC;QAE1D,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,IAAA,uCAAkB,EAC5B,MAAM,EACN,SAAS,EACT,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,WAAW,CAAC,OAAO,CAC1B,CAAC;YACF,MAAM,QAAQ,GAAG,IAAA,4CAAgB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;YACtB,SAAS,EAAE,CAAC;YAEZ,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,MAAM,CAAC,IAAI;gBACrB,SAAS,EAAE,MAAM,CAAC,SAAmB;gBACrC,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,SAAS,EAAE,eAAe;gBAC1B,QAAQ,EAAE,CAAC;gBACX,EAAE,EAAE,IAAI;gBACR,UAAU,EAAE,EAAE;aACf,CAAC,CAAC;YAEH,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,oBAAoB;gBAC1B,EAAE,EAAE,IAAA,SAAE,GAAE;gBACR,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACpC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK;gBACL,SAAS;gBACT,QAAQ,EAAE,MAAM,CAAC,IAAI;gBACrB,SAAS,EAAE,MAAM,CAAC,SAAmB;gBACrC,QAAQ,EAAE,CAAC;gBACX,EAAE,EAAE,IAAI;gBACR,UAAU,EAAE,cAAc,EAAE;gBAC5B,MAAM,EAAE,UAAU,EAAE;aACmB,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC5B,CAAC;CAAA;AAED,SAAS,cAAc;IACrB,OAAO;QACL,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;QAC9B,MAAM,EAAE;YACN,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,CAAC;YACZ,mBAAmB,EAAE,CAAC;YACtB,mBAAmB,EAAE,CAAC;SACvB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU;IACjB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,iBAAiB,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { OpenApi } from "@typia/interface";
|
|
2
|
+
import { IAutoViewAgentContext } from "../context/IAutoViewAgentContext";
|
|
3
|
+
import type { IAutoViewRenderOutput } from "./orchestrateAutoViewRender";
|
|
4
|
+
import { IAutoViewProductPlan } from "./structures/IAutoViewProductPlan";
|
|
5
|
+
import { IAutoViewSdkMap } from "./structures/IAutoViewSdkMap";
|
|
6
|
+
import type { IValidateFrontendTypecheckResult } from "./utils/validateFrontendTypecheck";
|
|
7
|
+
/**
|
|
8
|
+
* Phase 5 of the AutoView agent — UI Review.
|
|
9
|
+
*
|
|
10
|
+
* Produces the operator-facing `wiki/sdk-feedback.md` document. The review is a
|
|
11
|
+
* code-and-spec audit, not a visual one: the LLM receives the SDK map, the
|
|
12
|
+
* product plan, and the per-screen render report (rationale + attempts + ok
|
|
13
|
+
* flag + parser diagnostic when it failed), and turns that into the markdown
|
|
14
|
+
* sections defined by the system prompt.
|
|
15
|
+
*
|
|
16
|
+
* Visual verification on screenshots happens later, during the Sandbox deploy
|
|
17
|
+
* step, and feeds back into the agent through manual `wiki/sdk-feedback.md`
|
|
18
|
+
* edits.
|
|
19
|
+
*
|
|
20
|
+
* Counts of broken/recovered pages on the event are derived deterministically
|
|
21
|
+
* from the Render report — the LLM cannot lie about which screens broke.
|
|
22
|
+
* `screenshots` stays `0` until a real Playwright loop lands; the field exists
|
|
23
|
+
* on the event so downstream UIs can surface it once it does.
|
|
24
|
+
*/
|
|
25
|
+
export declare function orchestrateAutoViewReview(ctx: IAutoViewAgentContext, props: {
|
|
26
|
+
document: OpenApi.IDocument;
|
|
27
|
+
sdkMap: IAutoViewSdkMap;
|
|
28
|
+
productPlan: IAutoViewProductPlan;
|
|
29
|
+
render: IAutoViewRenderOutput;
|
|
30
|
+
/**
|
|
31
|
+
* Result of running `tsc --noEmit` against the assembled project. The
|
|
32
|
+
* `broken` count on the Review event reflects "files with at least one
|
|
33
|
+
* typecheck error" rather than "screens whose parser retry was exhausted" —
|
|
34
|
+
* typecheck is the more honest signal of "will the external user be able to
|
|
35
|
+
* `npm run build` what we shipped them".
|
|
36
|
+
*/
|
|
37
|
+
typecheck: IValidateFrontendTypecheckResult;
|
|
38
|
+
/**
|
|
39
|
+
* Number of screens the typecheck-driven retry loop successfully recovered:
|
|
40
|
+
* pages that failed `tsc --noEmit` in the initial measurement but
|
|
41
|
+
* typechecked cleanly after at least one re-render fed the diagnostics back
|
|
42
|
+
* to the model.
|
|
43
|
+
*/
|
|
44
|
+
recovered: number;
|
|
45
|
+
step: number;
|
|
46
|
+
}): Promise<{
|
|
47
|
+
markdown: string;
|
|
48
|
+
}>;
|
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
36
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
37
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
38
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
39
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
40
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
41
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.orchestrateAutoViewReview = orchestrateAutoViewReview;
|
|
49
|
+
const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport"));
|
|
50
|
+
const __typia_transform__llmApplicationFinalize = __importStar(require("typia/lib/internal/_llmApplicationFinalize"));
|
|
51
|
+
const utils_1 = require("../utils");
|
|
52
|
+
const typia_1 = __importDefault(require("typia"));
|
|
53
|
+
const uuid_1 = require("uuid");
|
|
54
|
+
const HistoryMessage_1 = require("./utils/HistoryMessage");
|
|
55
|
+
/**
|
|
56
|
+
* Phase 5 of the AutoView agent — UI Review.
|
|
57
|
+
*
|
|
58
|
+
* Produces the operator-facing `wiki/sdk-feedback.md` document. The review is a
|
|
59
|
+
* code-and-spec audit, not a visual one: the LLM receives the SDK map, the
|
|
60
|
+
* product plan, and the per-screen render report (rationale + attempts + ok
|
|
61
|
+
* flag + parser diagnostic when it failed), and turns that into the markdown
|
|
62
|
+
* sections defined by the system prompt.
|
|
63
|
+
*
|
|
64
|
+
* Visual verification on screenshots happens later, during the Sandbox deploy
|
|
65
|
+
* step, and feeds back into the agent through manual `wiki/sdk-feedback.md`
|
|
66
|
+
* edits.
|
|
67
|
+
*
|
|
68
|
+
* Counts of broken/recovered pages on the event are derived deterministically
|
|
69
|
+
* from the Render report — the LLM cannot lie about which screens broke.
|
|
70
|
+
* `screenshots` stays `0` until a real Playwright loop lands; the field exists
|
|
71
|
+
* on the event so downstream UIs can surface it once it does.
|
|
72
|
+
*/
|
|
73
|
+
function orchestrateAutoViewReview(ctx, props) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
const pointer = {
|
|
76
|
+
value: null,
|
|
77
|
+
};
|
|
78
|
+
const renderSummary = props.render.screens.map((s) => ({
|
|
79
|
+
pagePath: s.pagePath,
|
|
80
|
+
uiPattern: s.uiPattern,
|
|
81
|
+
actor: s.actor,
|
|
82
|
+
rationale: s.rationale,
|
|
83
|
+
attempts: s.attempts,
|
|
84
|
+
ok: s.ok,
|
|
85
|
+
diagnostic: s.diagnostic,
|
|
86
|
+
}));
|
|
87
|
+
yield ctx.conversate({
|
|
88
|
+
source: "autoViewReview",
|
|
89
|
+
target: "writeSdkFeedback",
|
|
90
|
+
controller: createController({
|
|
91
|
+
build: (next) => {
|
|
92
|
+
pointer.value = next;
|
|
93
|
+
},
|
|
94
|
+
}),
|
|
95
|
+
enforceFunctionCall: true,
|
|
96
|
+
histories: [
|
|
97
|
+
HistoryMessage_1.HistoryMessage.system("<!--\nfilename: AUTOVIEW_REVIEW.md\n-->\nYou are the UI Review phase of the AutoView agent.\n\nYou receive the product plan, the SDK domain map, and per-screen\nmetadata from the Render phase (rationale, attempt count, whether\nparsing eventually succeeded). Your single job is to produce one\nmarkdown file \u2014 `wiki/sdk-feedback.md` \u2014 that captures the honest,\noperator-facing assessment of what the SDK is like to build a frontend\non top of. The whole reason AutoView exists is to surface API quality\nproblems through the act of consuming the API; this is where that\nsignal lands.\n\nYou do not see screenshots and you do not run the application. Visual\nverification happens later, by the operator on the Sandbox deploy. Your\nreview is a code-and-spec audit, not a visual audit.\n\n## What \"sdk-feedback\" must contain\n\nA markdown document with these sections in order:\n\n1. **Summary** \u2014 2\u20134 sentences in the operator's voice. What kind of\n product is this, how cleanly did the SDK shape it, and is the API\n ready to ship to a human?\n2. **What worked well** \u2014 bullets. Concrete instances where the SDK\n made a flow easy: well-named resources, clear pagination, sane\n defaults, helpful JSDoc.\n3. **What's awkward** \u2014 bullets. The whole point of the document.\n Each bullet calls out one specific API decision that made the\n frontend awkward: redundant endpoints, missing list filters,\n inconsistent naming, types that force casts, flows that require\n round-trips the UI shouldn't need, missing pagination, unclear\n actor boundaries. Be specific \u2014 name the resource or accessor.\n4. **What's missing** \u2014 bullets. Functionality the product needed but\n the SDK does not expose. Reference the intentional-omission list\n from the product plan and add anything new the Render phase\n stumbled on.\n5. **Pages that broke** \u2014 bullets. List every screen where\n `ok === false` in the render metadata. One bullet each:\n path, ui pattern, attempts spent, the parser diagnostic. These\n are the pages the operator should look at first when deploying\n to Sandbox.\n\nIf a section has nothing to report, write \"None observed\" \u2014 do not\ndelete the section.\n\n## Mindset\n\n- Be specific and short. Operator-facing markdown, not LLM prose.\n- Name resources and accessors. \"shoppings.customers.orders.create\n forces a two-step round-trip because\u2026\" is signal. \"Some endpoints\n felt awkward\" is noise.\n- Do not invent problems. If the SDK is clean, write \"the API is\n clean; the awkwardness is in the product, not the platform.\"\n- Do not write Korean. The Sandbox operator reading this is the\n same team that reads the rest of `wiki/`.\n\n## Output\n\nCall `writeSdkFeedback` exactly once with the complete markdown body\nand a one-sentence narrative summary. The orchestrator drops the\nmarkdown into `frontend/wiki/sdk-feedback.md` verbatim." /* AutoViewSystemPromptConstant.AUTOVIEW_REVIEW */),
|
|
98
|
+
HistoryMessage_1.HistoryMessage.assistant `
|
|
99
|
+
Here is everything you need to audit the SDK.
|
|
100
|
+
|
|
101
|
+
## SDK map
|
|
102
|
+
|
|
103
|
+
\`\`\`json
|
|
104
|
+
${JSON.stringify(props.sdkMap, null, 2)}
|
|
105
|
+
\`\`\`
|
|
106
|
+
|
|
107
|
+
## Product plan
|
|
108
|
+
|
|
109
|
+
\`\`\`json
|
|
110
|
+
${JSON.stringify(props.productPlan, null, 2)}
|
|
111
|
+
\`\`\`
|
|
112
|
+
|
|
113
|
+
## Render report (per screen)
|
|
114
|
+
|
|
115
|
+
\`\`\`json
|
|
116
|
+
${JSON.stringify(renderSummary, null, 2)}
|
|
117
|
+
\`\`\`
|
|
118
|
+
`,
|
|
119
|
+
],
|
|
120
|
+
userMessage: "Write `wiki/sdk-feedback.md`. Call `writeSdkFeedback` once with the markdown and a one-sentence summary.",
|
|
121
|
+
});
|
|
122
|
+
// Count "broken" against the typecheck result: an LLM-rendered page that
|
|
123
|
+
// passed the per-screen parser retry but still fails `tsc --noEmit` is
|
|
124
|
+
// still broken from the user's perspective. Parser-only failures are
|
|
125
|
+
// captured by the placeholder pages the Render phase ships, so they
|
|
126
|
+
// also fail typecheck and are counted here.
|
|
127
|
+
const broken = props.typecheck.diagnostics.size;
|
|
128
|
+
const llmMarkdown = pointer.value === null
|
|
129
|
+
? renderFallbackFeedback(props.render.screens)
|
|
130
|
+
: pointer.value.markdown;
|
|
131
|
+
// Append a deterministic endpoint-coverage report so the operator
|
|
132
|
+
// always has an objective view of which accessors landed on a
|
|
133
|
+
// screen vs. which were left out. The LLM-written markdown can drift,
|
|
134
|
+
// but the appendix is computed from the same plan and document the
|
|
135
|
+
// orchestrator already trusts.
|
|
136
|
+
const coverage = buildEndpointCoverageAppendix(props.document, props.productPlan);
|
|
137
|
+
const markdown = `${llmMarkdown.trimEnd()}\n\n${coverage}`;
|
|
138
|
+
ctx.dispatch({
|
|
139
|
+
type: "autoViewReview",
|
|
140
|
+
id: (0, uuid_1.v7)(),
|
|
141
|
+
created_at: new Date().toISOString(),
|
|
142
|
+
step: props.step,
|
|
143
|
+
screenshots: 0,
|
|
144
|
+
broken,
|
|
145
|
+
recovered: props.recovered,
|
|
146
|
+
sdkFeedback: markdown,
|
|
147
|
+
});
|
|
148
|
+
return { markdown };
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
/* -------------------------------------------------------------------------- */
|
|
152
|
+
/* deterministic endpoint-coverage appendix */
|
|
153
|
+
/* -------------------------------------------------------------------------- */
|
|
154
|
+
function buildEndpointCoverageAppendix(document, plan) {
|
|
155
|
+
const allAccessors = new Set();
|
|
156
|
+
for (const op of (0, utils_1.toEndpoints)(document)) {
|
|
157
|
+
if (op.accessor && op.accessor.length > 0) {
|
|
158
|
+
allAccessors.add(op.accessor.join("."));
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
const covered = new Set();
|
|
162
|
+
for (const screen of plan.screens) {
|
|
163
|
+
for (const accessor of screen.endpoints) {
|
|
164
|
+
covered.add(accessor);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
// `intentionalOmissions.target` is a free-form label, so we cannot
|
|
168
|
+
// confidently match it back to an accessor. Surface the operator's
|
|
169
|
+
// declared list separately so they can audit overlap by eye.
|
|
170
|
+
const uncovered = [...allAccessors]
|
|
171
|
+
.filter((a) => !covered.has(a))
|
|
172
|
+
.sort((a, b) => a.localeCompare(b));
|
|
173
|
+
const coveredList = [...covered].sort((a, b) => a.localeCompare(b));
|
|
174
|
+
const lines = [
|
|
175
|
+
"## Endpoint coverage (auto-generated)",
|
|
176
|
+
"",
|
|
177
|
+
`**Total SDK operations**: ${allAccessors.size} · ` +
|
|
178
|
+
`**Used by at least one screen**: ${covered.size} · ` +
|
|
179
|
+
`**Not used by any screen**: ${uncovered.length} · ` +
|
|
180
|
+
`**Intentional omissions declared**: ${plan.intentionalOmissions.length}`,
|
|
181
|
+
"",
|
|
182
|
+
"### Used in screens",
|
|
183
|
+
"",
|
|
184
|
+
];
|
|
185
|
+
if (coveredList.length === 0) {
|
|
186
|
+
lines.push("_(none)_");
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
for (const accessor of coveredList)
|
|
190
|
+
lines.push(`- \`${accessor}\``);
|
|
191
|
+
}
|
|
192
|
+
lines.push("", "### Not used by any screen", "");
|
|
193
|
+
if (uncovered.length === 0) {
|
|
194
|
+
lines.push("_(none — every SDK accessor lands on at least one screen.)_");
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
for (const accessor of uncovered)
|
|
198
|
+
lines.push(`- \`${accessor}\``);
|
|
199
|
+
}
|
|
200
|
+
lines.push("", "### Intentional omissions declared in the plan", "");
|
|
201
|
+
if (plan.intentionalOmissions.length === 0) {
|
|
202
|
+
lines.push("_(none declared)_");
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
for (const omission of plan.intentionalOmissions) {
|
|
206
|
+
lines.push(`- **${omission.target}** — ${omission.reason}`);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
lines.push("");
|
|
210
|
+
return lines.join("\n");
|
|
211
|
+
}
|
|
212
|
+
/* -------------------------------------------------------------------------- */
|
|
213
|
+
/* fallback when the model fails to call `writeSdkFeedback` */
|
|
214
|
+
/* -------------------------------------------------------------------------- */
|
|
215
|
+
function renderFallbackFeedback(screens) {
|
|
216
|
+
const broken = screens.filter((s) => !s.ok);
|
|
217
|
+
return [
|
|
218
|
+
"# SDK Feedback",
|
|
219
|
+
"",
|
|
220
|
+
"The Review phase model did not call `writeSdkFeedback`. Falling back",
|
|
221
|
+
"to a minimal report so the wiki entry still exists.",
|
|
222
|
+
"",
|
|
223
|
+
"## Summary",
|
|
224
|
+
"",
|
|
225
|
+
"_(LLM omitted summary.)_",
|
|
226
|
+
"",
|
|
227
|
+
"## What worked well",
|
|
228
|
+
"",
|
|
229
|
+
"None observed.",
|
|
230
|
+
"",
|
|
231
|
+
"## What's awkward",
|
|
232
|
+
"",
|
|
233
|
+
"None observed.",
|
|
234
|
+
"",
|
|
235
|
+
"## What's missing",
|
|
236
|
+
"",
|
|
237
|
+
"None observed.",
|
|
238
|
+
"",
|
|
239
|
+
"## Pages that broke",
|
|
240
|
+
"",
|
|
241
|
+
broken.length === 0
|
|
242
|
+
? "None observed."
|
|
243
|
+
: broken
|
|
244
|
+
.map((s) => `- \`${s.pagePath}\` (${s.uiPattern}) — ${s.attempts} attempts: ${s.diagnostic}`)
|
|
245
|
+
.join("\n"),
|
|
246
|
+
"",
|
|
247
|
+
].join("\n");
|
|
248
|
+
}
|
|
249
|
+
/* -------------------------------------------------------------------------- */
|
|
250
|
+
/* controller wiring */
|
|
251
|
+
/* -------------------------------------------------------------------------- */
|
|
252
|
+
function createController(props) {
|
|
253
|
+
const application = __typia_transform__llmApplicationFinalize._llmApplicationFinalize({
|
|
254
|
+
functions: [
|
|
255
|
+
{
|
|
256
|
+
name: "writeSdkFeedback",
|
|
257
|
+
parameters: {
|
|
258
|
+
description: "Current Type: {@link IAutoViewReviewApplication.IProps}",
|
|
259
|
+
type: "object",
|
|
260
|
+
properties: {
|
|
261
|
+
summary: {
|
|
262
|
+
description: "One-sentence summary of the overall SDK quality assessment. Surfaced in\nthe `autoViewReview` event so the operator can decide whether to read the\nfull feedback document.",
|
|
263
|
+
type: "string"
|
|
264
|
+
},
|
|
265
|
+
markdown: {
|
|
266
|
+
description: "Complete markdown body of `wiki/sdk-feedback.md`. The orchestrator\npersists this verbatim.",
|
|
267
|
+
type: "string"
|
|
268
|
+
}
|
|
269
|
+
},
|
|
270
|
+
required: [
|
|
271
|
+
"summary",
|
|
272
|
+
"markdown"
|
|
273
|
+
],
|
|
274
|
+
additionalProperties: false,
|
|
275
|
+
$defs: {}
|
|
276
|
+
},
|
|
277
|
+
description: "Emit the operator-facing markdown audit of the SDK that the Render phase\nproduced pages against.\n\nCall this exactly once. The markdown must follow the section layout\ndictated by the system prompt (Summary / What worked / What's awkward /\nWhat's missing / Pages that broke). The downstream operator reads it\nverbatim.",
|
|
278
|
+
validate: (() => { const _io0 = input => "string" === typeof input.summary && "string" === typeof input.markdown; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.summary || _report(_exceptionable, {
|
|
279
|
+
path: _path + ".summary",
|
|
280
|
+
expected: "string",
|
|
281
|
+
value: input.summary
|
|
282
|
+
}), "string" === typeof input.markdown || _report(_exceptionable, {
|
|
283
|
+
path: _path + ".markdown",
|
|
284
|
+
expected: "string",
|
|
285
|
+
value: input.markdown
|
|
286
|
+
})].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
287
|
+
if (false === __is(input)) {
|
|
288
|
+
errors = [];
|
|
289
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
290
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
291
|
+
path: _path + "",
|
|
292
|
+
expected: "IAutoViewReviewApplication.IProps",
|
|
293
|
+
value: input
|
|
294
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
295
|
+
path: _path + "",
|
|
296
|
+
expected: "IAutoViewReviewApplication.IProps",
|
|
297
|
+
value: input
|
|
298
|
+
}))(input, "$input", true);
|
|
299
|
+
const success = 0 === errors.length;
|
|
300
|
+
return success ? {
|
|
301
|
+
success,
|
|
302
|
+
data: input
|
|
303
|
+
} : {
|
|
304
|
+
success,
|
|
305
|
+
errors,
|
|
306
|
+
data: input
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
return {
|
|
310
|
+
success: true,
|
|
311
|
+
data: input
|
|
312
|
+
};
|
|
313
|
+
}; })()
|
|
314
|
+
}
|
|
315
|
+
]
|
|
316
|
+
});
|
|
317
|
+
return {
|
|
318
|
+
protocol: "class",
|
|
319
|
+
name: "autoViewReview",
|
|
320
|
+
application,
|
|
321
|
+
execute: {
|
|
322
|
+
writeSdkFeedback: (next) => {
|
|
323
|
+
props.build(next);
|
|
324
|
+
},
|
|
325
|
+
},
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
//# sourceMappingURL=orchestrateAutoViewReview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrateAutoViewReview.js","sourceRoot":"","sources":["../../src/orchestrate/orchestrateAutoViewReview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { OpenApi } from "@typia/interface";
|
|
2
|
+
import { IAutoViewAgentContext } from "../context/IAutoViewAgentContext";
|
|
3
|
+
import { IAutoViewProductPlan } from "./structures/IAutoViewProductPlan";
|
|
4
|
+
import { IAutoViewSdkMap } from "./structures/IAutoViewSdkMap";
|
|
5
|
+
/**
|
|
6
|
+
* Phase 3 of the AutoView agent — Scaffold.
|
|
7
|
+
*
|
|
8
|
+
* Deterministic. No LLM calls. Produces the file layout of a runnable Next.js +
|
|
9
|
+
* shadcn/ui project shaped for the in-house Sandbox platform:
|
|
10
|
+
*
|
|
11
|
+
* - Copies the bundled frontend pack (`internals/template/frontend/`) verbatim —
|
|
12
|
+
* Dockerfile, configs, shadcn/ui primitives, base app shell, health route.
|
|
13
|
+
* - Adds the AutoBE-generated SDK under `src/api/**`.
|
|
14
|
+
* - Adds an SDK adapter and a mock `IConnection` so generated pages can import a
|
|
15
|
+
* single helper instead of touching the SDK directly.
|
|
16
|
+
* - Materializes one placeholder TSX page per screen in
|
|
17
|
+
* {@link IAutoViewProductPlan} so the project compiles without Phase 4 having
|
|
18
|
+
* run yet; Phase 4 (Render) overwrites these in place.
|
|
19
|
+
* - Drops the Phase 1 and Phase 2 markdown into `wiki/` so the operator can audit
|
|
20
|
+
* the agent's intent alongside the code.
|
|
21
|
+
*/
|
|
22
|
+
export declare function orchestrateAutoViewScaffold(ctx: IAutoViewAgentContext, props: {
|
|
23
|
+
document: OpenApi.IDocument;
|
|
24
|
+
sdkMap: IAutoViewSdkMap;
|
|
25
|
+
sdkMapMarkdown: string;
|
|
26
|
+
productPlan: IAutoViewProductPlan;
|
|
27
|
+
productPlanMarkdown: string;
|
|
28
|
+
step: number;
|
|
29
|
+
/**
|
|
30
|
+
* Backend hint from the orchestrator. When the source carries a real server
|
|
31
|
+
* URL (shopping fixture), scaffold a live-mode connection so the dev server
|
|
32
|
+
* renders real data. When `host` is `null` (AutoBE interface phase), fall
|
|
33
|
+
* back to simulate-only.
|
|
34
|
+
*/
|
|
35
|
+
backend: {
|
|
36
|
+
host: string | null;
|
|
37
|
+
};
|
|
38
|
+
}): Promise<Record<string, string>>;
|
|
39
|
+
/**
|
|
40
|
+
* Generate `src/lib/nav.ts` — the sidebar navigation config the AppShell reads.
|
|
41
|
+
* Top-level resources (chain depth 1) become nav items, grouped into data
|
|
42
|
+
* "Resources" (list tables) and "System" (singleton reads). The app name comes
|
|
43
|
+
* from the OpenAPI document title.
|
|
44
|
+
*/
|
|
45
|
+
export declare function renderNavTs(document: OpenApi.IDocument, plan: IAutoViewProductPlan): string;
|