@tienne/gestalt 0.95.0 โ 0.97.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/CLAUDE.md +5 -3
- package/README.ko.md +1 -0
- package/README.md +1 -0
- package/dist/package.json +4 -3
- package/dist/plugin/skills/_shared/agent-model.md +5 -3
- package/dist/plugin/skills/_shared/proactive-routing.md +1 -0
- package/dist/plugin/skills/agent/SKILL.md +1 -1
- package/dist/plugin/skills/architecture/SKILL.md +31 -5
- package/dist/plugin/skills/architecture/references/domain-flow.md +1 -0
- package/dist/plugin/skills/architecture/references/projections.md +56 -0
- package/dist/plugin/skills/architecture/references/rerun.md +3 -1
- package/dist/plugin/skills/blast-radius/SKILL.md +1 -1
- package/dist/plugin/skills/build-graph/SKILL.md +1 -1
- package/dist/plugin/skills/doubt/SKILL.md +229 -0
- package/dist/plugin/skills/execute/SKILL.md +13 -1
- package/dist/plugin/skills/explain/SKILL.md +1 -1
- package/dist/plugin/skills/interview/SKILL.md +1 -1
- package/dist/plugin/skills/local-pr/SKILL.md +14 -1
- package/dist/plugin/skills/pr/SKILL.md +14 -1
- package/dist/plugin/skills/review/SKILL.md +14 -1
- package/dist/plugin/skills/review-loop/SKILL.md +13 -0
- package/dist/plugin/skills/review-reply/SKILL.md +13 -0
- package/dist/plugin/skills/ship/SKILL.md +14 -1
- package/dist/plugin/skills/solve/SKILL.md +1 -1
- package/dist/plugin/skills/spec/SKILL.md +1 -1
- package/dist/schemas/architecture-ir.schema.json +51 -3
- package/dist/schemas/gestalt.schema.json +12 -0
- package/dist/src/architecture/blueprint-layout.d.ts +105 -0
- package/dist/src/architecture/blueprint-layout.d.ts.map +1 -0
- package/dist/src/architecture/blueprint-layout.js +297 -0
- package/dist/src/architecture/blueprint-layout.js.map +1 -0
- package/dist/src/architecture/delta-renderer.d.ts +35 -0
- package/dist/src/architecture/delta-renderer.d.ts.map +1 -0
- package/dist/src/architecture/delta-renderer.js +329 -0
- package/dist/src/architecture/delta-renderer.js.map +1 -0
- package/dist/src/architecture/delta.d.ts +70 -0
- package/dist/src/architecture/delta.d.ts.map +1 -0
- package/dist/src/architecture/delta.js +342 -0
- package/dist/src/architecture/delta.js.map +1 -0
- package/dist/src/architecture/drilldown.d.ts +19 -1
- package/dist/src/architecture/drilldown.d.ts.map +1 -1
- package/dist/src/architecture/drilldown.js +5 -5
- package/dist/src/architecture/drilldown.js.map +1 -1
- package/dist/src/architecture/er-layout.d.ts +97 -0
- package/dist/src/architecture/er-layout.d.ts.map +1 -0
- package/dist/src/architecture/er-layout.js +344 -0
- package/dist/src/architecture/er-layout.js.map +1 -0
- package/dist/src/architecture/flow-layout.d.ts +22 -1
- package/dist/src/architecture/flow-layout.d.ts.map +1 -1
- package/dist/src/architecture/flow-layout.js +13 -9
- package/dist/src/architecture/flow-layout.js.map +1 -1
- package/dist/src/architecture/html-renderer.d.ts +4 -0
- package/dist/src/architecture/html-renderer.d.ts.map +1 -1
- package/dist/src/architecture/html-renderer.js +462 -20
- package/dist/src/architecture/html-renderer.js.map +1 -1
- package/dist/src/architecture/html-theme.d.ts +18 -0
- package/dist/src/architecture/html-theme.d.ts.map +1 -1
- package/dist/src/architecture/html-theme.js +101 -1
- package/dist/src/architecture/html-theme.js.map +1 -1
- package/dist/src/architecture/ir-schema.d.ts +358 -117
- package/dist/src/architecture/ir-schema.d.ts.map +1 -1
- package/dist/src/architecture/ir-schema.js +33 -1
- package/dist/src/architecture/ir-schema.js.map +1 -1
- package/dist/src/architecture/lifecycle-layout.d.ts +94 -0
- package/dist/src/architecture/lifecycle-layout.d.ts.map +1 -0
- package/dist/src/architecture/lifecycle-layout.js +471 -0
- package/dist/src/architecture/lifecycle-layout.js.map +1 -0
- package/dist/src/architecture/merge.d.ts.map +1 -1
- package/dist/src/architecture/merge.js +72 -2
- package/dist/src/architecture/merge.js.map +1 -1
- package/dist/src/architecture/store.d.ts +6 -1
- package/dist/src/architecture/store.d.ts.map +1 -1
- package/dist/src/architecture/store.js +75 -8
- package/dist/src/architecture/store.js.map +1 -1
- package/dist/src/architecture/types.d.ts +35 -3
- package/dist/src/architecture/types.d.ts.map +1 -1
- package/dist/src/architecture/types.js +13 -1
- package/dist/src/architecture/types.js.map +1 -1
- package/dist/src/architecture/validator.d.ts +27 -3
- package/dist/src/architecture/validator.d.ts.map +1 -1
- package/dist/src/architecture/validator.js +331 -8
- package/dist/src/architecture/validator.js.map +1 -1
- package/dist/src/core/config.d.ts +18 -0
- package/dist/src/core/config.d.ts.map +1 -1
- package/dist/src/core/config.js +14 -1
- package/dist/src/core/config.js.map +1 -1
- package/dist/src/core/hooks-env.d.ts +7 -2
- package/dist/src/core/hooks-env.d.ts.map +1 -1
- package/dist/src/core/hooks-env.js +7 -2
- package/dist/src/core/hooks-env.js.map +1 -1
- package/dist/src/mcp/tools/architecture-passthrough.d.ts.map +1 -1
- package/dist/src/mcp/tools/architecture-passthrough.js +91 -2
- package/dist/src/mcp/tools/architecture-passthrough.js.map +1 -1
- package/package.json +4 -3
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/.mcp.json +1 -1
- package/plugin/mcp.json +1 -1
- package/plugin/skills/_shared/agent-model.md +5 -3
- package/plugin/skills/_shared/proactive-routing.md +1 -0
- package/plugin/skills/agent/SKILL.md +1 -1
- package/plugin/skills/architecture/SKILL.md +31 -5
- package/plugin/skills/architecture/references/domain-flow.md +1 -0
- package/plugin/skills/architecture/references/projections.md +56 -0
- package/plugin/skills/architecture/references/rerun.md +3 -1
- package/plugin/skills/blast-radius/SKILL.md +1 -1
- package/plugin/skills/build-graph/SKILL.md +1 -1
- package/plugin/skills/doubt/SKILL.md +229 -0
- package/plugin/skills/execute/SKILL.md +13 -1
- package/plugin/skills/explain/SKILL.md +1 -1
- package/plugin/skills/interview/SKILL.md +1 -1
- package/plugin/skills/local-pr/SKILL.md +14 -1
- package/plugin/skills/pr/SKILL.md +14 -1
- package/plugin/skills/review/SKILL.md +14 -1
- package/plugin/skills/review-loop/SKILL.md +13 -0
- package/plugin/skills/review-reply/SKILL.md +13 -0
- package/plugin/skills/ship/SKILL.md +14 -1
- package/plugin/skills/solve/SKILL.md +1 -1
- package/plugin/skills/spec/SKILL.md +1 -1
- package/schemas/architecture-ir.schema.json +51 -3
- package/schemas/gestalt.schema.json +12 -0
|
@@ -12,6 +12,8 @@ import { linkDocs } from '../../architecture/doc-link.js';
|
|
|
12
12
|
import { matchEndpoints } from '../../architecture/endpoint-match.js';
|
|
13
13
|
import { matchMcpTools } from '../../architecture/mcp-tool-match.js';
|
|
14
14
|
import { matchNameRefs } from '../../architecture/name-ref-match.js';
|
|
15
|
+
import { computeArchitectureDelta, deltaCounts, deltaOverBudget, deltaScope, } from '../../architecture/delta.js';
|
|
16
|
+
import { computeDeltaLayout, renderDeltaHtml, reuseDeltaLayout, } from '../../architecture/delta-renderer.js';
|
|
15
17
|
import { computeDrilldown, shouldDrillDown } from '../../architecture/drilldown.js';
|
|
16
18
|
import { renderArchitectureHtml, renderDrilldownHtml } from '../../architecture/html-renderer.js';
|
|
17
19
|
import { parseArchitectureIr } from '../../architecture/ir-schema.js';
|
|
@@ -19,7 +21,7 @@ import { assignStages, computeLayout } from '../../architecture/layout.js';
|
|
|
19
21
|
import { mergeArchitectureIrs } from '../../architecture/merge.js';
|
|
20
22
|
import { ArchitectureStore, mergeWithPrevious, previousRunSummary, } from '../../architecture/store.js';
|
|
21
23
|
import { ARCHITECTURE_VIEWS, } from '../../architecture/types.js';
|
|
22
|
-
import { validateArchitectureIr, } from '../../architecture/validator.js';
|
|
24
|
+
import { redactForSharing, validateArchitectureIr, } from '../../architecture/validator.js';
|
|
23
25
|
import { writeJsonAtomic } from '../../core/json-file.js';
|
|
24
26
|
import { log } from '../../core/log.js';
|
|
25
27
|
import { READ_ONLY_ALLOW_WORDS, READ_ONLY_CLI_VERBS, READ_ONLY_DENY_WORDS, filterReadOnlyTools, } from '../../utils/read-only-tools.js';
|
|
@@ -231,6 +233,15 @@ async function handleRender(input, repoRoot) {
|
|
|
231
233
|
const htmlPath = store.saveHtml(view, 'private', privateHtml);
|
|
232
234
|
const sharedHtmlPath = store.saveHtml(view, 'shared', sharedHtml);
|
|
233
235
|
log(`architecture: rendered ${view} โ ${htmlPath}`);
|
|
236
|
+
const delta = await renderDelta(prev, validated, repoRoot, store).catch((e) => {
|
|
237
|
+
// ๋ณด์กฐ ์ฐ์ถ๋ฌผ์ด๋ผ ๋ฉ์ธ ๊ทธ๋ฆผ์ ์ด๋ฏธ ์ ์ฅ๋๋ค. ์ฌ๊ธฐ์ ๋์ง๋ฉด ์ฑ๊ณตํ render๊ฐ ์คํจ๋ก ๋ณด์ธ๋ค
|
|
238
|
+
const message = e instanceof Error ? e.message : String(e);
|
|
239
|
+
log(`architecture: delta ${view} failed: ${message}`);
|
|
240
|
+
return {
|
|
241
|
+
result: { status: 'failed', message: `๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ ๋ง๋ค์ง ๋ชปํ๋ค. ${message}` },
|
|
242
|
+
};
|
|
243
|
+
});
|
|
244
|
+
const warnings = [...validated.warnings, ...(delta.warning ? [delta.warning] : [])];
|
|
234
245
|
return {
|
|
235
246
|
ok: true,
|
|
236
247
|
irPath,
|
|
@@ -249,10 +260,88 @@ async function handleRender(input, repoRoot) {
|
|
|
249
260
|
}
|
|
250
261
|
: {}),
|
|
251
262
|
stats: computeStats(validated),
|
|
252
|
-
|
|
263
|
+
delta: delta.result,
|
|
264
|
+
...(warnings.length > 0 ? { warnings } : {}),
|
|
253
265
|
sourcesUsed: validated.ir.sourcesUsed,
|
|
254
266
|
};
|
|
255
267
|
}
|
|
268
|
+
function deltaSnapshot(v, redact = false) {
|
|
269
|
+
return {
|
|
270
|
+
ir: redact ? redactForSharing(v.ir) : v.ir,
|
|
271
|
+
nodeIds: v.drawableNodeIds,
|
|
272
|
+
edgeIds: v.drawableEdgeIds,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
function changeCounts(delta) {
|
|
276
|
+
const counts = {};
|
|
277
|
+
for (const e of delta.ledger)
|
|
278
|
+
counts[e.change] = (counts[e.change] ?? 0) + 1;
|
|
279
|
+
return counts;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* ๋ณํฉ ์ ์ ์ฝ์ ์ด์ IR์ Before๋ก, ์ด๋ฒ ๋ณํฉ ๊ฒฐ๊ณผ๋ฅผ After๋ก ๋๊ณ ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ ์ด๋ค.
|
|
283
|
+
* ๋ฐ๋ ๊ฒ ์์ผ๋ฉด ์ delta ํ์ผ์ ๊ฑด๋๋ฆฌ์ง ์๋๋ค. ๊ทธ ํ์ผ์ ๋ง์ง๋ง์ผ๋ก ๊ตฌ์กฐ๊ฐ ๋ฐ๋ ์คํ์ ๊ธฐ๋ก์ด๋ค
|
|
284
|
+
*/
|
|
285
|
+
async function renderDelta(prev, next, repoRoot, store) {
|
|
286
|
+
if (prev === null) {
|
|
287
|
+
return { result: { status: 'no_previous', message: '๋น๊ตํ ์ด์ ๊ทธ๋ฆผ์ด ์๋ค.' } };
|
|
288
|
+
}
|
|
289
|
+
// ์ด์ IR์ ๊ทธ๋ ์ด๋ฏธ ๊ทผ๊ฑฐ ํ์ผ์ ํ์ธํ๋ค. ๊ทธ ๋ค ์ฎ๊ฒจ์ง ํ์ผ ๋๋ฌธ์ ๋น๊ต ์์ฒด๊ฐ ๋งํ๋ฉด ์ ๋๋ค
|
|
290
|
+
const before = validate(prev, repoRoot, false);
|
|
291
|
+
if (!before.ok) {
|
|
292
|
+
return {
|
|
293
|
+
result: {
|
|
294
|
+
status: 'no_previous',
|
|
295
|
+
message: '๋น๊ตํ ์ด์ ๊ทธ๋ฆผ์ด ์๋ค. ์ ์ฅ๋ ์ด์ IR์ด ์ง๊ธ ๊ฒ์ฆ ๊ท์น์ ํต๊ณผํ์ง ๋ชปํ๋ค.',
|
|
296
|
+
},
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
const delta = computeArchitectureDelta(deltaSnapshot(before.value), deltaSnapshot(next));
|
|
300
|
+
if (delta.ledger.length === 0) {
|
|
301
|
+
return { result: { status: 'unchanged', message: '์ด์ ๊ทธ๋ฆผ๊ณผ ๊ตฌ์กฐ๊ฐ ๊ฐ๋ค.' } };
|
|
302
|
+
}
|
|
303
|
+
const scope = deltaScope(delta);
|
|
304
|
+
const view = next.ir.view;
|
|
305
|
+
const privateLayout = await computeDeltaLayout(delta, scope);
|
|
306
|
+
// ๊ฐ๋ฆฐ ๊ธ์๋ผ๋ฆฌ ๋ค์ ๋น๊ตํด์ผ ๊ณต์ ๋ณธ ์์ฅ์ ๊ณ์ ID ๊ฐ์ ์๋ฌธ์ด ์ ๊ฐ์ผ๋ก ์์ง ์๋๋ค
|
|
307
|
+
const shared = computeArchitectureDelta(deltaSnapshot(before.value, true), deltaSnapshot(next, true));
|
|
308
|
+
const sharedScope = deltaScope(shared);
|
|
309
|
+
const sharedLayout = await reuseDeltaLayout(privateLayout, shared, sharedScope);
|
|
310
|
+
// ๋ ๋ค ๊ทธ๋ฆฐ ๋ค์ ์ด๋ค. ํ์ชฝ๋ง ์ฐ๊ณ ์คํจํ๋ฉด ๋ ํ์ผ์ด ์๋ก ๋ค๋ฅธ ์คํ์ ๊ฒ์ด ๋๋ค
|
|
311
|
+
const privateHtml = renderDeltaHtml(delta, scope, privateLayout, { audience: 'private' });
|
|
312
|
+
const sharedHtml = renderDeltaHtml(shared, sharedScope, sharedLayout, { audience: 'shared' });
|
|
313
|
+
const htmlPath = store.saveDeltaHtml(view, 'private', privateHtml);
|
|
314
|
+
const sharedHtmlPath = store.saveDeltaHtml(view, 'shared', sharedHtml);
|
|
315
|
+
log(`architecture: delta ${view} โ ${htmlPath}`);
|
|
316
|
+
const counts = deltaCounts(delta, scope);
|
|
317
|
+
const over = deltaOverBudget(counts);
|
|
318
|
+
return {
|
|
319
|
+
result: {
|
|
320
|
+
status: 'created',
|
|
321
|
+
htmlPath,
|
|
322
|
+
sharedHtmlPath,
|
|
323
|
+
changes: changeCounts(delta),
|
|
324
|
+
...(scope.scoped
|
|
325
|
+
? {
|
|
326
|
+
scoped: {
|
|
327
|
+
drawnComponents: scope.nodeIds.size,
|
|
328
|
+
totalComponents: scope.total.components,
|
|
329
|
+
},
|
|
330
|
+
}
|
|
331
|
+
: {}),
|
|
332
|
+
},
|
|
333
|
+
...(over.length > 0
|
|
334
|
+
? {
|
|
335
|
+
warning: {
|
|
336
|
+
code: 'DELTA_OVER_BUDGET',
|
|
337
|
+
message: `๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ด ํ ์ฅ์ ์ฝํ๋ ์์ ๋๋๋ค. ${over.join(', ')}. ๋ฐ๋ ์์ญ์ ๋๋ ๋จ๊ณ๋ณ๋ก ๋ค์ ๊ทธ๋ฆฐ๋ค.`,
|
|
338
|
+
subjectId: view,
|
|
339
|
+
counts: { ...counts },
|
|
340
|
+
},
|
|
341
|
+
}
|
|
342
|
+
: {}),
|
|
343
|
+
};
|
|
344
|
+
}
|
|
256
345
|
function handleMerge(input, repoRoot) {
|
|
257
346
|
const raws = [...(input.irs ?? [])];
|
|
258
347
|
for (const path of input.irPaths ?? []) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architecture-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/architecture-passthrough.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"architecture-passthrough.js","sourceRoot":"","sources":["../../../../src/mcp/tools/architecture-passthrough.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tienne/gestalt",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.97.0",
|
|
4
4
|
"description": "TypeScript AI Development Harness - Gestalt psychology-driven requirement clarification",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -45,12 +45,13 @@
|
|
|
45
45
|
"postversion": "pnpm run version:sync && pnpm run build:output-style",
|
|
46
46
|
"verify:rules": "tsx scripts/verify-rule-refs.ts",
|
|
47
47
|
"verify:rule-overlap": "tsx scripts/verify-rule-overlap.ts",
|
|
48
|
-
"gate": "pnpm typecheck && pnpm verify:rules && pnpm verify:rule-overlap && pnpm verify:routing && pnpm lint && pnpm format:check && pnpm build && pnpm test",
|
|
48
|
+
"gate": "pnpm typecheck && pnpm verify:rules && pnpm verify:rule-overlap && pnpm verify:routing && pnpm verify:skill-confusion && pnpm lint && pnpm format:check && pnpm build && pnpm test",
|
|
49
49
|
"humanize:baseline": "tsx scripts/humanize-baseline.ts",
|
|
50
50
|
"build:output-style": "tsx scripts/build-output-style.ts",
|
|
51
51
|
"verify:output-style": "tsx scripts/build-output-style.ts --dry-run",
|
|
52
52
|
"build:routing": "tsx scripts/build-skill-routing.ts",
|
|
53
|
-
"verify:routing": "tsx scripts/build-skill-routing.ts --check"
|
|
53
|
+
"verify:routing": "tsx scripts/build-skill-routing.ts --check",
|
|
54
|
+
"verify:skill-confusion": "tsx scripts/verify-skill-confusion.ts"
|
|
54
55
|
},
|
|
55
56
|
"dependencies": {
|
|
56
57
|
"@anthropic-ai/sdk": "^0.39.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gestalt",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.97.0",
|
|
4
4
|
"description": "Gestalt psychology-driven AI development harness. Transforms scattered requirements into structured, validated specifications through interactive interviews.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "tienne"
|
package/plugin/.mcp.json
CHANGED
package/plugin/mcp.json
CHANGED
|
@@ -32,6 +32,7 @@ ges_agent { action: "list" }
|
|
|
32
32
|
## ๋ฑ๋ก ์์ด์ ํธ๊ฐ ์๋ ์๋ฆฌ
|
|
33
33
|
|
|
34
34
|
๋ฆฌ๋ทฐ ์ค๋ ๋ ๋ถ๋ฅ์ฒ๋ผ **์ญํ ์ ์ ์์ด ๊ธฐ๊ณ์ ์ผ๋ก ์ฝ๊ณ ์ฎ๊ฒจ ์ ๋ ์์
**์ ์๋ธ์์ด์ ํธ์ ๋งก๊ธธ ๋๊ฐ ์๋ค.
|
|
35
|
+
`doubt`์ ๋ฐ๋ฐ ๋ฆฌ๋ทฐ์ด์ฒ๋ผ ํ๋จ์ด ํ์ํ ์ผ์ ๋ฑ๋ก ์์ด์ ํธ ์์ด ๋งก๊ธธ ๋๋ ์๋ค.
|
|
35
36
|
์ด๋ฐ ์๋ฆฌ์ ๋๊ธธ ์์ด์ ํธ ์ด๋ฆ์ด ์์ด์ `ges_agent { action: "get" }`์ ์ธ ์ ์๋ค. ๋์ `ges_status`๊ฐ
|
|
36
37
|
๊ฐ์ ํ๋ฅผ ํต์งธ๋ก ์ค๋ค.
|
|
37
38
|
|
|
@@ -40,9 +41,10 @@ ges_status {}
|
|
|
40
41
|
โ { tierModels: { frugal: "haiku", standard: "sonnet", frontier: "opus" }, ... }
|
|
41
42
|
```
|
|
42
43
|
|
|
43
|
-
์ฌ๊ธฐ์
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
์ฌ๊ธฐ์ Agent ๋๊ตฌ์ `model`๋ก ๋๊ธธ ๊ฐ์ ๋ฝ๋๋ค. ๋ชจ์์ ๋ถ๋ฅํ๊ณ ์ ๋ฆฌํ๋ ์ผ, ๊ทธ๋ฌ๋๊น ๊ฒฐ๊ณผ๋ฅผ ์ฌ๋์ด ๋ค์
|
|
45
|
+
ํ์ธํ๋ ์์
์ด๋ฉด `tierModels.frugal`์ ์ด๋ค. `frugal`๋ก๋ ํ์ ํ๋จ, ๋ฌธ์ฅ ์์ฑ, ํ์ผ ์์ ์ ๋งก๊ธฐ์ง ์๋๋ค.
|
|
46
|
+
ํ๋จ์ด๋ ๋ฆฌ๋ทฐ๊ฐ ํ์ํ ์ผ์ด๋ฉด ์๋ "์์
๋ณ model๊ณผ effort ์ธํธ" ํ์์ ๊ทธ ์ผ์ tier๋ฅผ ๊ณจ๋ผ ๊ฐ์
|
|
47
|
+
`tierModels`์์ ์ฝ๋๋ค.
|
|
46
48
|
|
|
47
49
|
## ์์
๋ณ model๊ณผ effort ์ธํธ
|
|
48
50
|
|
|
@@ -80,6 +80,7 @@
|
|
|
80
80
|
| "architecture", "์ํคํ
์ฒ ๊ทธ๋ ค์ค", "์ํคํ
์ฒ ๋ทฐ", "ํ๋ฉด์์ DB๊น์ง", "์ด ํ๋ฉด์ด ์ด๋ค API๋ฅผ ๋ถ๋ฅด๋์ง ๊ทธ๋ ค์ค", "๋ฐฐํฌ ๊ฒฝ๋ก ๊ทธ๋ ค์ค", "CI/CD ๊ฒฝ๋ก ๊ทธ๋ ค์ค", "์๋น ์ธํ๋ผ ๊ทธ๋ ค์ค", "ํ๋ค์ค ๊ตฌ์กฐ ๊ทธ๋ ค์ค", "์คํฌ์ด๋ MCP ๋๊ตฌ ๊ด๊ณ ๊ทธ๋ ค์ค", "์ํ์ค ๊ทธ๋ ค์ค", "ํธ์ถ ์์ ๊ทธ๋ ค์ค", "๋ฐ์ดํฐ ํ๋ฆ ๊ทธ๋ ค์ค", "๋ฐ์ดํฐ ๋ฆฌ๋์ง ๊ทธ๋ ค์ค", "์
๋ฌด ํ๋ฆ ๊ทธ๋ ค์ค", "๊ฒฐ์ฌ ์ ์ฐจ ๊ทธ๋ ค์ค", "๋ ๊ตฌ์กฐ ๋น๊ตํด์ ๊ทธ๋ ค์ค", "๋คํธ์ํฌ ๊ตฌ์ฑ๋ ๊ทธ๋ ค์ค", "์ธํ๋ผ ๊ตฌ์ฑ๋ ๊ทธ๋ ค์ค", "์กฐ์ง๋ ๊ทธ๋ ค์ค", "์
๋ฌด ์์คํ
๊ด๊ณ ๊ทธ๋ ค์ค", "๋ฌธ์ ์ง๋ ๊ทธ๋ ค์ค", "KB ๋ ํฌ ๊ทธ๋ ค์ค", "๋ฌธ์ ๊ตฌ๋ฉ ์ฐพ์์ค", "์ค๋๋ ๋ฌธ์ ์ฐพ์์ค", "์ด PR๋ก ์๋ด์ผ ํ ๋ฌธ์ ์ฐพ์์ค", "์ฝ๋ ๋ฐ๋ ๊ฑธ๋ก ๋ก์ ๋ฌธ์ ๊ณจ๋ผ์ค", "์ํคํ
์ฒ ๊ทธ๋ฆผ ํฉ์ณ์ค" | `architecture` ์คํฌ ์ฌ์ฉ | ๋งฅ๋ฝ ์์ค ์ฐพ๊ธฐ โ ์ฝ๊ธฐ ์ ์ฉ ๊ฑธ๋ฌ๋ด๊ธฐ โ ํ์ โ IR validate โ ๋ฏธํด๊ฒฐ ์ง๋ฌธ โ render. ๋ฌธ์ ๋ ํฌ๋ scan_docs โ link_docs โ render. ์ค๊ณ ๋ฆฌ๋ทฐ๋ ์๋ฌธ์ด๋ฉด `architect` |
|
|
81
81
|
| "์ฑ๊ณผ ๋ณด๊ณ ์", "์ฑ๊ณผ ๋ถ์", "๋ถ๊ธฐ ๋ฆฌํฌํธ", "๋ถ๊ธฐ ๋ณด๊ณ ", "KPI ๋ฆฌํฌํธ", "์ ์์ ์์ฑ", "์ ์์ ์จ์ค", "RFC ์จ์ค", "RFC ์์ฑ", "์์ฌ๊ฒฐ์ ๋ฉ๋ชจ", "ํ๊ณ ์ ๋ฆฌ", "ํ๊ณ ์จ์ค", "๊ฒฝ์์ง ๋ณด๊ณ ์๋ฃ", "์ฑ๊ณผ ๋ฌธ์", "์ด ๋ฌธ์ ๋ค์ ์จ์ค", "๋ณด๊ณ ์ ๋ณด์" | `brief` ์คํฌ ์ฌ์ฉ | |
|
|
82
82
|
| "orca๋ก ์คํ", "orca๋ก ๋ณ๋ ฌ", "์์ปค๋ก ๋ฟ๋ ค", "ํฐ๋ฏธ๋๋ก ๋ฟ๋ ค", "๋ณ๋ ฌ ๋์คํจ์น", "๋ค๋ฅธ ์์ด์ ํธ๋ก ์คํ", "codex๋ก ์คํ", "์์ปค ๋์์ ์คํ" | `dispatch` ์คํฌ ์ฌ์ฉ | ๋ฐํ์ ๊ฐ์ง โ ๊ฐ์ ์ํฌํธ๋ฆฌ์ ํฐ๋ฏธ๋ โ worker_done ๋๊ธฐ โ ready ์ฌ๊ณ์ฐ. ๋ฐํ์ ์์ผ๋ฉด execute์ ๊ธฐ๋ณธ ๋ณ๋ ฌ ๊ฒฝ๋ก |
|
|
83
|
+
| "doubt", "์์ฌํด์ค", "๋ฐ๋ฐํด์ค", "๋ฐ๋ฐ๋ถํฐ ๋ฐ์", "๋ฐ๋ก ๋ถํฐ ๋ค์ด๋ณด์", "์ด ๊ฒฐ์ ์์ฌ", "๋๋๋ฆฌ๊ธฐ ์ด๋ ค์ด ์์
์ ์" | `doubt` ์คํฌ ์ฌ์ฉ | ์๋์ผ๋ก๋ ๋๋๋ฆฌ๊ธฐ ์ด๋ ค์ด ์์
(๋ฐฐํฌ, ๋ฐ์ดํฐ ๋ง์ด๊ทธ๋ ์ด์
, ๊ณต๊ฐ API ๋ณ๊ฒฝ), ๋ณด์ ์ฑ์ง ์ฃผ์ฅ, ๋ฏ์ ์ฝ๋์์ ๋ถ๊ธฐ ๋ก์ง์ ๋ฐ๊ฟ ๋๋ง ๋์ด๋ค. ๊ฒฐ์ ๋ง๋ค ๋์ฐ์ง ์๋๋ค. ์๋ธ์์ด์ ํธ ์์์๋ ์ฐ์ง ์๊ณ ๋ฉ์ธ ์ธ์
์ ์ฌ๋ฆฐ๋ค. ๋ค ๋ง๋ ๋ค ํ์ ์ `continuity-judge`, PR ๋จ์ ๊ฒํ ๋ `review` |
|
|
83
84
|
| "์ค๋ช
ํด์ค", "์ฝ๊ฒ ํ์ด์ค", "ํ์ด์ ์ค๋ช
", "์ดํดํ๊ธฐ ์ฝ๊ฒ", "์ฝ๊ฒ ๋งํ๋ฉด", "์ด๊ฑฐ ๋ญ์ผ", "์ด ์๋ฌ ๋ญ์ผ", "๋ฌด์จ ๋ป์ด์ผ", "ELI5", "ํํ
์ค๋ช
ํด์ค", "์๊ฒ ์ค๋ช
ํด์ค", "๊ธฐํํํํ
", "๋น๊ฐ๋ฐ์ํํ
", "๊ฒฝ์์ง ๋ณด๊ณ ์ฉ์ผ๋ก ์ค๋ช
" | `explain` ์คํฌ ์ฌ์ฉ | ์์ค ํ๋ณด โ ๋์ ํ์ โ explainer ์์ โ explain-check โ ์ฌ์๋. ์ค๋ช
๋ฌธ์ฅ๋ง ๋น ๋ฅด๊ฒ ํ์ํ๋ฉด `explainer` ์์ด์ ํธ |
|
|
84
85
|
| "handoff", "ํธ๋์คํ", "ํธ๋์ค๋ฒ", "์ด๋์ ๋งก๊ธธ์ง", "์๋ธ์์ด์ ํธ๋ก ๋งก๊ฒจ", "์ํฌํธ๋ฆฌ๋ก ๋๊ฒจ", "ํ์ ์ํฌํธ๋ฆฌ๋ก", "๋
๋ฆฝ ์ํฌํธ๋ฆฌ๋ก" | `handoff` ์คํฌ ์ฌ์ฉ | ๋งก๊ธธ ๊ณณ ๊ณ ๋ฅด๊ธฐ(๋ฉ์ธ, ์๋ธ์์ด์ ํธ, ํ์ ์ํฌํธ๋ฆฌ, ๋
๋ฆฝ ์ํฌํธ๋ฆฌ) โ model๊ณผ effort ์ โ ์ง์์ โ ์ค๋ฅด์นด ๋๋ Agent ๋๊ตฌ๋ก ์์. ๊ฐ์ ๋ธ๋์น ๋ณ๋ ฌ ์ชผ๊ฐ๊ธฐ๋ `dispatch` |
|
|
85
86
|
| "์ง๋ผ ํฐ์ผ", "์ง๋ผ ์ด์", "ํฐ์ผ ๋ง๋ค์ด", "ํฐ์ผ ์์ฑ", "์ด์ ๋ง๋ค์ด", "์ด์ ์์ฑ", "์ง๋ผ์ ์ฌ๋ ค", "์ง๋ผ์ ๋ฑ๋ก", "๋ฐฑ๋ก๊ทธ์ ์ถ๊ฐ", "jira ํฐ์ผ", "jira ์ด์", "create jira" | `jira-create` ์คํฌ ์ฌ์ฉ | ๋ด๋ถ์ ์ผ๋ก jira-writer ๊ตฌ์กฐํ โ ํ๋ก์ ํธยทํ๋ ํ์ โ ์น์ธ ๋จ๊ณ โ createJiraIssue |
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agent
|
|
3
3
|
version: "1.0.0"
|
|
4
|
-
description: "
|
|
4
|
+
description: "์ ์ฉ ์คํฌ์ด ์๋ ์ผ์ Gestalt ์์ด์ ํธ ํ๋๋ฅผ ์ด๋ฆ์ผ๋ก ๋ถ๋ฌ ํ์ดํ๋ผ์ธ ์์ด ๋ฐ๋ก ๋งก๊ธด๋ค(architect ๊ฐ์ ์์ด์ ํธ์๊ฒ ์ง์ ๋ฌป๊ธฐ). ์ ์ฉ ์คํฌ(review, pr, brief, presentation, jira-create, slack-send)์ด ์๋ ์ผ์ด๋ฉด ๊ทธ ์คํฌ์ ์ด๋ค. ์ด ์คํฌ์๋ ์๋ ์น์ธ ๋จ๊ณ์ ์ฐ์ถ๋ฌผ ์ฒ๋ฆฌ๊ฐ ๊ทธ์ชฝ์ ์๋ค."
|
|
5
5
|
triggers:
|
|
6
6
|
- "agent"
|
|
7
7
|
- "use agent"
|
|
@@ -114,6 +114,9 @@ Step 0 ์ ์ ๋ ๊ฐ์ง๋ฅผ ์ ํ๋ค. ๋์์ ๋ง๋ ์ดํ ํฉ๊ณผ ์ง๋ฌธ์
|
|
|
114
114
|
| ๋ฐ์ดํฐ๊ฐ ์ด๋์ ์์ ์ด๋๋ก ๊ฐ๋ | `dataflow` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ |
|
|
115
115
|
| ๋์ด ๋ฌด์์ด ๊ฐ๊ณ ๋ฌด์์ด ๋ค๋ฅธ๊ฐ | `compare` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ |
|
|
116
116
|
| ์ํ๋ ๋จ๊ณ, ์
๋ฌด ์ ์ฐจ | `flows` ([Step 3.5](#step-35--๋๋ฉ์ธ-ํ๋ฆ)) |
|
|
117
|
+
| ํ ๋์์ด ์ด๋ค ์ํ๋ฅผ ๊ฑฐ์ณ ์ด๋์ ๋๋๋ | `flows`๋ฅผ ๋จผ์ ์ฐ๊ณ ๊ทธ ์์ `lifecycle` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ |
|
|
118
|
+
| ๊ณ ๊ฐ์ด ํ ๊ฑธ์ ๊ฐ ๋ ๋ค์์ ๋ฌด์์ด ์ผํ๋ | `flows`๋ฅผ ๋จผ์ ์ฐ๊ณ ๊ทธ ์์ `blueprint` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ |
|
|
119
|
+
| ํ
์ด๋ธ๋ผ๋ฆฌ ์ด๋ค ์ปฌ๋ผ์ผ๋ก ๋ฌถ์ด๋ | `db_table`์ `columns`๋ฅผ ๋จผ์ ์ฐ๊ณ ๊ทธ ์์ `er` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ |
|
|
117
120
|
| ๋ถ๋ช
ํ์ง ์๋ค | ์ง๋๋ฅผ ๊ทธ๋ฆฌ๊ณ Step 8 ๋ณด๊ณ ์์ ํฌ์ปค์ค ์ฐ๋ ๋ฒ์ ์๋ดํ๋ค |
|
|
118
121
|
|
|
119
122
|
- ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์ง๋ ์์ ์น๋๋ค. ์ง๋๋ฅผ ๋จผ์ ๊ทธ๋ฆฐ๋ค. ๋ต์ ํ์ํ ์ฌ์ค์ด ์ง๋์ ์์ผ๋ฉด ๋จผ์ ํ์ํด ๊ทผ๊ฑฐ์ ํจ๊ป `nodes`์ `edges`์ ๋ฃ๋๋ค. ๊ทธ๋ค์์ ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์์ ๊ฐ๋ฆฌํจ๋ค. ๋๋ด ๋ชป ์ฐพ์ ์ฌ์ค์ ๊ทธ๋ฆฌ์ง ์๊ณ ๋ฏธํด๊ฒฐ ์ง๋ฌธ์ผ๋ก ๋จ๊ธด๋ค.
|
|
@@ -262,6 +265,7 @@ Step 0 ์ ์ ๋ ๊ฐ์ง๋ฅผ ์ ํ๋ค. ๋์์ ๋ง๋ ์ดํ ํฉ๊ณผ ์ง๋ฌธ์
|
|
|
262
265
|
- `repo`๋ ํด๋ผ์ฐ๋ ์กฐํ์ฉ ๊ฐ์ง ๋ ํฌ id๋ก ๋๊ณ label์ `<์์ง>:<ํด๋ฌ์คํฐ ์๋ณ์>` ๊ผด(`aurora-mysql:<์๋ณ์>`, `redis:<์๋ณ์>`)๋ก ์ด๋ค. ๋ค๋ฅธ ๋ถ์๊ณผ ํฉ์น ๋ ๊ฐ์ ํด๋ฌ์คํฐ๊ฐ ํ ๋
ธ๋๋ก ๋ชจ์ด๋ ๊ธฐ์ค์ด ์ด label์ด๋ค.
|
|
263
266
|
- `engine`์ ์์ง ์ด๋ฆ(`mysql`, `postgresql`, `redis`, `elasticsearch`, `mongodb`, `documentdb`, `dynamodb`, `mariadb`)์ ๋จ๋ค. ์นด๋์ ๊ทธ ์์ง ๋ก๊ณ ๊ฐ ์ ๋ค. Aurora MySQL์ `mysql`, ElastiCache Redis๋ `redis`๋ค. ์ ๋ฌ๋ฉด label ์๋ถ๋ถ์ผ๋ก ์ฐพ์ง๋ง label์ ๋ค๋ฅด๊ฒ ์ ์ผ๋ฉด ๋ก๊ณ ๊ฐ ์ ๋ถ๋๋ค.
|
|
264
267
|
- **id์๋ ํด๋ฌ์คํฐ ์๋ณ์์ ๊ณ์ ID๋ฅผ ๋ฃ์ง ์๋๋ค.** `ds:redis-common`์ฒ๋ผ ๋ณ์นญ์ผ๋ก ์ง๋๋ค.
|
|
268
|
+
- ํ
์ด๋ธ ๊ตฌ์กฐ๋ฅผ ๋ฌป๋ ์ง๋ฌธ์ด ์์ ๋๋ง `db_table`์ `columns`๋ฅผ ๋จ๋ค. ์ถ์ฒ๋ ๋ง์ด๊ทธ๋ ์ด์
ํ์ผ(`CREATE TABLE`, `ALTER TABLE ... ADD CONSTRAINT`), ORM ์ํฐํฐ(JPA `@Entity`, TypeORM, Prisma `schema.prisma`, Django ๋ชจ๋ธ), ์คํค๋ง ๋คํ ํ์ผ์ด๋ค. ์ปฌ๋ผ ํ๋๋ `{ name, type?, pk?, nullable?, unique?, references?, evidence? }`์ด๊ณ ์ธ๋ ํค๋ `references: { table, column?, onDelete? }`์ ๋์ `db_table` id๋ก ์ ๋๋ค. ์ธ๋ ํค ์ปฌ๋ผ์๋ ๊ทธ ์ ์ฝ์ ์ ์ ์ค์ `evidence`๋ก ๋จ๋ค. ๊ทผ๊ฑฐ๊ฐ ์์ผ๋ฉด ์ ์ด ์ ๊ทธ๋ ค์ง๊ณ `auto:fk:` ์ง๋ฌธ์ด ์๊ธด๋ค. ์ฐ์์๋ [`references/projections.md`](./references/projections.md)์ er ํญ๋ชฉ์ ์๋ค.
|
|
265
269
|
- `environment`๋ฅผ ๋จ๋ค. ์ ์ฒด ๊ทธ๋ฆผ์ prod ๊ธฐ์ค์ด๋ผ `prod`๊ฐ ์๋ ์ ์ฅ์๋ ์ ์ฒด ๊ทธ๋ฆผ์์ ๋น ์ง๊ณ ์๋ ๋ ๋ฒจ์์๋ง ๋ณด์ธ๋ค. ์กฐํ๋ก ์ฑ์ธ ๋๋ prod๋ถํฐ ์ฑ์ด๋ค.
|
|
266
270
|
|
|
267
271
|
### 3-3. `gateway`
|
|
@@ -311,6 +315,10 @@ AI ํด๋ผ์ด์ธํธ๊ฐ ํ๋ฌ๊ทธ์ธ์ผ๋ก ์ฝ์ด ๋ค์ด๋ ์คํฌ๊ณผ ์์ด์ ํธ
|
|
|
311
315
|
> **์ด ๋จ๊ณ์ ์์ธ** โ [`references/domain-flow.md`](./references/domain-flow.md)
|
|
312
316
|
> screen-chain์์ ์ํ๋ ๋จ๊ณ, ์
๋ฌด ์ ์ฐจ๋ฅผ ๊ทธ๋ฆด ๋๋ง ์ด ํ์ผ์ ์ฝ๊ณ ๋ฐ๋ฆ
๋๋ค. ์๋๋ฉด ์ด์ง ์๊ณ ๋ค์์ผ๋ก ๊ฐ๋๋ค.
|
|
313
317
|
|
|
318
|
+
ํ๋ฆ ๊ทธ๋ฆผ์ ํ์์ ์ค ์์ ๋จ๊ณ๋ฅผ ๋์ด๋์ "๋๊ฐ ๋ฌด์์ ํ๋"๋ฅผ ๋ณด์ฌ์ค๋ค. "์ด ์ฃผ๋ฌธ์ ์ด๋ค ์ํ๋ฅผ ๊ฑฐ์ณ ์ด๋์ ๋๋๋"๋ฅผ ๋ฌผ์ผ๋ฉด ๊ฐ์ ํ๋ฆ ์์ `lifecycle` ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ํ๋ ๋ ์น๋๋ค. ๋จ๊ณ์ `state`๋ง ๋ชจ์ ์งํ ๋จ๊ณ, ๋๊ธฐ์ ๋ณต๊ตฌ, ๋ ์ํ ์ธ ๋ ๋ก ๋ค์ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ์ด๋ผ ๋ฐ๋ก ์ ์ ์ฌ์ค์ด ์๋ค. ๋ ๋จ๊ณ์ `outcome`(`done`, `cancel`, `fail`)์ ๋ฌ๋ฉด ๋ ์ํ ์นด๋์ ์๋ฃ, ์ทจ์, ์คํจ ๋ฐฐ์ง๊ฐ ๋ถ๋๋ค. ์์ธ๋ [`references/projections.md`](./references/projections.md)์ lifecycle ํญ๋ชฉ์ ์๋ค.
|
|
319
|
+
|
|
320
|
+
"์๋์ด ์ค์ ์๋ ๋์ ๋ค์์๋ ์ด๋ค API์ ํ
์ด๋ธ์ด ์ผํ๋"์ฒ๋ผ ๊ณ ๊ฐ ๋จ๊ณ๋ง๋ค ํ๋ฉด ๋ค๋ฅผ ๋ฌผ์ผ๋ฉด `blueprint`๋ฅผ ์น๋๋ค. ์ ์ ํ๋ฆ ๋จ๊ณ๋ฅผ ์ด๋ก ์ธ์ฐ๊ณ ์์์ ์๋๋ก ๊ณ ๊ฐ ํ๋, ํ๋ก ํธ์คํ
์ด์ง, ๊ฐ์์ , ๋ฐฑ์คํ
์ด์ง, ์ง์ ์ธต์ ๋๋ ๋ด๋๋ค. ์นธ์ ๋จ๊ณ์ ํ์์์ `refs`, ๊ฑฐ๊ธฐ์ ์ด์ด์ง๋ ๊ทผ๊ฑฐ ์๋ ์ง๋ ์ฃ์ง๋ก๋ง ์ฑ์ด๋ค. ๊ทธ๋์ ๋จ๊ณ์ `refs`๋ฅผ ๋ฌ์ ๋ฌ์ผ ์นธ์ด ์ฐฌ๋ค. ๋ฐ์ดํฐ๊ฐ ์ด๋๋ก ํ๋ฌ๊ฐ๋์ง๊ฐ ๊ถ๊ธํ๋ฉด `dataflow`, ํธ์ถ ์์๊ฐ ๊ถ๊ธํ๋ฉด `sequence`์ด๊ณ blueprint๊ฐ ์๋๋ค. ์์ธ๋ [`references/projections.md`](./references/projections.md)์ blueprint ํญ๋ชฉ์ ์๋ค.
|
|
321
|
+
|
|
314
322
|
## Step 4 โ ๋ทฐโก deploy-path ํ์
|
|
315
323
|
|
|
316
324
|
1. **๋ฐฐํฌ ๋จ์**: ๋ ํฌ๋ง๋ค ๋ฐฐํฌ๋๋ ๋จ์๋ฅผ ์ ํ๋ค. ๋ชจ๋
ธ๋ ํฌ๋ฉด ์ฑ ํ๋๊ฐ ๋จ์๋ค.
|
|
@@ -456,6 +464,9 @@ FE๊ฐ ๋ถ๋ฅด๋ BE ๋ ํฌ๋ ๋ฐฐํฌ ๋งค๋ํ์คํธ ๋ ํฌ์ฒ๋ผ ์ง๊ธ ๋ ํฌ
|
|
|
456
464
|
- ์ถ์ฒ๊ฐ ์ด๋ฏธ ์๋ ๋
ธ๋๋ ๊ฑฐ๊ธฐ์ ๊ฐ์ ธ์ ํ ์ค๋ก ์ค์ธ๋ค. ์คํฌ์ SKILL.md ํ๋ฐํธ๋งคํฐ์ `description`, MCP ๋๊ตฌ๋ ๋๊ตฌ ๋ฑ๋ก์ description, ์์ด์ ํธ๋ AGENT.md์ `description`์ด๋ ์ฒซ ๋ฌธ๋จ์ด๋ค. ํธ๋ฆฌ๊ฑฐ ๋ฌธ๊ตฌ๋ ์ฌ์ฉ ์์๋ ๊ฑท์ด๋ด๊ณ ํ๋ ์ผ๋ง ๋จ๊ธด๋ค.
|
|
457
465
|
- ์ถ์ฒ๊ฐ ์์ผ๋ฉด ์ฝ๋์์ ์ฝ์ ๋๋ก ์ด๋ค. ํ๋ฉด์ ์ฌ์ฉ์๊ฐ ๊ฑฐ๊ธฐ์ ํ๋ ์ผ, API๋ ๋ฌด์์ ๋๋ ค์ฃผ๊ฑฐ๋ ๋ฐ๊พธ๋์ง, ํ
์ด๋ธ์ ๋ฌด์์ ๋ด๋์ง๋ค.
|
|
458
466
|
- ๋น ์ฑ๋ก ๋๋ฉด validate๊ฐ `warnings`์ `NODE_DESCRIPTION_MISSING`์ ์ฃ๋๋ค. ์๋ฌ๊ฐ ์๋๋ผ render๋ ๋ง์ง ์๋๋ค. ๊ฒฝ๊ณ ์ ์ค๋ฆฐ `nodeIds`๋ฅผ ์ฑ์ ๋ค์ validateํ๋ค.
|
|
467
|
+
- ์ํ ํ๋ฆ ๊ทธ๋ฆผ์ด ํ ์ฅ์ ์ฝํ๋ ์์ ๋์ผ๋ฉด `warnings`์ `LIFECYCLE_OVER_BUDGET`์ด ์ค๋ฆฐ๋ค. ์ด๊ฒ๋ render๋ฅผ ๋ง์ง ์๋๋ค. ๊ฒฝ๊ณ ์ `counts`๋ฅผ ๋ณด๊ณ ์ธ๋ถ ์ํ๋ฅผ ํ๋๋ก ํฉ์น๊ฑฐ๋ ํ๋ฆ์ ๋๋ก ๋๋๋ค.
|
|
468
|
+
- ์๋น์ค ๋ธ๋ฃจํ๋ฆฐํธ์ ๋จ๊ณ ์ด์ด 6์ ๋์ผ๋ฉด `warnings`์ `BLUEPRINT_OVER_BUDGET`์ด ์ค๋ฆฐ๋ค. render๋ ๋ง์ง ์๋๋ค. ๊ฐ์ ํ๋ฉด์์ ์ด์ด์ง๋ ๋จ๊ณ๋ฅผ ํฉ์น๊ฑฐ๋ ํ๋ฆ์ ๋๋๋ค.
|
|
469
|
+
- ํ
์ด๋ธ ๊ด๊ณ ๊ทธ๋ฆผ์ด ํ
์ด๋ธ 5๊ฐ, ํ ํ
์ด๋ธ์ ์ปฌ๋ผ 8๊ฐ, ์ธ๋ ํค ์ 6๊ฐ ์ค ํ๋๋ผ๋ ๋์ผ๋ฉด `warnings`์ `ER_OVER_BUDGET`์ด ์ค๋ฆฐ๋ค. render๋ ๋ง์ง ์๋๋ค. ์ง๋ฌธ์ ๊ฑธ๋ฆฐ ํ
์ด๋ธ๋ง ๋จ๊ธฐ๊ฑฐ๋ ๊ทธ๋ฆผ์ ๋๋๋ค.
|
|
459
470
|
|
|
460
471
|
### ํ์ด์ง ๊ธ
|
|
461
472
|
|
|
@@ -537,10 +548,10 @@ FE๊ฐ ๋ถ๋ฅด๋ BE ๋ ํฌ๋ ๋ฐฐํฌ ๋งค๋ํ์คํธ ๋ ํฌ์ฒ๋ผ ์ง๊ธ ๋ ํฌ
|
|
|
537
548
|
|
|
538
549
|
### ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์น๋๋ค
|
|
539
550
|
|
|
540
|
-
[๋ชจ์ ๊ณ ๋ฅด๊ธฐ](#๋ชจ์-๊ณ ๋ฅด๊ธฐ)์์ `sequence`, `dataflow`, `compare
|
|
551
|
+
[๋ชจ์ ๊ณ ๋ฅด๊ธฐ](#๋ชจ์-๊ณ ๋ฅด๊ธฐ)์์ `sequence`, `dataflow`, `compare`, `lifecycle`, `blueprint`, `er`์ ๊ณจ๋์ผ๋ฉด ์ง๋๋ฅผ ๋ค ์ด ๋ค `projections`์ ๊ทธ๋ฆผ์ ๋จ๋ค. ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์ง๋์ ๋
ธ๋์ ์ฃ์ง๋ฅผ id๋ก ๊ฐ๋ฆฌํฌ ๋ฟ์ด๋ค. ์ ์ฌ์ค์ ์ฌ๊ธฐ์ ๋จผ์ ์ ์ง ์๋๋ค. `lifecycle`๊ณผ `blueprint`๋ ๋
ธ๋ ๋์ `flows`์ ํ๋ฆ ํ๋๋ฅผ `flow`๋ก ๊ฐ๋ฆฌํจ๋ค. `er`์ `participants`์ `db_table` id๋ฅผ ์ ๊ณ ์ ์ ์ปฌ๋ผ์ `references`์์ ๋์จ๋ค.
|
|
541
552
|
|
|
542
553
|
> **์ด ๋จ๊ณ์ ์์ธ** โ [`references/projections.md`](./references/projections.md)
|
|
543
|
-
> `sequence`, `dataflow`, `compare
|
|
554
|
+
> `sequence`, `dataflow`, `compare`, `lifecycle`, `blueprint`, `er`์ ๊ณจ๋์ ๋๋ง ์ด ํ์ผ์ ์ฝ๊ณ ๋ฐ๋ฆ
๋๋ค. ์๋๋ฉด ์ด์ง ์๊ณ ๋ค์์ผ๋ก ๊ฐ๋๋ค.
|
|
544
555
|
|
|
545
556
|
### parent๋ก ํฌํจ ๊ด๊ณ๋ฅผ ๋จ๋ค
|
|
546
557
|
|
|
@@ -575,7 +586,10 @@ FE๊ฐ ๋ถ๋ฅด๋ BE ๋ ํฌ๋ ๋ฐฐํฌ ๋งค๋ํ์คํธ ๋ ํฌ์ฒ๋ผ ์ง๊ธ ๋ ํฌ
|
|
|
575
586
|
```
|
|
576
587
|
|
|
577
588
|
- ์ฑ๊ณตํ๋ฉด `{ ok: true, autoUnresolved, drawable }`์ด๋ค. `drawable`์ ๋น ์ง ๋
ธ๋์ ์ฃ์ง๊ฐ ์์ผ๋ฉด ์ ๋น ์ก๋์ง `autoUnresolved`์์ ํ์ธํ๋ค.
|
|
578
|
-
- ์ฑ๊ณตํด๋ `warnings`๊ฐ ์ฌ ์ ์๋ค.
|
|
589
|
+
- ์ฑ๊ณตํด๋ `warnings`๊ฐ ์ฌ ์ ์๋ค. ์ด๋ ๊ฒฝ๊ณ ๋ render๋ฅผ ๋ง์ง ์๋๋ค. ๊ณ ์น๋ ๋ฒ์ [๋
ธ๋ ์ค๋ช
](#๋
ธ๋-์ค๋ช
)์ ๋ชจ์ ๋์๋ค.
|
|
590
|
+
- `NODE_DESCRIPTION_MISSING`์ ๊ทธ๋ฆฌ๋ ๋
ธ๋ ์ค `description`์ด ๋น ๋
ธ๋๋ฅผ `nodeIds`์ ๋ชจ์ ์ค๋ค. ๊ทธ ์นด๋์๋ ์ค๋ช
์ค์ด ์์ผ๋ ์ฑ์ด๋ค.
|
|
591
|
+
- ์์ฐ ๊ฒฝ๊ณ (`LIFECYCLE_OVER_BUDGET`, `BLUEPRINT_OVER_BUDGET`, `ER_OVER_BUDGET`)์๋ `nodeIds`๊ฐ ์๋ค. ๋์น ๊ทธ๋ฆผ์ id๋ฅผ `subjectId`์, ๋์น ๊ฐ์๋ฅผ `counts`์ ๋ด๋๋ค. ๊ทธ๋ฆผ์ ๋๋๊ฑฐ๋ ์ค์ด๋ผ๋ ์ ํธ๋ค.
|
|
592
|
+
- render ์๋ต์๋ ๊ฐ์ `warnings`๊ฐ ์ค๋ฆฐ๋ค. render์๋ `DELTA_OVER_BUDGET`์ด ๋ ์ฌ ์ ์๋ค. ์ฝ๋ ๋ฒ์ [Step 8](#step-8--render์-๋ณด๊ณ )์ ์๋ค.
|
|
579
593
|
- ์คํจํ๋ฉด `errors[]`์ `code`์ `nodeId`๋ `edgeId`๊ฐ ์จ๋ค. ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ ์๋ฌ๋ฉด `projectionId`์ `messageId`๊ฐ ์ค๊ณ ๊ตฌ๊ฐ ์๋ฌ๋ฉด `phaseId`๊ฐ ํจ๊ป ์จ๋ค.
|
|
580
594
|
|
|
581
595
|
| ์๋ฌ ์ฝ๋ | ๊ณ ์น๋ ๋ฒ |
|
|
@@ -607,7 +621,10 @@ FE๊ฐ ๋ถ๋ฅด๋ BE ๋ ํฌ๋ ๋ฐฐํฌ ๋งค๋ํ์คํธ ๋ ํฌ์ฒ๋ผ ์ง๊ธ ๋ ํฌ
|
|
|
607
621
|
| `PROJECTION_EDGE_NOT_FOUND`, `PROJECTION_EDGE_MISMATCH` | ๋ฉ์์ง `edge`๋ฅผ ๊ทธ ๋ ๋
ธ๋๋ฅผ ์๋ ์ง๋ ์ฃ์ง๋ก ๊ณ ์น๋ค. ๊ทธ๋ฐ ์ฃ์ง๊ฐ ์์ผ๋ฉด ์ง๋์ ๋จผ์ ๋ฃ๊ฑฐ๋ `edge`๋ฅผ ๋บ๋ค |
|
|
608
622
|
| `PROJECTION_BLOCK_NOT_FOUND`, `PROJECTION_BLOCK_SPLIT` | ๋ฉ์์ง `block`์ `blocks`์ id๋ก ๊ณ ์น๊ณ ํ ๋ฌถ์์ ๋ฉ์์ง๋ฅผ ๋ถ์ฌ ์ ๋๋ค |
|
|
609
623
|
| `SOLID_MESSAGE_WITHOUT_EVIDENCE` | ๊ฐ๋ฆฌํจ ์ฃ์ง๋ ์๊ธฐ ๊ทผ๊ฑฐ์ code๋ spec์ด ์๋ค. ๊ทผ๊ฑฐ๋ฅผ ์ฐพ์ ๋ฌ๊ฑฐ๋ ์ ์ ์ผ๋ก ๋ฐ๊พผ๋ค |
|
|
610
|
-
| `PROJECTION_EMPTY` | sequence์ dataflow์ ๋ฉ์์ง๋ฅผ ๋ฃ๋๋ค. ๋ฃ์ ๋ฉ์์ง๊ฐ ์์ผ๋ฉด ๊ทธ ๊ทธ๋ฆผ์
|
|
624
|
+
| `PROJECTION_EMPTY` | sequence์ dataflow์ ๋ฉ์์ง๋ฅผ ๋ฃ๋๋ค. ๋ฃ์ ๋ฉ์์ง๊ฐ ์์ผ๋ฉด ๊ทธ ๊ทธ๋ฆผ์ ๋บ๋ค. lifecycle์ด๋ฉด ๊ฐ๋ฆฌํจ ํ๋ฆ ๋จ๊ณ์ `state`๋ฅผ ๋จ๋ค. blueprint๋ฉด ๊ฐ๋ฆผ๊ธธ ๋ง๊ณ ๋จ๊ณ๋ฅผ ํ๋๋ผ๋ ๋๋ค. er์ด๋ฉด `participants`์ ํ
์ด๋ธ์ ํ๋๋ผ๋ ๋๋ค |
|
|
625
|
+
| `PROJECTION_FLOW_NOT_FOUND` | lifecycle์ด๋ blueprint์ `flow`๋ฅผ `flows`์ ์๋ ํ๋ฆ id๋ก ๊ณ ์น๋ค. ํ๋ฆ์ด ์์ง ์์ผ๋ฉด [Step 3.5](#step-35--๋๋ฉ์ธ-ํ๋ฆ)๋๋ก ๋จผ์ ์ด๋ค |
|
|
626
|
+
| `COLUMN_REFERENCE_NOT_FOUND` | ์ปฌ๋ผ `references.table`์ ์ง๋์ ์๋ `db_table` id๋ก ๊ณ ์น๋ค. ๋์์ด `columns`๋ฅผ ์ ์์ผ๋ฉด `references.column`๋ ๊ทธ ์์ ์ด๋ฆ์ด์ด์ผ ํ๋ค. ๋์ ํ
์ด๋ธ์ ๋ชป ์ฐพ์์ผ๋ฉด `references`๋ฅผ ๋นผ๊ณ ์ง๋ฌธ์ผ๋ก ๋จ๊ธด๋ค |
|
|
627
|
+
| `INVALID_COLUMN_REFERENCE_KIND` | ์ธ๋ ํค๋ `db_table`๋ง ๊ฐ๋ฆฌํจ๋ค. ์ ์ฅ์๋ฅผ ๊ฐ๋ฆฌ์ผฐ์ผ๋ฉด ๊ทธ ์์ ํ
์ด๋ธ ๋
ธ๋๋ฅผ ๋๊ณ ๋ค์ ๊ฐ๋ฆฌํจ๋ค |
|
|
611
628
|
| `PROJECTION_SHAPE_FIELD` | ๋ชจ์์ ์ ๋ง๋ ํ๋๋ฅผ ๋บ๋ค. [์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์น๋๋ค](#์ง๋ฌธ๋ณ-๊ทธ๋ฆผ์-์น๋๋ค)์ ๋ชจ์๋ณ ์ค๋ช
์ ๋ณธ๋ค |
|
|
612
629
|
| `DUPLICATE_PHASE_ID` | ํ ๊ทธ๋ฆผ ์์์ ๊ตฌ๊ฐ id๊ฐ ๊ฒน์น๋ค. ๋ค์ ์ง๋๋ค |
|
|
613
630
|
| `PROJECTION_PHASE_MESSAGE_NOT_FOUND` | ๊ตฌ๊ฐ `from`์ด๋ `to`๋ฅผ ๊ทธ ๊ทธ๋ฆผ์ ๋ฉ์์ง id๋ก ๊ณ ์น๋ค. ๋ค๋ฅธ ๊ทธ๋ฆผ์ ๋ฉ์์ง๋ ๋ชป ๊ฐ๋ฆฌํจ๋ค |
|
|
@@ -653,7 +670,12 @@ render๋ validate๋ฅผ ๋ค์ ํ๊ณ ์ด์ ์คํ IR๊ณผ ๋ณํฉํด ๋
ธ๋ id๋ฅผ
|
|
|
653
670
|
- `sharedHtmlPath`: private ๊ทผ๊ฑฐ์ ์์น์ ์ธ์ฉ์ ๋นผ๊ณ ์ถ์ฒ ์ข
๋ฅ๋ง ๋จ๊ธด ๊ณต์ ์ฉ. ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋๊ธธ ๋๋ ์ด ํ์ผ๋ง ๋๊ธด๋ค
|
|
654
671
|
- `irPath`: ๋ค์ ์คํ์ ์ถ๋ฐ์
|
|
655
672
|
- `levels`: ๋๋ฆด๋ค์ด์ผ๋ก ๊ทธ๋ ธ์ ๋๋ง ์จ๋ค. ํญ๋ชฉ๋ง๋ค `id`, `title`, `nodes`, `edges`๊ฐ ์๋ค. `id`๋ `root`(์ ์ฒด), `service:<id>`, `feature:<id>`, `server:<id>`, `flow:<id>`, `group:<id>`, `view:<id>` ๊ผด์ด๋ค
|
|
656
|
-
- `viewPaths`: ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ด ์์ ๋๋ง ์จ๋ค. ๊ทธ๋ฆผ๋ง๋ค `.gestalt/architecture/views/<view>.<๊ทธ๋ฆผ id>.json`์ ๊ทธ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ฆฌํจ ๋
ธ๋, ์ฃ์ง, ์ง๋ฌธ๋ง ๋ฐ๋ก ์ ์ฅํ ๊ฒฝ๋ก๋ค. ๋ค๋ฅธ ์ธ์
์ด ์ง๋ฌธ ํ๋์ ๋ต๋ง ์ฝ์ด ๊ฐ ๋ ์ด ํ์ผ์ ๊ฑด๋จ๋ค
|
|
673
|
+
- `viewPaths`: ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ด ์์ ๋๋ง ์จ๋ค. ๊ทธ๋ฆผ๋ง๋ค `.gestalt/architecture/views/<view>.<๊ทธ๋ฆผ id>.json`์ ๊ทธ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ฆฌํจ ๋
ธ๋, ์ฃ์ง, ์ง๋ฌธ๋ง ๋ฐ๋ก ์ ์ฅํ ๊ฒฝ๋ก๋ค. lifecycle๊ณผ blueprint๋ ๊ฐ๋ฆฌํจ ํ๋ฆ(`flow`)์, er์ ์ธ๋ ํค ๋์ ํ
์ด๋ธ๊ณผ `auto:fk:` ์ง๋ฌธ์ ํจ๊ป ์ฃ๋๋ค. ๋ค๋ฅธ ์ธ์
์ด ์ง๋ฌธ ํ๋์ ๋ต๋ง ์ฝ์ด ๊ฐ ๋ ์ด ํ์ผ์ ๊ฑด๋จ๋ค
|
|
674
|
+
- `delta`: ์ด์ ์คํ๊ณผ ๋น๊ตํ ๊ฒฐ๊ณผ. ๋ ์จ๋ค. `status`๋ ๋ท ์ค ํ๋๋ค
|
|
675
|
+
- `no_previous`: ๋น๊ตํ ์ด์ ๊ทธ๋ฆผ์ด ์๋ค. ์ฒ์ ๊ทธ๋ ธ๊ฑฐ๋ ์ ์ฅ๋ ์ด์ ๊ทธ๋ฆผ์ ์ง๊ธ ๊ท์น์ผ๋ก ์ฝ์ง ๋ชปํ๋ค. ํ์ผ์ ์ ๋ง๋ ๋ค
|
|
676
|
+
- `unchanged`: ๊ทธ๋ ค์ง๋ ๋
ธ๋์ ์ฐ๊ฒฐ์ด ์ง๋๋ฒ๊ณผ ๊ฐ๋ค. ์ง๋ ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ ๊ทธ๋๋ก ๋๋ค
|
|
677
|
+
- `created`: ๋ฐ๋ ๊ฒ ์์ด `<view>.delta.html`(๋ณธ์ธ์ฉ)๊ณผ `<view>.delta.shared.html`(๊ณต์ ์ฉ)์ ์ผ๋ค. `htmlPath`, `sharedHtmlPath`, ๋ณ๊ฒฝ์ด๋ณ ๊ฑด์ `changes`๊ฐ ์จ๋ค. ๊ทธ๋ฆผ์ด ์ปค์ ๋ฐ๋ ๊ณณ๊ณผ ๋ฐ๋ก ์ด์๋ง ๊ทธ๋ ธ์ผ๋ฉด `scoped`๋ ์จ๋ค. `changes` ํค๋ `ADDED` ์๊น, `REMOVED` ๋น ์ง, `CHANGED` ๋ณ๊ฒฝ, `MOVED` ์ด๋, `REWIRED` ๋ค์ ์ด์์ด๋ค. ๊ทธ๋ฆผ ๋ฒ๋ก์ ๊ฐ์ ๋ง๋ก ๋ณด๊ณ ํ๋ค
|
|
678
|
+
- `failed`: ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ ๋ง๋ค๋ค ์คํจํ๋ค. ๋ณธ ๊ทธ๋ฆผ์ ์ด๋ฏธ ์ ์ฅ๋๊ณ `message`์ ์์ธ์ด ์จ๋ค. ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ ๊ฒฝ๋ก๋ ์ค์ง ์๋๋ค
|
|
657
679
|
|
|
658
680
|
๊ทธ๋ ค์ง `service` ๋
ธ๋๊ฐ ํ๋๋ผ๋ ์์ผ๋ฉด HTML ํ ์ฅ ์์ ๋ ๋ฒจ์ ๋๋ ๋ด๋๋ค. ์๋น์ค๊ฐ ์์ด๋ `service` ์๋ ํ๋ฆ์ด๋ ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ด ์์ผ๋ฉด, ๋๋ `infra`, `data`, `process` ํฉ ๋
ธ๋ ์ฌ์ด์ parent๊ฐ ์์ผ๋ฉด ๋ ๋ฒจ๋ก ๋๋๋ค. ๊ทธ ๋ฐ์๋ `levels` ์์ด ํ๋ฉด ๊ทธ๋ฆผ ํ ์ฅ์ด๋ค. deploy-path๋ ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์น์ง ์์ผ๋ฉด ๋ ํ๋ฉด์ด๋ค.
|
|
659
681
|
|
|
@@ -679,6 +701,10 @@ render๋ validate๋ฅผ ๋ค์ ํ๊ณ ์ด์ ์คํ IR๊ณผ ๋ณํฉํด ๋
ธ๋ id๋ฅผ
|
|
|
679
701
|
|
|
680
702
|
Step 4.5์์ ํด๋ผ์ฐ๋๋ฅผ ์กฐํํ์ผ๋ฉด ์ด๋ ํ๋กํ๋ก ์ธ์ ์กฐํํ๋์ง ์ ๋๋ค. ๋ง๋ฃ๋ก ์กฐํ๋ฅผ ๋ชป ํ์ผ๋ฉด "์ฌ๋ก๊ทธ์ธ ํ์"์ ๋ณด์ฌ์ค ๋ก๊ทธ์ธ ๋ช
๋ น ๋ชจ์์ ์ ๋๋ค. ๊ณ์ ID๋ ๋ณด๊ณ ์ ์ ์ด๋ ๋์ง๋ง ๊ณต์ ๋ณธ์ด๋ ์ปค๋ฐํ ํ์ผ์๋ ์ฎ๊ธฐ์ง ์๋๋ค.
|
|
681
703
|
|
|
704
|
+
**๊ตฌ์กฐ ๋ณ๊ฒฝ์ `delta.status`๋๋ก ์๋ฆฐ๋ค.** `created`๋ฉด ๋ฐ๋ ๊ฑด์๋ฅผ ๋ณ๊ฒฝ์ด๋ณ๋ก ํ ์ค์ ์ ๊ณ ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ ๊ฒฝ๋ก๋ฅผ ์ค๋ค (์: "์ง๋๋ฒ๋ณด๋ค ์๊น 2, ๋น ์ง 1, ๋ค์ ์ด์ 1. ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ `.gestalt/architecture/screen-chain.delta.html`"). ์ด ๊ทธ๋ฆผ์ ์ด์ ๊ณผ ์ด๋ฒ์ ๊ฐ์ ์ขํ์ ๋๋ํ ๋๊ณ ๊ฐ์ด๋ฐ ๋ณ๊ฒฝ ๋ชฉ๋ก์ ๋๋ค. ๊ณต์ ํ ๋๋ `.delta.shared.html`์ ๋๊ธด๋ค. `scoped`๊ฐ ์ค๋ฉด ์ ์ฒด ๋ช ๊ฐ ์ค ๋ช ๊ฐ๋ง ๊ทธ๋ ธ๋์ง ๋ง๋ถ์ธ๋ค. `unchanged`๋ฉด "์ง๋๋ฒ๊ณผ ๊ตฌ์กฐ๊ฐ ๊ฐ๋ค" ํ ์ค์ด๋ฉด ๋๋ค. `no_previous`๋ ๋ฐ๋ก ์๋ฆฌ์ง ์๋๋ค. ์ฒ์ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ์ด๋ฉด ๋น์ฐํ ๊ฒฐ๊ณผ๋ค. `failed`๋ฉด ๋ณธ ๊ทธ๋ฆผ์ ์ ์์ผ๋ก ๋ณด๊ณ ํ๊ณ "๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ์ ๋ชป ๋ง๋ค์๋ค"์ `message`๋ฅผ ํ ์ค๋ก ๋ง๋ถ์ธ๋ค. ๋์คํฌ์ ๋จ์ ๊ตฌ์กฐ ๋ณ๊ฒฝ ํ์ผ์ ์ด๋ฒ ๊ฒฐ๊ณผ์ฒ๋ผ ๊ฑด๋ค์ง ์๋๋ค.
|
|
705
|
+
|
|
706
|
+
`warnings`์ `DELTA_OVER_BUDGET`์ด ์ค๋ฉด ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ทธ๋ฆผ ํ ์ฅ์ ๋ด๊ธฐ์ ๋ณ๊ฒฝ์ด ๋ง๋ค๋ ๋ป์ด๋ค. ๊ทธ๋ฆผ์ ๊ทธ๋๋ก ์ผ๋ค. ๋ฐ๋ ์์ญ์ ๋๋ ๋จ๊ณ๋ณ๋ก ๋ค์ ๊ทธ๋ฆฌ๊ธฐ๋ฅผ ๊ถํ๋ค.
|
|
707
|
+
|
|
682
708
|
Step 5์์ ๋ ํฌ๋ฅผ ์๋ก ๋ฐ์์ผ๋ฉด ๋ฌด์์ ์ด๋์ ๋ฐ์๋์ง ํ ์ค๋ก ๋ง๋ถ์ธ๋ค (์: "`org/api-server`๋ฅผ `~/.gestalt/architecture/clones/github.com/org/api-server`์ ๋ฐ์๋ค").
|
|
683
709
|
|
|
684
710
|
## Step 9 โ ์ฌ์คํ
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
- **์กฐ๊ฑด์ ๋ฐ๋ผ ๊ธธ์ด ๋๋๋ ์๋ฆฌ๋ ๊ฐ๋ฆผ๊ธธ ๋จ๊ณ๋ก ์ ๋๋ค.** `"kind": "decision"`์ ๋ฌ๋ฉด ์นด๋ ๋์ ๋ง๋ฆ๋ชจ๋ก ๊ทธ๋ ค์ง๋ค. ๋จ๊ณ ์ด๋ฆ์ `ํ์ ์ํ ํฌํจ?`์ฒ๋ผ ๋ฌป๋ ๊ผด๋ก ์ฐ๊ณ ๋๊ฐ๋ ์ ์ด๋ง๋ค `condition`์ ๋จ๋ค (`์`, `์๋์ค`). ๊ฐ์ ๋์ด์ ์นด๋๋ก ๊ฐ๋ ๊ธธ์ ์ค๋ฅธ์ชฝ ๊ผญ์ง์ ์์, ์์๋๋ก ๋ค๋ฅธ ๋์ด์ ์นด๋๋ก ๊ฐ๋ ๊ธธ์ ์๋ ์๋ ๊ผญ์ง์ ์์ ๋๊ฐ๋ค. ๊ฐ๋ฆผ๊ธธ์ ํ๋ฆ์ด ๋๋๋ ์๋ฆฌ๊ฐ ์๋๋ผ์ `terminal: true`๋ฅผ ํจ๊ป ๋ฌ๋ฉด ์คํค๋ง ์๋ฐ์ด๋ค. validate๋ ๋๊ฐ๋ ๊ธธ์ด ํ๋๋ฟ์ธ ๊ฐ๋ฆผ๊ธธ์ `auto:branch`๋ฅผ, ๊ทผ๊ฑฐ๋ ์๋๋ฐ `condition`๋ `label`๋ ์๋ ๋๊ฐ๋ ์ ์ด์ `auto:condition` ์ง๋ฌธ์ ๋จ๊ธด๋ค.
|
|
29
29
|
- **๋๋๋ฆฌ๊ธฐ์ ์ ์ ์ ๋จ๊ณ๊ฐ ์๋๋ผ ์ ์ด๋ก ์ ๋๋ค.** ์ ์ํ๊ฐ ์๊ธฐ์ง ์๊ณ ์ ์ํ๋ก ๋์๊ฐ๊ธฐ๋ง ํด์๋ค. "๋๋๋ฆฌ๊ธฐ" ์นด๋๋ฅผ ๋ฐ๋ก ๋ง๋ค์ง ๋ง๊ณ `๋งค์ฅ ์ทจ์ โ ํธ์ถ`์ฒ๋ผ ๋์๊ฐ๋ ํ์ดํ ํ๋๋ก ์ด๋ค. ๋๋ฅธ ๊ฒ๊ณผ ์กฐ๊ฑด์ ๋๋ ์ ๋๋ค (`"trigger": "๋๋๋ฆฌ๊ธฐ", "condition": "30๋ถ ์ด๋ด"`). ๊ทธ๋ฆผ์์๋ ๋ ์นด๋ ๊ฐ๊น์ด๋ก ์ง๋๊ฐ๋ ๋ฅ๊ทผ ์ ์ โฉ ํ์๊ฐ ๋ถ๋๋ค.
|
|
30
30
|
- **ํ๋ฆ์ด ๋๋๋ ๋จ๊ณ์๋ `"terminal": true`๋ฅผ ๋จ๋ค.** ์ฐฉ์, ์ทจ์, ๋ง๋ฃ์ฒ๋ผ ๋ ๊ฐ ๊ณณ์ด ์๋ ๋จ๊ณ๋ค. ๋๊ฐ๋ ์ ์ด๊ฐ ์๋๋ฐ ์ด ํ์๋ ์์ผ๋ฉด validate๊ฐ `auto:dead-end` ์ง๋ฌธ์ ๋จ๊ธด๋ค. ๋ฏธ๋ฃจ๊ธฐ์ฒ๋ผ ๋ค์ ์ค๋ก ๋์๊ฐ๋ ๋จ๊ณ๊ฐ ์ ์ ๋น ๋จ๋ ธ์ ๋ ๊ทธ๋ฆผ์ด ๊ฑฐ๊ธฐ์ ๋๋ ๊ฒ์ฒ๋ผ ์ฝํ๋ ๊ฑธ ๋ง์ผ๋ ค๋ ํ์๋ค. ๊ทธ ์ง๋ฌธ์ด ๋จ๋ฉด ๋ ๋จ๊ณ๋ก ํ์ํ๊ธฐ ์ ์ ์ด์ด์ง๋ ์ ์ด๋ฅผ ์ฝ๋์์ ๋จผ์ ์ฐพ๋๋ค. ๋๋๋ฆด ์ ์๋ ์ทจ์์ฒ๋ผ ๋ ๋จ๊ณ์์ ๋๊ฐ๋ ์ ์ด๊ฐ ์์ด๋ ๋๋ค.
|
|
31
|
+
- **๋ ๋จ๊ณ์๋ ์ด๋ป๊ฒ ๋๋ฌ๋์ง๋ฅผ `outcome`์ผ๋ก ๋จ๋ค.** ์ ์ ์๋ฃ๋ `done`, ์ฌ์ฉ์๋ ๋งค์ฅ์ด ๊ทธ๋ง๋ ๊ฑด `cancel`, ๋ง๋ฃ๋ ์ค๋ฅ๋ก ๋๋ ๊ฑด `fail`์ด๋ค. `terminal: true` ์์ด `outcome`๋ง ๋ฌ๋ฉด ์คํค๋ง ์๋ฐ์ด๋ค. ํ๋ฆ ๊ทธ๋ฆผ์ ์ด ๊ฐ์ ์ ์ฐ๊ณ [lifecycle ์ง๋ฌธ๋ณ ๊ทธ๋ฆผ](./projections.md)์ด ๋ ์ํ ์นด๋ ๋ฐฐ์ง๋ก ์ด๋ค. ์ํ ํ๋ฆ ๊ทธ๋ฆผ์ ์น์ ๊ฑฐ๋ฉด ๋ ๋จ๊ณ์๋ `state`๋ฅผ ๋จ๋ค.
|
|
31
32
|
- **์ ์ ๋ ๊ฐ๋ค.** ์๋ ๋
ธ์ผ๋ฅผ ์ฐฉ์์ผ๋ก ๊ณ ์น๋ "๋
ธ์ผ ์ ์ "์ `์๋ ๋
ธ์ผ โ ์ฐฉ์` ์ ์ด์ `actors: ["ops"]`๋ค. ์ค๋ช
์ ๊ฐ ์ ์๋ ๊ณณ์ด ์ฌ๋ฟ ์ ํ ์์ผ๋ฉด (์ฐฉ์์ด๋ ๊ณ ๊ฐ ์ทจ์) ์ ์ด๋ ๊ทธ๋งํผ ๊ธ๋๋ค. validate๊ฐ ์ด๋ฐ ๋จ๊ณ๋ฅผ ์ฐพ์ `auto:as-transition` ์ง๋ฌธ์ ๋จ๊ธด๋ค. ๊ฒฐ์ ์ฒ๋ผ ํ๋ฉด์ด ๋ฐ๋ก ์์ด `refs`๋ก ๊ฑด๋๊ฐ ์ผ์ด ์๋ ๋จ๊ณ๋ ์นด๋๋ก ๋ฌ๋ ๋๋ค.
|
|
32
33
|
- **ํ์์๊ฐ ํ ๋ช
์ด์ด๋ ๋๋ค.** ์๋ ํผ์ ํ๋ฉด์ ๋๊ธฐ๋ ํ๋ฆ์ด๋ฉด `actors`์ ํ๋๋ง ์ ๋๋ค. ๊ทธ๋๋ ์ค์ ๊ฐ๋ฅผ ์ผ์ด ์์ด ์ผ์ชฝ ํ์์ ๋จธ๋ฆฌ ์นธ์ ๊ฑท๊ณ ๊ทธ๋ฆผ ๋งจ ์ ๋ ์ ํ์์ ์นฉ ํ๋๋ง ์ธ์ด๋ค.
|
|
33
34
|
- **์ฌ๋ฌ ํ์์๊ฐ ํ ์ ์๋ ์ ์ด์๋ `actors`๋ฅผ ๋จ๋ค.** ๋๋๋ฆฌ๊ธฐ๋ฅผ ์๋๋ ๋งค์ฅ๋ ํ ์ ์์ผ๋ฉด `"actors": ["guest", "staff"]`๋ค. ์ ๊ธ์ ์์ ํ์์ ์ด๋ฆ์ด ๋ถ๋๋ค. ํ์์ ์ค์ ๊ทธ ์ฌ๋์ด ํ๋ ์ผ์ ๋๋ ์๋ฆฌ๋ผ, ์ฌ๋ฟ์ด ํ๋ ๋์์ ํ ์ค์ ๋จ๊ณ๋ก ๋ฃ์ผ๋ฉด ํ๋ฆฐ ๊ทธ๋ฆผ์ด ๋๋ค.
|
|
@@ -27,5 +27,61 @@
|
|
|
27
27
|
- ์ ์ ์ผ๋ฉด render๊ฐ ์์์ ์๋ฅธ๋ค. ๋งจ ์ ์ฐธ์ฌ์๊ฐ ์ง๊ธ ๊ตฌ๊ฐ์์ ์ฒ์ ๋ง๋๋ ๋์์ ๋ถ๋ฅด๋ ์๋ฆฌ์์ ์ ๊ตฌ๊ฐ์ด ์ด๋ฆฌ๊ณ ๊ตฌ๊ฐ ์ด๋ฆ์ ๊ทธ ๋์์ ํ์ ์ด๋ฆ์ด๋ค. ๊ทธ๋์ ๋ชจ๋ ํธ์ถ์ด ํ ์ง์
์ ์ ๊ฑฐ์น๋ ํ๋ฆ์ ๊ตฌ๊ฐ ํ๋๋ก ๋ญ์น๋ค. ์ธ์
๋ชจ๋ธ์ด๋ ์คํฌ ํ๋๊ฐ ๋ชจ๋ ํธ์ถ์ ๋ด๋ณด๋ด๋ ํ๋ค์ค ์์๋๊ฐ ๊ทธ๋ ๋ค. ๊ฐ์ ๋์์ ์ฌ๋ฌ ๋ฒ ์ค๊ฐ๋ ํ๋ฆ์ ๊ฐ์ ์ด๋ฆ ๊ตฌ๊ฐ์ด ๋ํ์ด๋๋ค. ์ด๋ฐ ํ๋ฆ๊ณผ ์ฐธ์ฌ์๊ฐ ๋ง์ ์์๋์๋ `phases`๋ฅผ ์ ๋๋ค.
|
|
28
28
|
- **dataflow**: `messages`๋ง ์ด๋ค. ๋ฐ์ดํฐ๊ฐ ํ ๋
ธ๋์์ ๋ค๋ฅธ ๋
ธ๋๋ก ์ฎ๊ฒจ ๊ฐ๋ ๊ฒ ํ๋๊ฐ ๋ฉ์์ง ํ๋๋ค. `blocks`์ ๋ฉ์์ง์ `reply`, `block`, `branch`๋ ์ฐ์ง ์๋๋ค.
|
|
29
29
|
- **compare**: `messages`๋ ๋น ๋ฐฐ์ด๋ก ๋๊ณ `sides`์ ๊ฒฌ์ค ๋ ๋ฌถ์์ ์ ๋๋ค. `{ id, label, nodes[] }` ๋์ด๊ณ id๋ ๋ฌ๋ผ์ผ ํ๋ค. ๊ทธ๋ฆผ์ "์ฒซ ๋ฌถ์์๋ง", "๋ ๋ค", "๋์งธ ๋ฌถ์์๋ง" ์ธ ์ด๋ก ์ ๋ค.
|
|
30
|
+
- **lifecycle**: `messages`๋ ๋น ๋ฐฐ์ด๋ก ๋๊ณ `flow`์ `flows`์ ํ๋ฆ id ํ๋๋ฅผ ์ ๋๋ค. `participants`, `blocks`, `phases`, `sides`๋ ์ฐ์ง ์๋๋ค. ํ๋ฆ ๋จ๊ณ์ `state`๋ฅผ ์ํ ํ๋์ฉ์ผ๋ก ๋ชจ์ ๋ค์ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ์ด๋ผ ์๋ก ์ ์ ์ฌ์ค์ ์๋ค.
|
|
31
|
+
|
|
32
|
+
```json
|
|
33
|
+
{ "id": "queue-life", "shape": "lifecycle", "title": "์ค์๊ธฐ ์ํ",
|
|
34
|
+
"question": "์ค์๊ธฐ ํญ๋ชฉ์ ์ด๋ค ์ํ๋ฅผ ๊ฑฐ์น๋์?", "messages": [], "flow": "queue" }
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
- ์ํ ์นด๋๋ ์ธ ๋ ์ ์ ๋ค. `main` ๊ธธ์ ์ํ๋ ๋งจ ์ **์งํ ๋จ๊ณ**, `side` ๊ธธ์์๋ง ๋ฟ๋ ์ํ๋ ๊ฐ์ด๋ฐ **๋๊ธฐ์ ๋ณต๊ตฌ**, ๋ ๋จ๊ณ(`terminal: true`)์ ์ํ๋ ๋งจ ์๋ **๋ ์ํ**๋ค. ์ ์ ํ๋ฆ์ด ๋๋๋ ์ํ(`main`์ ์๊ณ `outcome`์ด ์๊ฑฐ๋ `done`)๋ ์งํ ๋จ๊ณ ๋ ๋์ ๋จ๋๋ค.
|
|
38
|
+
- `state`๊ฐ ์๋ ๋จ๊ณ๋ ๊ทธ๋ฆฌ์ง ์๊ณ ์ง๋๊ฐ๋ค. ๊ทธ ๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ ์ ์ด๋ ์๋ค ์ํ๋ฅผ ์๋ ์ ํ๋๋ก ํฉ์ณ์ง๋ค. ๊ทธ๋์ ๋ ๋จ๊ณ์๋ `state`๋ฅผ ๋ฌ์์ผ ๋ ์ํ ์นด๋๊ฐ ์ ๋ค. ๊ฐ์ ์ํ ์์์ ์์ผ๋ก๋ง ๊ฐ๋ ์ ์ด๋ ๋น ์ง๊ณ ๊ฐ์ ์ํ๋ก ๋๋์์ค๋ ์ ์ด๋ง ์๊ธฐ ๊ณ ๋ฆฌ๋ก ๋จ๋๋ค.
|
|
39
|
+
- ์ ๊ธ์๋ ํฉ์ณ์ง ์ ์ด๋ง๋ค `condition`๊ณผ `trigger`๋ฅผ, ๋ ๋ค ์์ผ๋ฉด `label`์ ๊บผ๋ด ์ผํ๋ก ์๋๋ค. ํ๋๋ ์์ผ๋ฉด ๋์ฐฉ ๋จ๊ณ ์ด๋ฆ์ ํ๋ฆฐ ๊ธฐ์ธ์๊ผด๋ก ๋น๋ ค ์ด๋ค. ๋๋์๊ฐ๋ ์ ์๋ โฉ๊ฐ ๋ถ๋๋ค.
|
|
40
|
+
- ๋ ๋จ๊ณ์ `outcome`์ ๋ฌ๋ฉด ๋ ์ํ ์นด๋์ ๋ฐฐ์ง๊ฐ ๋ถ๋๋ค. `done`์ ์๋ฃ, `cancel`์ ์ทจ์, `fail`์ ์คํจ๋ค. ์ ๋ฌ๋ฉด "๋"์ด๋ค. `outcome`์ ๋ ๋จ๊ณ์๋ง ๋จ๋ค.
|
|
41
|
+
- ํ ์ฅ์ ์ฝํ๋ ์์ ์งํ ๋จ๊ณ 5๊ฐ, ๋๊ธฐ์ ๋ณต๊ตฌ 2๊ฐ, ๋ ์ํ 2๊ฐ, ์ํ ์ ์ฒด 9๊ฐ, ์ ์ด 10๊ฐ๋ค. ๋์ด๋ ๊ทธ๋ฆฌ์ง๋ง validate๊ฐ `LIFECYCLE_OVER_BUDGET` ๊ฒฝ๊ณ ๋ฅผ ๋ธ๋ค. ์ธ๋ถ ์ํ๋ฅผ ํฉ์น๊ฑฐ๋ ํ๋ฆ์ ๋๋๋ค.
|
|
42
|
+
- **blueprint**: `messages`๋ ๋น ๋ฐฐ์ด๋ก ๋๊ณ `flow`์ `flows`์ ํ๋ฆ id ํ๋๋ฅผ ์ ๋๋ค. `participants`, `blocks`, `phases`, `sides`๋ ์ฐ์ง ์๋๋ค. ํ๋ฆ ๋จ๊ณ์ ์ง๋์ ์ด๋ฏธ ์ ์ ์ฌ์ค์ ์ธต์ผ๋ก ๋ค์ ๋๋ ๊ทธ๋ฆผ์ด๋ผ ์๋ก ์ ์ ์ฌ์ค์ ์๋ค.
|
|
43
|
+
|
|
44
|
+
```json
|
|
45
|
+
{ "id": "queue-bp", "shape": "blueprint", "title": "์ค์๊ธฐ ๋ธ๋ฃจํ๋ฆฐํธ",
|
|
46
|
+
"question": "์๋์ด ์ค์ ์๋ ๋์ ๋ค์์๋ ๋ฌด์์ด ์ผํ๋์?", "messages": [], "flow": "queue" }
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
- ์ด์ `main` ๊ธธ์ ๋จ๊ณ๋ค. ํ๋ฆ ๊ทธ๋ฆผ์์ ๊ฐ์ ์ด์ ์๋ ๋จ๊ณ๋ ํ ์ด๋ก ๋ฌถ์ด๊ณ ๊ฐ๋ฆผ๊ธธ(`kind: "decision"`)๊ณผ `side` ๊ธธ ๋จ๊ณ๋ ๋น ์ง๋ค. ์ด ๋จธ๋ฆฌ๋ ๊ทธ ์ด ๋จ๊ณ์ `state` ์ด๋ฆ์ด๊ณ ์์ผ๋ฉด ์ฒซ ๋จ๊ณ ์ด๋ฆ์ด๋ค.
|
|
50
|
+
- ์ธต์ ์์์ ์๋๋ก **๊ณ ๊ฐ ํ๋**, **ํ๋ก ํธ์คํ
์ด์ง**, **๊ฐ์์ **, **๋ฐฑ์คํ
์ด์ง**, **์ง์**์ด๋ค. ํ๋ฆ์ ์ฒซ `person` ํ์์๊ฐ ๊ณ ๊ฐ์ด๋ผ ๊ทธ ๋จ๊ณ๋ ๊ณ ๊ฐ ํ๋์ ์ ๋ค. ๋ค๋ฅธ ์ฌ๋์ ๋จ๊ณ๋ ํ๋ก ํธ์คํ
์ด์ง, ์์คํ
๊ณผ ์์ด์ ํธ์ ๋จ๊ณ๋ ๋ฐฑ์คํ
์ด์ง๋ค.
|
|
51
|
+
- ๋จ๊ณ `refs`๊ฐ ์นธ์ ์ฑ์ด๋ค. ํ๋ฉด๊ณผ ์คํฌ์ ํ๋ก ํธ์คํ
์ด์ง, API์ MCP ๋๊ตฌ๋ ๋ฐฑ์คํ
์ด์ง์ ์ ๋ค. ํ๋ก ํธ์คํ
์ด์ง ํ๋ฉด๊ณผ ์คํฌ์ด `calls`๋ก ๋ถ๋ฅด๋ API๋ ๋ฐฑ์คํ
์ด์ง์ ๋ํ๋ค. ๋ฐฑ์คํ
์ด์ง API๋ฅผ ์ฒ๋ฆฌํ๋ ๋ชจ๋์ด ๋ฟ๋ ํ
์ด๋ธ, ์ ์ฅ์, ์ธ๋ถ ์๋น์ค, ํ, ์ก์ ์ง์์ ์ ๋ค.
|
|
52
|
+
- ๊ทผ๊ฑฐ ์๋ ์ฃ์ง๋ ๋ฐ๋ผ๊ฐ์ง ์๋๋ค. ์ฐ๊ฒฐ์ด ์ ๋ณด์ด๋ ์นธ์ ์ง์ด๋ด์ง ์๊ณ `โ`๋ก ๋น์ด๋ค. ์นธ์ ์ฑ์ฐ๊ณ ์ถ์ผ๋ฉด ๋จ๊ณ์ `refs`๋ฅผ ๋ฌ๊ฑฐ๋ ์ง๋์ ๊ทผ๊ฑฐ์ ํจ๊ป ์ฃ์ง๋ฅผ ๋ฃ๋๋ค. ์ธต ์ฌ์ด์ ์ ์ ๊ธ์ง ์๋๋ค.
|
|
53
|
+
- ์นธ ํ๋์ ์นด๋๋ ์
๊น์ง๋ค. ๋๋จธ์ง๋ "+N"์ผ๋ก ์ ๊ณ ์ด๋ฆ์ ํดํ์ ์๋ค. ๋ฌธ์๋ก๋ง ๋ฟ์ ์นด๋๋ ํ
๋๋ฆฌ๊ฐ ์ ์ ์ด๋ค.
|
|
54
|
+
- ํ ์ฅ์ ์ฝํ๋ ์์ ๋จ๊ณ 6์ด์ด๋ค. ๋์ด๋ ๊ทธ๋ฆฌ์ง๋ง validate๊ฐ `BLUEPRINT_OVER_BUDGET` ๊ฒฝ๊ณ ๋ฅผ ๋ธ๋ค. ๊ฐ์ ํ๋ฉด์์ ์ด์ด์ง๋ ๋จ๊ณ๋ฅผ ํฉ์น๊ฑฐ๋ ํ๋ฆ์ ๋๋๋ค.
|
|
55
|
+
- **er**: `messages`๋ ๋น ๋ฐฐ์ด๋ก ๋๊ณ `participants`์ ๊ทธ๋ฆด `db_table` id๋ฅผ ์ ๋๋ค. `blocks`, `phases`, `sides`, `flow`๋ ์ฐ์ง ์๋๋ค. ์ ์ ํ
์ด๋ธ ๋
ธ๋ `columns`์ `references`์์ ๋์จ๋ค. ๊ทธ๋์ ๊ทธ๋ฆผ์ ์น๊ธฐ ์ ์ ํ
์ด๋ธ๋ง๋ค `columns`๋ถํฐ ์ฑ์ด๋ค.
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{ "id": "order-schema", "shape": "er", "title": "์ฃผ๋ฌธ ํ
์ด๋ธ ๊ตฌ์กฐ",
|
|
59
|
+
"question": "์ฃผ๋ฌธ์ ์ง์ฐ๋ฉด ์ด๋ค ํ์ด ๊ฐ์ด ์ง์์ง๋์?",
|
|
60
|
+
"participants": ["tbl:users", "tbl:orders", "tbl:order-items"], "messages": [] }
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
```json
|
|
64
|
+
{ "id": "tbl:orders", "kind": "db_table", "label": "orders", "parent": "ds:main", "repo": "api",
|
|
65
|
+
"evidence": [{ "type": "code", "location": "api:db/migrations/003_orders.sql:1", "visibility": "public" }],
|
|
66
|
+
"columns": [
|
|
67
|
+
{ "name": "id", "type": "uuid", "pk": true },
|
|
68
|
+
{ "name": "user_id", "type": "uuid",
|
|
69
|
+
"references": { "table": "tbl:users", "column": "id", "onDelete": "CASCADE" },
|
|
70
|
+
"evidence": [{ "type": "code", "location": "api:db/migrations/003_orders.sql:4", "visibility": "public" }] }
|
|
71
|
+
] }
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
- ์ปฌ๋ผ์ ๋ง์ด๊ทธ๋ ์ด์
ํ์ผ, ORM ์ํฐํฐ, ์คํค๋ง ๋คํ์์ ์ฝ๋๋ค. ์ฌ๋ฌ ๊ณณ์ด ๋ค๋ฅด๋ฉด ๋ง์ด๊ทธ๋ ์ด์
์ ๋ฐ๋ฅธ๋ค. ์ค์ ๋ก DB์ ๋ค์ด๊ฐ ์์๊ฐ ๊ฑฐ๊ธฐ ์์ด์๋ค.
|
|
75
|
+
- ํ
์ด๋ธ ์์์๋ ์ปฌ๋ผ์ด ํ ํ๋์ฉ ์๊ณ PK, FK, UQ, NULL ๋ฐฐ์ง๊ฐ ๋ถ๋๋ค. ํ
์ด๋ธ ํ๋์ 8ํ๊น์ง ๋ณด์ด๊ณ ๋๋จธ์ง๋ "์ปฌ๋ผ N๊ฐ ๋" ํ ํ์ผ๋ก ์ ๋๋ค. PK์ ์ ์ด ๋ถ๋ ์ปฌ๋ผ์ด ๋จผ์ ๋จ๋๋ค.
|
|
76
|
+
- ์ธ๋ ํค ์ ์ ์ถ๋ฐ ์ปฌ๋ผ ํ์์ ๋์ ์ปฌ๋ผ ํ์ผ๋ก ๊ฐ๋ค. ์ปฌ๋ผ `evidence`์ code๋ spec์ด ์์ผ๋ฉด ์ค์ , ๋ฌธ์ ๊ทผ๊ฑฐ๋ฟ์ด๋ฉด ์ ์ ์ด๋ค. ๊ทผ๊ฑฐ๊ฐ ์์ผ๋ฉด ์ ์ ๊ธ์ง ์๊ณ ๋ฐฐ์ง๊ฐ `FK?`๋ก ์๋ฉฐ `auto:fk:<ํ
์ด๋ธ id>:<์ปฌ๋ผ>` ์ง๋ฌธ์ด ์๊ธด๋ค. ์ด๋ฆ์ด `_id`๋ก ๋๋๋ค๊ณ ์ง์ํด ์์ง ์๋๋ค.
|
|
77
|
+
- `onDelete`๋ ๊ทผ๊ฑฐ๊ฐ ์๋ ์ธ๋ ํค์์๋ง ์ ์์ `ON DELETE โฆ`๋ก ๋ณด์ธ๋ค. ๋ช ๋ ๋ช์ธ์ง๋ ๊ทธ๋ฆฌ์ง ์๋๋ค. ์ปฌ๋ผ ์ ์๋ง์ผ๋ก๋ ํ์คํ ์ ์ ์์ด์๋ค.
|
|
78
|
+
- `participants`์ ์๋ ํ
์ด๋ธ์ ๊ฐ๋ฆฌํค๋ ์ธ๋ ํค๋ ์ ์์ด FK ๋ฐฐ์ง๋ง ๋จ๋๋ค. ๊ทธ ํ
์ด๋ธ์ด ์ง๋ฌธ์ ํ์ํ๋ฉด `participants`์ ๋ํ๋ค.
|
|
79
|
+
- ํ ์ฅ์ ์ฝํ๋ ์์ ํ
์ด๋ธ 5๊ฐ, ํ ํ
์ด๋ธ์ ์ปฌ๋ผ 8๊ฐ, ์ธ๋ ํค ์ 6๊ฐ๋ค. ๋์ด๋ ๊ทธ๋ฆฌ์ง๋ง validate๊ฐ `ER_OVER_BUDGET` ๊ฒฝ๊ณ ๋ฅผ ๋ธ๋ค. ์ง๋ฌธ์ ๊ฑธ๋ฆฐ ํ
์ด๋ธ๋ง ๋จ๊ธฐ๊ฑฐ๋ ๊ทธ๋ฆผ์ ๋๋๋ค.
|
|
80
|
+
- **ํ๋ฆ ๊ทธ๋ฆผ, lifecycle, sequence ๊ณ ๋ฅด๊ธฐ**: ์
๋ค "์ด๋ป๊ฒ ์งํ๋๋"์ ๋ตํ์ง๋ง ๋ฌป๋ ๊ธฐ์ค์ด ๋ค๋ฅด๋ค.
|
|
81
|
+
- "๋๊ฐ ๋ฌด์์ ํ๋"๋ฉด ํ๋ฆ ๊ทธ๋ฆผ์ด๋ค. ํ์์ ์ค๋ง๋ค ๋จ๊ณ๊ฐ ๋์ฌ ์ฌ๋๊ณผ ์์คํ
์ด ์ผ์ ์ฃผ๊ณ ๋ฐ๋ ์๋ฆฌ๊ฐ ๋ณด์ธ๋ค. `flows`๋ง ์ฐ๋ฉด ๋๋ค.
|
|
82
|
+
- "์ด ๋์์ด ์ด๋ค ์ํ๋ฅผ ๊ฑฐ์ณ ์ด๋์ ๋๋๋"๋ฉด lifecycle์ด๋ค. ํ์์๋ฅผ ๊ฑท๊ณ ์ํ๋ง ๋จ๊ฒจ ๋๊ธฐ, ์ฌ์๋, ์ทจ์, ์คํจ๊ฐ ์ ์ ํ๋ฆ๊ณผ ์ด๋ป๊ฒ ๊ฐ๋ฆฌ๋์ง ํ๋์ ๋ณด์ธ๋ค. ์ํ๊ฐ ์
์ดํ๋ฉด ํ๋ฆ ๊ทธ๋ฆผ ์์ชฝ ์ํ ๊ตฌ๊ฐ์ผ๋ก ์ถฉ๋ถํ๋ ์น์ง ์๋๋ค.
|
|
83
|
+
- "์ด๋ ๋ชจ๋์ด ๋ฌด์์ ์ด๋ค ์์๋ก ๋ถ๋ฅด๋"๋ฉด sequence๋ค. ์ค๊ฑฐ๋ฆฌ๊ฐ ํธ์ถ๊ณผ ์๋ต์ด๋ค.
|
|
84
|
+
- **blueprint, dataflow, sequence ๊ณ ๋ฅด๊ธฐ**: "๊ณ ๊ฐ์ด ํ ๊ฑธ์ ๊ฐ ๋ ํ๋ฉด ๋ค์์ ๋ฌด์์ด ์ผํ๋"๋ฉด blueprint๋ค. ๊ณ ๊ฐ ๋จ๊ณ๊ฐ ์ด์ด๋ผ ๋จ๊ณ๋ง๋ค ๋ณด์ด๋ ์ชฝ๊ณผ ์ ๋ณด์ด๋ ์ชฝ์ด ํจ๊ป ์ฝํ๋ค. ๋ฐ์ดํฐ๊ฐ ์ด๋์ ์์ ์ด๋๋ก ๊ฐ๋์ง๋ฉด dataflow์ด๊ณ ๋๊ฐ ๋๊ตฌ๋ฅผ ์ด๋ค ์์๋ก ๋ถ๋ฅด๋์ง๋ฉด sequence๋ค. ๋์ ์ ์ ๋ฐ๋ผ ์ฝ๋ ๊ทธ๋ฆผ์ด๊ณ blueprint๋ ์นธ์ ์ฝ๋ ๊ทธ๋ฆผ์ด๋ค.
|
|
85
|
+
- **er, dataflow ๊ณ ๋ฅด๊ธฐ**: "์ด๋ค ํ
์ด๋ธ์ด ์ด๋ค ์ปฌ๋ผ์ผ๋ก ์๋ก๋ฅผ ๊ฐ๋ฆฌํค๋", "์ด๊ฑธ ์ง์ฐ๋ฉด ๋ฌด์์ด ๊ฐ์ด ์ง์์ง๋"๋ฉด er์ด๋ค. ํ
์ด๋ธ ์์ชฝ ๊ตฌ์กฐ์ ์ธ๋ ํค๊ฐ ์ค๊ฑฐ๋ฆฌ๋ค. "๋ฐ์ดํฐ๊ฐ ์ด๋ ๋ชจ๋์ ๊ฑฐ์ณ ์ด๋ ํ
์ด๋ธ์ ์์ด๋"๋ฉด dataflow๋ค. ์ฝ๋๊ฐ ํ
์ด๋ธ์ ์ฝ๊ณ ์ฐ๋ ๊ธธ์ ๋ฐ๋ผ๊ฐ๋ ๊ทธ๋ฆผ์ด๋ผ ์ปฌ๋ผ์ ์ ๋์จ๋ค.
|
|
30
86
|
- ์ง๋ฌธ ํ๋์ ๊ทธ๋ฆผ ํ๋๋ค. ์ง๋ฌธ์ด ์ฌ๋ฟ์ด๋ฉด ๊ทธ๋ฆผ๋ ์ฌ๋ฟ ๋จ๋ค.
|
|
31
87
|
- ํ๋ค์ค ๋ ํฌ๋ ๋ฌป์ง ์์๋ ์ง์
๊ฒฝ๋ก๋ง๋ค ์์๋๋ฅผ ํ๋์ฉ ์น๋๋ค. ์์ธํ ๊ฑด [Step 3.5](../SKILL.md#step-35--๋๋ฉ์ธ-ํ๋ฆ)์ ํ๋ค์ค ํ๋ฆ ํญ๋ชฉ์ ์๋ค.
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
2. **๋
ธ๋ id๋ฅผ ์ ์งํ๋ค.** ๊ฐ์ ๋
ธ๋๋ ๊ฐ์ id๋ก ์ด๋ค. render๊ฐ kind์ repo์ label์ด ๊ฐ์ ๋
ธ๋์ ์ด์ id๋ฅผ ๋ฌผ๋ ค์ฃผ๊ธด ํ๋ค. ๊ทธ๋ฐ๋ฐ label์ ๋ฐ๊พธ๋ฉด ๋ค๋ฅธ ๋
ธ๋๋ก ๋ณธ๋ค. ์๋ํฌ์ธํธ label์ Step 3์ ๊ผด์ ๊ทธ๋๋ก ์งํจ๋ค. ์ฌ๋์ด ์ฝ์ ์ด๋ฆ์ ๊ณ ์น๊ณ ์ถ์ผ๋ฉด label ๋์ `displayName`์ ๊ณ ์น๋ค.
|
|
3
3
|
3. **`previousSourcesUsed`๋ฅผ ๋จผ์ ๊ฐ ๋ณธ๋ค.** `probeHit`๊ฐ `true`์๋ ์์ค๋ถํฐ ๋ณธ๋ค. ์ด๋ฒ์๋ `filter_tools`๋ ๋ค์ ๊ฑฐ์น๋ค. ๋๊ตฌ ์ด๋ฆ์ด ๊ฐ์๋ ์ด๋ฒ ์ธ์
์ ๋ถ์ ์๋ฒ๊ฐ ๋ค๋ฅผ ์ ์๋ค.
|
|
4
4
|
4. **์ง๋ ์คํ ์ดํ ๋ฐ๋ ๊ณณ ์ฃผ๋ณ๋ง ๋ค์ ํ์ํ๋ค.** `generatedAt` ์ดํ์ `git log`์ `git diff`๋ก ๋ฐ๋ ํ์ผ์ ๋ฝ๋๋ค. ๊ทธ ํ์ผ์ ๊ฑธ๋ฆฐ ๋
ธ๋์ ์ฃ์ง๋ง ๊ทผ๊ฑฐ ์ค์ ๋ค์ ํ์ธํ๋ค. ์ ๋ฐ๋ ํ์ผ์ ๊ทผ๊ฑฐ๋ ์ค์ด ๋ฐ๋ ธ์ ์ ์์ผ๋ validate์ `CODE_EVIDENCE_NOT_FOUND`๊ฐ ๋๋ฉด ๊ทธ ๊ทผ๊ฑฐ๋ ๋ค์ ์ฐพ๋๋ค.
|
|
5
|
-
5. **์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์ง๋ ๊ฒ์ ๋ค์ ์ ์ง ์์๋ ๋๋ค.** ์ IR์ ๊ฐ์ id ๊ทธ๋ฆผ์ด ์์ผ๋ฉด render๊ฐ ์ง๋ ๊ทธ๋ฆผ์ ์ด์ด ๋ถ์ธ๋ค. ๋จ ๊ฐ๋ฆฌํจ ๋
ธ๋์ ์ฃ์ง๊ฐ ๋ค ๋จ์ ์๊ณ ๊ทธ๋ฆผ id์ ๋ฉ์์ง id๊ฐ ์ด๋ฒ ๊ฒ๊ณผ ์ ๊ฒน์น ๋๋ง์ด๋ค. ํ๋๋ผ๋ ์ด๊ธ๋๋ฉด ๋ฒ๋ ค์ง๋ ์๋ต์ `viewPaths`์์ ๋น ์ง ๊ทธ๋ฆผ์ด ์๋์ง ๋ณธ๋ค. ๋น ์ก์ผ๋ฉด ์ง๋๋ฅผ ๊ณ ์น ๋ค ๋ค์ ์ ๋๋ค.
|
|
5
|
+
5. **์ง๋ฌธ๋ณ ๊ทธ๋ฆผ์ ์ง๋ ๊ฒ์ ๋ค์ ์ ์ง ์์๋ ๋๋ค.** ์ IR์ ๊ฐ์ id ๊ทธ๋ฆผ์ด ์์ผ๋ฉด render๊ฐ ์ง๋ ๊ทธ๋ฆผ์ ์ด์ด ๋ถ์ธ๋ค. ๋จ ๊ฐ๋ฆฌํจ ๋
ธ๋์ ์ฃ์ง๊ฐ ๋ค ๋จ์ ์๊ณ ๊ทธ๋ฆผ id์ ๋ฉ์์ง id๊ฐ ์ด๋ฒ ๊ฒ๊ณผ ์ ๊ฒน์น ๋๋ง์ด๋ค. lifecycle๊ณผ blueprint๋ ๊ฐ๋ฆฌํจ ํ๋ฆ๋ ์ด๋ฒ IR `flows`์ ์๊ณ ๊ทธ๋ฆด ๋จ๊ณ๊ฐ ๋จ์ ์์ด์ผ ํ๋ค(lifecycle์ `state`๋ฅผ ๋จ ๋จ๊ณ, blueprint๋ ๊ฐ๋ฆผ๊ธธ์ด ์๋ ๋จ๊ณ). ํ๋ฆ์ render๊ฐ ์ง๋ IR์์ ์ด์ด๋ฐ์ง ์์ผ๋ ๋ค์ ์ ๋๋ค. er์ ๊ฐ๋ฆฌํจ ๋
ธ๋๊ฐ ์ด๋ฒ์๋ ํ
์ด๋ธ(`db_table`)์ด์ด์ผ ํ๋ค. ํ๋๋ผ๋ ์ด๊ธ๋๋ฉด ๋ฒ๋ ค์ง๋ ์๋ต์ `viewPaths`์์ ๋น ์ง ๊ทธ๋ฆผ์ด ์๋์ง ๋ณธ๋ค. ๋น ์ก์ผ๋ฉด ์ง๋๋ฅผ ๊ณ ์น ๋ค ๋ค์ ์ ๋๋ค.
|
|
6
6
|
6. ๋ต์ด ๋ฌ๋ฆฐ ์ง๋ ์ง๋ฌธ์ render๊ฐ ๋ฌผ๋ ค์ค๋ค. ๋ต ์ ๋ฌ๋ฆฐ ์ง๋ฌธ์ Step 7์์ ๋ค์ ๋ฌป๋๋ค. `user` ๊ทผ๊ฑฐ๋ก ์ ํด์ง ๊ธฐ๋ฅ์์ญ ๊ฒฝ๊ณ๋ Step 3-1๋๋ก ๊ทธ๋๋ก ๋๋ค.
|
|
7
7
|
7. **ํ๋ฉด ์บก์ฒ๋ ์ง๋ IR์ `capture`๋ฅผ ๊ทธ๋๋ก ์ด์ด๋ฐ๋๋ค.** ์ด๋ฏธ์ง๋ ์ฝ์ง ๋ง๊ณ ํ์ผ์งธ ์ฎ๊ธด๋ค. 4๋ฒ์์ ๋ฐ๋ ํ์ผ๋ก ๋ฝํ ํ๋ฉด์ด๊ฑฐ๋ `capture.commit` ์ดํ ๊ทธ ํ๋ฉด ์ฝ๋๊ฐ ๋ฐ๋์์ผ๋ฉด ๋ก์์ ์ ์๋ค. ๋ค์ ์ฐ์์ง ์ฌ์ฉ์์๊ฒ ๋ฌป๋๋ค. ์ ์ฐ๊ธฐ๋ก ํ๋ฉด ๊ทธ๋๋ก ๋๋ค.
|
|
8
|
+
8. **render ์๋ต์ `delta`๋ก ์ง๋๋ฒ๊ณผ ๋ฌด์์ด ๋ฐ๋์๋์ง ์๋ฆฐ๋ค.** render๋ ๋ณํฉ ์ ์ ์ฝ์ ์ง๋ IR๊ณผ ์ด๋ฒ ๋ณํฉ ๊ฒฐ๊ณผ๋ฅผ id๋ก ๋ง์ถฐ ์๊น(ADDED), ๋น ์ง(REMOVED), ์์ฑ ๋ณ๊ฒฝ(CHANGED), ๋ถ๋ชจ๋ ๊ณ์ , ๊ตฌ๊ฐ ์ด๋(MOVED), ์ฐ๊ฒฐ ๋ ๋ณ๊ฒฝ(REWIRED)์ ๋ฝ๋๋ค. 2๋ฒ์ฒ๋ผ label์ ๋ฐ๊พผ ๋
ธ๋๋ ๋น ์ง๊ณผ ์๊น ๋ ๊ฑด์ผ๋ก ์กํ๋ค. ์ด๋ฆ๋ง ๊ณ ์น ๊ฒ์ ๋ณ๊ฒฝ ํ ๊ฑด์ผ๋ก ๋ณด์ด๊ณ ์ถ์ผ๋ฉด `displayName`์ ๊ณ ์น๋ค. ์๋ฆฌ๋ ๋ฒ์ SKILL.md Step 8์ ์๋ค. ํ
์ด๋ธ `columns`๊ฐ ์๊ธฐ๊ฑฐ๋ ๋น ์ง๊ฑฐ๋ ๋ฐ๋ ๊ฒ๋ ๊ทธ ํ
์ด๋ธ์ CHANGED ํ ๊ฑด์ ์ปฌ๋ผ ์ด๋ฆ๊ณผ ํจ๊ป ์ค๋ฆฐ๋ค. ๋์ ์ด ๋ฐ๋์ด ์ง์ง์ ์ฐ๊ฒฐ๋ ์ก์
์ด ๋ค๋ฅด๋ฉด CHANGED์ REWIRED ๋ ๊ฑด์ผ๋ก ์กํ๋ค.
|
|
9
|
+
9. **ํ
์ด๋ธ `columns`๋ render๊ฐ ์ง๋ IR์์ ์ด์ด๋ฐ์ง ์๋๋ค.** ์ด๋ฒ IR์ ๋ค์ ์ ๋๋ค. ๋น ๋จ๋ฆฌ๋ฉด ์ง์ด ์ปฌ๋ผ๊ณผ ๊ตฌ๋ณ์ด ์ ๋ผ ์ ๋ถ ๋น ์ง์ผ๋ก ์กํ๋ค. ๋ง์ด๊ทธ๋ ์ด์
์ด ๋์์ผ๋ฉด ์ ํ์ผ๋ง ์ฝ์ด ์ง๋ ๋ชฉ๋ก์ ๋ํ๋ค.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: blast-radius
|
|
3
3
|
version: "1.2.0"
|
|
4
|
-
description: "
|
|
4
|
+
description: "์ฝ๋๋ฅผ ๊ณ ์น๊ธฐ ์ ์ ์ํฅ๋ฒ์๋ฅผ ํ์
ํด ๊ฐ์ด ๋ด์ผ ํ ํ์ผ๋ง ์ปจํ
์คํธ์ ์ฃ๋๋ค(impact analysis). '์ํฅ๋ฒ์ ํ์ธํด์ค/์ด๋๊น์ง ์ํฅ๋ฐ์/๋ญ๊ฐ ๊นจ์ง ์ ์์ด' ๊ฐ์ ์์ฒญ์ด๋, ์๊ทธ๋์ฒ์ ์ธํฐํ์ด์ค, ํ์
์ ๋ฐ๊พธ๊ฑฐ๋ ๋ฆฌํฉํ ๋งํ๋ ๋ฑ ์ฝ๋๋ฅผ ๊ฑด๋๋ฆฌ๊ธฐ ์ ์ ์๋ ๋ฐ๋ํ๋ค. ์์ ๋ฒ์๊ฐ ๋ถํ์คํ๊ฑฐ๋ ์ฌ์ด๋ ์ดํํธ๊ฐ ๊ฑฑ์ ๋ ๋๋ ์ด๋ค. ์์ง ๊ณ ์น์ง ์์ ์ฝ๋๊ฐ ๋์์ด๋ค. ์ด๋ฏธ ๊ณ ์ณ์ ๋ฏธ์ปค๋ฐ์ด๋ ์คํ
์ด์ง ์ํ์ธ ๋ณ๊ฒฝ์ diff-radius๋ฅผ ์ด๋ค."
|
|
5
5
|
triggers:
|
|
6
6
|
# ์ํฅ๋ฒ์ ํ์ธ ์๋
|
|
7
7
|
- "์ํฅ๋ฒ์"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: build-graph
|
|
3
3
|
version: "1.1.0"
|
|
4
|
-
description: "
|
|
4
|
+
description: "ํ์ฌ ๋ ํฌ์ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ธ๋ฑ์ฑํด(index codebase) ์ฝ๋ ์ง์ ๊ทธ๋ํ๋ฅผ ๋น๋ํ๊ฑฐ๋ ๋ค์ ๋น๋ํ๋ค. blast-radius ๋ถ์์ด ์ด ๊ทธ๋ํ๋ฅผ ์ด๋ค. ๊ทธ๋ํ๋ง ๋ค๋ฃฌ๋ค. gestalt.json๊ณผ post-commit ํ
๊น์ง ๋ฌถ์ ๋ ํฌ ์ฒซ ์ค์ ์ setup์ ์ด๋ค."
|
|
5
5
|
triggers:
|
|
6
6
|
- "build graph"
|
|
7
7
|
- "build-graph"
|