feat: v2.2.3 - Stability, Self-Reflector & Intent Alignment
- 버전 2.2.3 상향 및 PATCHNOTES.md 업데이트 - [신규] src/features/selfReflector/ - 성찰 실행/검증/프롬프트 모듈 추가 - [신규] intentAlignment.ts, intentClassifier.ts - 의도 정렬 시스템 추가 - [신규] pixelOfficeState.ts - 픽셀 오피스 상태 관리 추가 - sidebarProvider, dispatcher, chatHandlers 핵심 로직 최적화 - astra-2.2.3.vsix 패키지 생성 완료 (298 tests PASS)
This commit is contained in:
@@ -66,10 +66,12 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
suggestedPipelineId: 'product-dev',
|
||||
suggestedPipelineName: '제품 개발 파이프라인',
|
||||
stages: [
|
||||
// 모든 stage가 *직군*만 지정하고 담당자는 비워둠 (agentId 생략). dispatcher가
|
||||
// stage 진입 시 CEO에게 1회 LLM 콜로 적임자 선택. 활성 후보가 1명뿐이면
|
||||
// 콜 없이 그 사람을 쓴다. 사용자의 의도("CEO가 배분 결정")와 일치.
|
||||
{
|
||||
id: 'plan-discuss',
|
||||
label: '기획 논의',
|
||||
agentId: 'writer',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'사용자 요청: {{userPrompt}}\n\n' +
|
||||
@@ -79,7 +81,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'market-research',
|
||||
label: '시장 조사',
|
||||
agentId: 'researcher',
|
||||
roleCategory: 'researcher',
|
||||
instructionTemplate:
|
||||
'기획 논의 정리: {{stage.plan-discuss}}\n\n' +
|
||||
@@ -89,7 +90,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'trend-research',
|
||||
label: '트렌드 조사',
|
||||
agentId: 'researcher',
|
||||
roleCategory: 'researcher',
|
||||
instructionTemplate:
|
||||
'기획 논의: {{stage.plan-discuss}}\n시장 조사 결과: {{stage.market-research}}\n\n' +
|
||||
@@ -99,7 +99,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'direction',
|
||||
label: '방향성 정의',
|
||||
agentId: 'writer',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'기획 논의: {{stage.plan-discuss}}\n시장: {{stage.market-research}}\n트렌드: {{stage.trend-research}}\n\n' +
|
||||
@@ -109,7 +108,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'plan-draft',
|
||||
label: '기획문서 초안',
|
||||
agentId: 'writer',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'방향성: {{stage.direction}}\n\n' +
|
||||
@@ -121,7 +119,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'plan-review',
|
||||
label: '기획문서 검토',
|
||||
agentId: 'inspector',
|
||||
roleCategory: 'inspector',
|
||||
instructionTemplate:
|
||||
'검토 대상: {{stage.plan-draft}}\n\n' +
|
||||
@@ -136,7 +133,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'plan-final',
|
||||
label: '기획문서 최종본',
|
||||
agentId: 'writer',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'초안: {{stage.plan-draft}}\n검토 피드백: {{stage.plan-review}}\n\n' +
|
||||
@@ -145,7 +141,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'dev-design',
|
||||
label: '개발 설계',
|
||||
agentId: 'developer',
|
||||
roleCategory: 'developer',
|
||||
instructionTemplate:
|
||||
'최종 기획서: {{stage.plan-final}}\n\n' +
|
||||
@@ -155,7 +150,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'design-review',
|
||||
label: '설계 검토',
|
||||
agentId: 'inspector',
|
||||
roleCategory: 'inspector',
|
||||
instructionTemplate:
|
||||
'설계 문서: {{stage.dev-design}}\n기획서: {{stage.plan-final}}\n\n' +
|
||||
@@ -168,7 +162,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'dev-impl',
|
||||
label: '개발 진행',
|
||||
agentId: 'developer',
|
||||
roleCategory: 'developer',
|
||||
instructionTemplate:
|
||||
'설계: {{stage.dev-design}}\n기획서: {{stage.plan-final}}\n\n' +
|
||||
@@ -178,7 +171,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'qa',
|
||||
label: 'QA 진행',
|
||||
agentId: 'qa',
|
||||
roleCategory: 'qa',
|
||||
instructionTemplate:
|
||||
'구현 결과: {{stage.dev-impl}}\n기획서: {{stage.plan-final}}\n\n' +
|
||||
@@ -191,7 +183,6 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
{
|
||||
id: 'deploy',
|
||||
label: '라이브 배포',
|
||||
agentId: 'developer',
|
||||
roleCategory: 'developer',
|
||||
instructionTemplate:
|
||||
'QA 통과 결과: {{stage.qa}}\n\n' +
|
||||
@@ -201,9 +192,57 @@ const FULL_PRODUCT_DEV: PipelineTemplate = {
|
||||
],
|
||||
};
|
||||
|
||||
/**
|
||||
* 짧은 "기획만" 워크플로 — 사용자가 기획문서까지만 필요한 경우. 각 산출물
|
||||
* stage에 3-way 검수 사이클을 켜서 셋(작업자 + 감리 + CEO) 합의로 통과
|
||||
* 시키는 패턴을 보여준다. 풀-프로덕트와 달리 별도 review stage를 두지 않고
|
||||
* 사이클로 합쳐서 빠르게 끝낸다.
|
||||
*/
|
||||
const PLAN_ONLY: PipelineTemplate = {
|
||||
templateId: 'plan-only',
|
||||
name: '기획서까지만 (검수 사이클)',
|
||||
description: '시장 조사 → 방향성 → 기획서. 각 산출물 stage에서 검수자 + CEO 합의로 통과시키는 짧은 워크플로.',
|
||||
suggestedPipelineId: 'plan-only',
|
||||
suggestedPipelineName: '기획서 작성',
|
||||
stages: [
|
||||
{
|
||||
id: 'market-research',
|
||||
label: '시장 조사',
|
||||
roleCategory: 'researcher',
|
||||
instructionTemplate:
|
||||
'사용자 요청: {{userPrompt}}\n\n' +
|
||||
'이 요청 맥락에서 *시장 측면*을 조사하세요. 추측 금지, 데이터/사례 기반.\n' +
|
||||
'- 비슷한 시도가 이미 있나 (3개 이상)\n- 시장 크기·고객 페르소나\n- 가격대·수익화 패턴\n' +
|
||||
'결과는 "출처(또는 일반론임을 명시)" 표시.',
|
||||
},
|
||||
{
|
||||
id: 'direction',
|
||||
label: '방향성 정의',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'사용자 요청: {{userPrompt}}\n시장 조사: {{stage.market-research}}\n\n' +
|
||||
'*우리가 갈 방향*을 한 문단으로 결론짓고 측정 가능한 성공 기준을 1~3개 적으세요.',
|
||||
reviewWith: 'inspector',
|
||||
reviewMaxRounds: 3,
|
||||
},
|
||||
{
|
||||
id: 'plan-doc',
|
||||
label: '기획문서',
|
||||
roleCategory: 'planner',
|
||||
instructionTemplate:
|
||||
'방향성: {{stage.direction}}\n\n' +
|
||||
'아래 섹션 구조로 *기획서*를 마크다운으로 작성하세요. 합의 통과 후엔 사장님께 그대로 전달됩니다.\n\n' +
|
||||
'## 배경\n## 목표\n## 핵심 사용자 시나리오 (3개 이상, 구체적)\n## 주요 기능 목록\n## 비기능 요구사항\n## 측정 지표 (KPI)\n## 미래 확장 / 비-목표',
|
||||
reviewWith: 'inspector',
|
||||
reviewMaxRounds: 3,
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
/** Read-only registry of templates the UI surfaces. Add more here later. */
|
||||
export const PIPELINE_TEMPLATES: PipelineTemplate[] = [
|
||||
FULL_PRODUCT_DEV,
|
||||
PLAN_ONLY,
|
||||
];
|
||||
|
||||
export function getPipelineTemplate(id: string): PipelineTemplate | undefined {
|
||||
|
||||
Reference in New Issue
Block a user