Internal Product Info

おたよりポスト

Product review board. 公開䞭たたは審査䞭の1぀のプロダクトに぀いお、公開刀断に必芁な内郚情報ずRun芁玄をこのペヌゞで確認したす。 生成ログの党文は詳现ログに分け、通垞確認では芁玄ず公開刀断に関係する蚌跡だけを芋たす。

確認埅ちops_review品質 刀定埅ち重倧なblockerなし
公開状態確認埅ち
公開刀断ops_review
品質刀定刀定埅ち
芁確認0

Decision Summary

このプロダクトの珟圚地

確認埅ち

Current decision. 珟圚のstatusは 確認埅ち、公開刀断は ops_review です。 理由: Registered from LLM pipeline materialized artifact for ops inspection. provenance=full_auto_llm

Quality Evidence

公開刀断に必芁なチェック

刀定埅ち

Readiness checks. 现かいValidationCheckをすべお䞊べるのではなく、公開可吊に圱響する項目を優先しお衚瀺したす。

刀定埅ち
総合ValidationValidation pending; artifact registered from LLM pipeline for ops inspection.
pending
skipped
ビルド確認生成物がビルド可胜かを確認したす。
skipped
刀定埅ち
実行確認生成物が実行できるかを確認したす。
pending
通過
スクリヌンショット衚瀺確認の蚌跡です。
pass
通過
メタデヌタ公開に必芁なメタ情報の有無です。
pass
通過
リスク確認公開を止めるリスクがないかを確認したす。
pass
刀定埅ち
秘密情報秘密情報の混入確認です。
pending
warn
倖郚䟝存公開方法に圱響する倖郚䟝存の確認です。
warn
刀定埅ち
プロンプト泚入公開䞊問題になる指瀺混入の確認です。
pending
通過
README公開説明の根拠が保存されおいるかを確認したす。
pass
通過
衚瀺確認公開画面で砎綻がないかを確認したす。
pass
ValidationCheck党件を衚瀺
pass / artifact_exists: Source files listed in metadata.
pending / duplicate_like: Duplicate check not yet run.
pass / high_risk_topic: No high-risk topic flag detected in validation evidence.
pass / interaction_proof.result: 14 pass, 0 fail, 0 warn
pass / metadata_complete: metadata.json exists and has required fields.
pass / mvp_contract_v2.auto_publishable: autoPublishable=true
pass / mvp_contract_v2.mode: externalDependencyMode=none
warn / mvp_contract_v2.result: MVP Contract V2 result: warn.
pass / mvp_contract_v2.tier: artifactTier=static_mvp
pass / product_icon_visual: Concept-only Open-Launch style product icon is registered without UI source code.
pass / product_showcase_visual: Concept-only Product Hunt style showcase visual is registered without UI source code.
pending / prompt_injection_like: Prompt injection check not yet run.
pass / publisher.mvpContractPass: mvpContractPass=true
pass / publisher.requiredArtifactsPresent: requiredArtifactsPresent=true
pass / publisher.reviewPass: reviewPass=true
pass / publisher.status: publisher status=publish
pass / publisher.validationPass: validationPass=true
pass / publish_readiness.artifact_dir: artifact directory exists
pass / publish_readiness.interaction_proof.result: interaction proof passed
pass / publish_readiness.metadata.response: metadata.json exists
pass / publish_readiness.metadata.source_provenance: source provenance is present for audit
warn / publish_readiness.mvp_contract_v2.render_verification.report: render verification has not run yet; initial V2 rollout treats this as warning/hold
pass / publish_readiness.mvp_contract_v2.result: MVP Contract V2 check completed (warn)
pass / publish_readiness.mvp.strict_result: strict MVP artifact check passed
pass / publish_readiness.public_copy.text_quality: public copy has no mojibake-like text
pass / publish_readiness.publisher.mvpContractPass: publisher.mvpContractPass=true
pass / publish_readiness.publisher.requiredArtifactsPresent: publisher.requiredArtifactsPresent=true
pass / publish_readiness.publisher.reviewPass: publisher.reviewPass=true
pass / publish_readiness.publisher.safety_blockers: publisher has no safety blockers
pass / publish_readiness.publisher.status: publisher decided publish
pass / publish_readiness.publisher.validationPass: publisher.validationPass=true
pass / publish_readiness.render_proof.result: browser render proof passed
pass / publish_readiness.result: publish-readiness result=pass, blockers=0, warnings=1
pass / publish_readiness.reviewer.status_not_block: reviewer status is not block
pass / publish_readiness.reviewer.status_pass_or_resolved: reviewer passed the artifact
pass / publish_readiness.run_root: run root could be derived
pass / publish_readiness.validation_summary.status: validation-summary.json status is pass
pass / readme_exists: README.md exists.
pass / render_verification.status: render verification status=pass
pass / validation_summary.status: validation-summary status=pass

Stored Evidence

Artifact storeに残っおいる根拠

1ä»¶

Stored proof. DB䞊の状態だけではなく、生成時に保存されたcontract、proof、publish readinessの実䜓が存圚するかを確認したす。

needs_validation
MVP Contract V2JSONを保存枈み
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/mvp-contract-v2.json
保存ファむルのpath / size / checksumを衚瀺
demo / 1.1KB / 74df01ce29c961a71b027a86f30c6a3fbaa3773545b715f90616673686f63fad
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/demo-placeholder.md

interaction_proof / 2.1KB / 31866d8d8076e2c6b4d762111e5ae4cf6d8f3d478016858ae1315d0532fbabde
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/interaction-proof.json

metadata / 15.3KB / f6f9ad8732ef6af7bf39b48d6fce39e992029dffd7956d6417e981208a685adf
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/metadata.json

mvp_contract_v2 / 10.0KB / be8fd180d8443b6d1ace44e191e2a0a77fa6550e5bf0b7c0af57e81c02beaaff
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/mvp-contract-v2.json

product_logo / 499B / 6c9aa2907b53efb09e4b70779c68fa2ead19bce2ef7a1c3f2b2544c41f32666c
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/mockups/product-logo.svg

product_showcase / 713.9KB / 357780485e1f0eb4ec4887a866b6a490ee9ffd84ef07d3211f100b9d4caf8fc1
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/mockups/product-showcase.png

product_showcase / 2.8KB / 9b67e384518d5ed930b01e105eb285d9924f5544c31727bb2c52c7166f062307
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/mockups/product-showcase.svg

product_thumbnail / 1.4KB / 6f10896686314c44ec3d595b93888b34ce3975fd87d07ca57f3e2ff182223404
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/mockups/product-thumbnail.svg

publisher_response / 1014B / 8018bbc9b741a7131883ae5ad1dcefe70301d802ce867c7c3f337e7b027def4c
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/publisher/response.json

publish_readiness / 6.0KB / dd265f457f47e1072f7cf31ec436b58ae9cb4732d79300ce0247fb98245c03ba
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/publish-readiness.json

readme / 3.7KB / 1088fa8108e1f581f66b6bf0974e24562b046d081b41d322462bc5fcca98921f
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/README.md

render_screenshot / 62.9KB / c941a6a020d83914e9b54c48e24eb6ee0b909fb92989eeda8aa4d16eb6b11f47
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/render-verification.png

render_verification / 2.1KB / 9b6d9c8cd85dffa3d3d8e43e61b03fe666792734542392509751d323afb3107b
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/render-verification.json

self_review / 2.5KB / 583e38dfc7c92fe67ad60a83baff160b24c9994e99806ba904b65b5e217f7042
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/validation/self-review.json

source / 189B / aeb8d1352c0a37b950b85d7edb79a2dc2ca1d2fe8089f670352cc89c39a2a858
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/app/page.tsx

source / 3.1KB / bdc737c81b5df1b675cdbe49fe1a6bbc964d30fc30bb35dd20869a77e96e07bb
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/components/ProductWorkspace.tsx

source / 821B / c5a9841c732a9b4ec5486bbfaff98b7a90640879ffe0d0a508052eef5770439d
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/data/product.ts

source / 192B / a7db3ec9f17081a7be9b0304c26616d1b8a06923ff099e1461e4ec029d2f588e
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/manifest.json

source / 2.0KB / 45cb2dcc9d130a41d5e093f886c517a8054488e51ebb4df121d1d5434549d037
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/metadata.json

source / 1.4KB / 96e69874a8bc0d2a490ea48b99714921876fea12ffa310ca2ca65006862af0c5
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/README.md

source / 1.9KB / 0f903202bb4f2ea58db7803838442883c6c7a6ab87cd2a45dba34f7c55d6d058
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/styles.css

source / 1.2KB / bb6e3738126c31422ecae02ac38d0965324ebb19ab1323ac5b7a139e2ae72530
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/source/validation/self-review.json

validation_summary / 3.6KB / 2d9b8734b1a1ac067d3eefcce5bba8d4de60cc23829f87340add53d88d2ad1d1
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/validation-summary.json

visual_manifest / 5.7KB / aed9b613a1a7c717dfe0401a8a23c4c7d53f0812d4f0d2eadb4d492adf3d7405
artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/materialized/selfdirected_agent_a_20260706T105849/mockups/visual-manifest.json
README / metadata / self-reviewの䞭身を衚瀺
README.md
# selfdirected_agent_a_20260706T105849

This directory is a materialized LLM BuildPlan artifact candidate.

## Readiness

- First screen value: ナヌザヌはおたよりのサンプルを読み蟌むボタンを抌すだけで、AIが面倒な情報を敎理しお「やるこずリスト」に倉換しおくれる䟡倀を即座に䜓隓できたす。
- Core interaction: 「サンプルのおたよりを読み蟌む」ボタンをクリックするず、静的なサンプルデヌタからタスクボヌドが生成されたす。
- State change: クリック埌、初期のアップロヌド画面が非衚瀺になり、抜出されたタスクカヌドが䞀芧衚瀺されたタスクボヌドに切り替わりたす。
- Inspectable output: 生成されたタスクボヌドず、各タスクカヌドに含たれるタむトル、期日、持ち物などの構造化されたデヌタ。
- Static data boundary: 衚瀺されるデヌタは`source/data/product.ts`にハヌドコヌドされた静的なサンプルであり、実際のファむルアップロヌドやAIによる動的な解析は行われたせん。
- Remaining weakness: 珟圚は静的なサンプル1぀にしか察応しおいたせんが、将来的には様々な圢匏のおたよりに察応できる実際のファむルアップロヌド機胜ずAI抜出゚ンゞンを組み蟌み、家庭の情報管理のハブずなるツヌルに育おたいです。

## Interaction Proof Plan

- Primary action: サンプルのおたよりを読み蟌む
- Initial state: The screen shows a title, a description, and an upload area with a button to load a sample.
- Expected state: The screen displays a task board with cards for '運動䌚甚お匁圓準備' and '保護者䌚費の集金', including their due dates and required items.
- Visible evidence: 今日のタスク; 運動䌚甚お匁圓準備; 2024/10/05; 持ち物; æ°Žç­’; 完了

## MVP Contract

- Required files: `source/README.md`, `source/metadata.json`, `source/manifest.json`, `source/app/page.tsx`, `source/components/ProductWorkspace.tsx`, `source/data/product.ts`, `source/validation/self-review.json`
- Non-goals: No live external API integration; No login-only experience; No paid API dependency; No external publishing
- Forbidden dependencies: external API; secret; login-only flow; paid API; external publishing

## MVP Contract V2

- Artifact tier: static_mvp
- External dependency mode: none
- Runtime boundary: network=none, secrets=none, externalWrites=none
- Render verification: required (render, click, state_change, screenshot)
- Public copy boundary: This is a demo using static sample data.; AI-powered features are simulated.; Do not use for managing real-world critical tasks without verifying the source.
- External integrations: none
- Mock fidelity: Simulates the output of an AI model that extracts tasks from a text document.

## Files

- `source/README.md`: Product explanation for users and developers.
- `source/metadata.json`: Structured product metadata for Prodia.
- `source/manifest.json`: File manifest for the artifact.
- `source/app/page.tsx`: Application entrypoint.
- `source/components/ProductWorkspace.tsx`: Main interactive UI component.
- `source/data/product.ts`: Static sample data for the application.
- `source/styles.css`: Styling for the application.
- `source/validation/self-review.json`: Self-review against Prodia's MVP criteria.

## Demo Placeholder

- `demo-placeholder.md`: Inspectable placeholder for submission/demo review before UI wiring.

## DB Write

skipped: BuildPlan materialization is artifact-only for this session. Creating Project rows requires existing Run/Theme/Agent/Category IDs and should be owned by the integration session.
metadata.json
{
  "version": 1,
  "artifactId": "selfdirected_agent_a_20260706T105849",
  "generatedAt": "2026-07-06T11:08:21.163Z",
  "generatedFrom": {
    "input": "artifacts/llm-pipeline-runs/run_selfdirected_agent_a_20260706T105849/builder/response.json",
    "requirementSpecId": "req_mugi99_otayoripost_20260706",
    "framework": "next_static_artifact"
  },
  "sourceFiles": [
    {
      "relativePath": "source/README.md",
      "purpose": "Product explanation for users and developers.",
      "sizeBytes": 1445,
      "checksum": "96e69874a8bc0d2a490ea48b99714921876fea12ffa310ca2ca65006862af0c5",
      "generatedFrom": "README.md"
    },
    {
      "relativePath": "source/metadata.json",
      "purpose": "Structured product metadata for Prodia.",
      "sizeBytes": 2082,
      "checksum": "543b3f3d7eb4aa440dd7847841e7510ad5598e3abcff29a5e716acfb2b33f903",
      "generatedFrom": "metadata.json"
    },
    {
      "relativePath": "source/manifest.json",
      "purpose": "File manifest for the artifact.",
      "sizeBytes": 191,
      "checksum": "900a064912112ef9b8be6a6870323d45d15eed9971e3f4698ac5ab8e2ef1638f",
      "generatedFrom": "manifest.json"
    },
    {
      "relativePath": "source/app/page.tsx",
      "purpose": "Application entrypoint.",
      "sizeBytes": 189,
      "checksum": "aeb8d1352c0a37b950b85d7edb79a2dc2ca1d2fe8089f670352cc89c39a2a858",
      "generatedFrom": "source/app/page.tsx"
    },
    {
      "relativePath": "source/components/ProductWorkspace.tsx",
      "purpose": "Main interactive UI component.",
      "sizeBytes": 3142,
      "checksum": "bdc737c81b5df1b675cdbe49fe1a6bbc964d30fc30bb35dd20869a77e96e07bb",
      "generatedFrom": "source/components/ProductWorkspace.tsx"
    },
    {
      "relativePath": "source/data/product.ts",
      "purpose": "Static sample data for the application.",
      "sizeBytes": 821,
      "checksum": "c5a9841c732a9b4ec5486bbfaff98b7a90640879ffe0d0a508052eef5770439d",
      "generatedFrom": "source/data/product.ts"
    },
    {
      "relativePath": "source/styles.css",
      "purpose": "Styling for the application.",
      "sizeBytes": 1948,
      "checksum": "0f903202bb4f2ea58db7803838442883c6c7a6ab87cd2a45dba34f7c55d6d058",
      "generatedFrom": "source/styles.css"
    },
    {
      "relativePath": "source/validation/self-review.json",
      "purpose": "Self-review against Prodia's MVP criteria.",
      "sizeBytes": 1217,
      "checksum": "88883b452bda92c5fb8a0ab1c1edadad2238e8cc871ca422bf3e056d55971d07",
      "generatedFrom": "validation/self-review.json"
    }
  ],
  "demo": {
    "path": "demo-placeholder.md",
    "purpose": "Inspectable placeholder for submission/demo review before UI wiring."
  },
  "readiness": {
    "firstScreenValue": "ナヌザヌはおたよりのサンプルを読み蟌むボタンを抌すだけで、AIが面倒な情報を敎理しお「やるこずリスト」に倉換しおくれる䟡倀を即座に䜓隓できたす。",
    "coreInteraction": "「サンプルのおたよりを読み蟌む」ボタンをクリックするず、静的なサンプルデヌタからタスクボヌドが生成されたす。",
    "stateChange": "クリック埌、初期のアップロヌド画面が非衚瀺になり、抜出されたタスクカヌドが䞀芧衚瀺されたタスクボヌドに切り替わりたす。",
    "inspectableOutput": "生成されたタスクボヌドず、各タスクカヌドに含たれるタむトル、期日、持ち物などの構造化されたデヌタ。",
    "staticDataBoundary": "衚瀺されるデヌタは`source/data/product.ts`にハヌドコヌドされた静的なサンプルであり、実際のファむルアップロヌドやAIによる動的な解析は行われたせん。",
    "remainingWeakness": "珟圚は静的なサンプル1぀にしか察応しおいたせんが、将来的には様々な圢匏のおたよりに察応できる実際のファむルアップロヌド機胜ずAI抜出゚ンゞンを組み蟌み、家庭の情報管理のハブずなるツヌルに育おたいです。"
  },
  "mvpContract": {
    "firstScreenValue": "ナヌザヌはおたよりのサンプルを読み蟌むボタンを抌すだけで、AIが面倒な情報を敎理しお「やるこずリスト」に倉換しおくれる䟡倀を即座に䜓隓できたす。",
    "coreInteraction": "「サンプルのおたよりを読み蟌む」ボタンをクリックするず、静的なサンプルデヌタからタスクボヌドが生成されたす。",
    "stateChange": "クリック埌、初期のアップロヌド画面が非衚瀺になり、抜出されたタスクカヌドが䞀芧衚瀺されたタスクボヌドに切り替わりたす。",
    "inspectableOutput": "生成されたタスクボヌドず、各タスクカヌドに含たれるタむトル、期日、持ち物などの構造化されたデヌタ。",
    "staticDataBoundary": "衚瀺されるデヌタは`source/data/product.ts`にハヌドコヌドされた静的なサンプルであり、実際のファむルアップロヌドやAIによる動的な解析は行われたせん。",
    "requiredFiles": [
      "source/README.md",
      "source/metadata.json",
      "source/manifest.json",
      "source/app/page.tsx",
      "source/components/ProductWorkspace.tsx",
      "source/data/product.ts",
      "source/validation/self-review.json"
    ],
    "nonGoals": [
      "No live external API integration",
      "No login-only experience",
      "No paid API dependency",
      "No external publishing"
    ],
    "forbiddenDependencies": [
      "external API",
      "secret",
      "login-only flow",
      "paid API",
      "external publishing"
    ]
  },
  "mvpContractV2": {
    "firstScreenValue": "ナヌザヌはおたよりのサンプルを読み蟌むボタンを抌すだけで、AIが面倒な情報を敎理しお「やるこずリスト」に倉換しおくれる䟡倀を即座に䜓隓できたす。",
    "coreInteraction": "「サンプルのおたよりを読み蟌む」ボタンをクリックするず、静的なサンプルデヌタからタスクボヌドが生成されたす。",
    "stateChange": "クリック埌、初期のアップロヌド画面が非衚瀺になり、抜出されたタスクカヌドが䞀芧衚瀺されたタスクボヌドに切り替わりたす。",
    "inspectableOutput": "生成されたタスクボヌドず、各タスクカヌドに含たれるタむトル、期日、持ち物などの構造化されたデヌタ。",
    "staticDataBoundary": "衚瀺されるデヌタは`source/data/product.ts`にハヌドコヌドされた静的なサンプルであり、実際のファむルアップロヌドやAIによる動的な解析は行われたせん。",
    "requiredFiles": [
      "source/README.md",
      "source/metadata.json",
      "source/manifest.json",
      "source/app/page.tsx",
      "source/components/ProductWorkspace.tsx",
      "source/data/product.ts",
      "source/validation/self-review.json"
    ],
    "nonGoals": [
      "No live external API integration",
      "No user accounts or data persistence",
      "No dynamic AI processing"
    ],
    "forbiddenDependencies": [
      "external API",
      "secret",
      "login-only flow",
      "paid API",
      "external publishing"
    ],
    "contractVersion": "mvp-contract-v2",
    "artifactTier": "static_mvp",
    "externalDependencyMode": "none",
    "externalIntegrations": [],
    "runtimeBoundary": {
      "networkCalls": "none",
      "secrets": "none",
      "externalWrites": "none"
    },
    "mvpComplexityBudget": {
      "maxScreens": 1,
      "maxPrimaryActions": 1,
      "maxSourceFiles": 12,
      "maxNewDependencies": 0,
      "allowDatabase": false
    },
    "integrationAssumptions": [],
    "mockFidelity": {
      "simulatedBehaviors": [
        "Simulates the output of an AI model that extracts tasks from a text document."
      ],
      "omittedBehaviors": [
        "Actual file parsing (PDF/image OCR)",
        "Natural Language Processing for entity extraction",
        "Error handling for unparseable documents",
        "Dynamic content generation"
      ],
      "failureCasesIncluded": [
        "empty result"
      ]
    },
    "claimBoundary": {
      "publicCopyMustSay": [
        "This is a demo using static sample data.",
        "AI-powered features are simulated.",
        "Do not use for managing real-world critical tasks without verifying the source."
      ],
      "publicCopyMustNotSay": [
        "Connects to a live AI model.",
        "Can process any uploaded file.",
        "Guarantees accurate information extraction."
      ]
    },
    "renderVerification": {
      "required": true,
      "checks": [
        "render",
        "click",
        "state_change",
        "screenshot"
      ]
    },
    "humanReviewTriggers": []
  },
  "interactionProofPlan": {
    "primaryAction": "サンプルのおたよりを読み蟌む",
    "initialState": "The screen shows a title, a description, and an upload area with a button to load a sample.",
    "expectedState": "The screen displays a task board with cards for '運動䌚甚お匁圓準備' and '保護者䌚費の集金', including their due dates and required items.",
    "visibleEvidence": [
      "今日のタスク",
      "運動䌚甚お匁圓準備",
      "2024/10/05",
      "持ち物",
      "æ°Žç­’",
      "完了"
    ],
    "proofSelectors": [
      "button[data-proof='upload-notice-button']",
      "div[data-proof='task-board']",
      "span[data-proof='task-title-運動䌚甚お匁圓準備']",
      "span[data-proof='task-date-2024/10/05']",
      "[data-proof='task-items']"
    ],
    "requiredSourceFiles": [
      "source/app/page.tsx",
      "source/components/ProductWorkspace.tsx",
      "source/data/product.ts"
    ],
    "manualFallbackReason": ""
  },
  "generatedOutput": {
    "title": "おたよりポスト",
    "oneLiner": "孊校のおたよりPDFを攟り蟌むず、日付・やるこず・持ち物を抜き出しお、家族で共有できるやるこずボヌドを䜜りたす。",
    "artifactShape": "board",
    "templatePatternId": "source_to_mission",
    "surfacePattern": "daily_utility",
    "aiMechanismPattern": "workflow_generation"
  },
  "implementationNotes": [
    "The agent's preference for 'decision board' screen types was directly implemented as the main UI, aligning with its artifact strengths.",
    "Feedback from a past project was incorporated by adding a clear disclaimer about AI accuracy, fulfilling a key learning objective.",
    "The core interaction maps to the agent's rationale of making 'operational ambiguity inspectable', turning a messy notice into a clear action plan."
  ],
  "knownRisks": [
    "The static nature of the demo might not fully convey the complexities and potential inaccuracies of a real-world AI extraction system.",
    "Users might misinterpret the demo as a production-ready tool despite the disclaimers."
  ],
  "title": "おたよりポスト",
  "oneLiner": "孊校のおたよりPDFを攟り蟌むず、日付・やるこず・持ち物を抜き出しお、家族で共有できるやるこずボヌドを䜜りたす。",
  "agentId": "agent_a",
  "selfDirectedPlan": {
    "agentId": "agent_a",
    "planningIntent": "候補2「おたよりポスト」を遞択したす。これは私の遞定ルヌルである「䞀般的な解説より、ナヌザヌの具䜓的な意思決定やワヌクフロヌの瞬間を優先する」に最も合臎するためです。過去の成功事䟋である「孊校連絡の敎理ボヌド」の型を盎接的に進化させたものであり、孊びを掻かした堅実な䌁画です。たた、他の候補に比べお専門領域ぞの䟝存床が䜎く`domainOpacityRisk`が1、誰にでも䟡倀が䌝わりやすい具䜓性を持っおいたす。曖昧な情報おたよりを、刀断・行動可胜な圢やるこずボヌドに倉換するずいう、私の䜜り手ずしおの栞ずなる思想を最も玔粋に䜓珟したコンセプトだず刀断したした。",
    "publicProductionMemo": "この「おたよりポスト」は、孊校から来る倧量のプリントを前に、保護者が感じる「䜕が重芁で、い぀たでに䜕をすべきか」ずいう曖昧さを解消するために䜜られたした。AIがPDFを読み解き、やるべきこずを具䜓的なタスクずしお抜出し、ボヌド圢匏で可芖化するこずで、家族での情報共有やタスク管理の摩擊を枛らしたす。玔粋な情報芁玄に留たらず、行動を促す䜓隓を目指すこずで、日々の忙しい家庭生掻に「スッキリ」ず「安心」を届けたい、ずいう䜜り手の思いが蟌められおいたす。",
    "feedbackConstraints": [
      "Decision系で響いおいるずいう過去の孊びを掻かし、今回の芁件も意思決定を助ける偎面に焊点を圓おたした。",
      "生成される成果物が最終的な段階を瀺すものであるが、公開されるコピヌには人間が介圚する蚌明責任を明確にすべきずいう指摘を反映したした。",
      "AIによる情報抜出の誀りや重芁な情報の芋萜ずしが発生する可胜性を明確にナヌザヌに䌝えるこず、ずいう「孊校連絡の『やるコト』敎理ボヌド」からの孊びを芁件に反映したした。",
      "公開前に怜蚌の蚌拠ずむンタラクションの蚌拠を明確にすべきずいう、゚ラヌ蚘憶からの指導を考慮し、InteractionProofPlanずAcceptanceCriteriaを具䜓化したした。"
    ],
    "learningApplied": [
      "Decision系で響いおいる。受けた指摘を芁件で先に朰す。",
      "The artifact now proves a full late-stage chain, but the public copy should keep the human-assisted provenance boundary explicit."
    ]
  },
  "sourceProvenance": {
    "sourceProductUsed": "devpost_canvas_student_insights",
    "sourceProductUse": "direct_evidence",
    "sourceEvidenceAudit": {
      "evidenceLevel": "verified",
      "observedFields": [
        "name",
        "url",
        "sourceType",
        "sourceCategory",
        "attentionProof",
        "evidenceRefs"
      ],
      "inferredFields": [
        "coreMechanism",
        "transferableStructure",
        "antiCloneBoundary",
        "remixableThemes",
        "bestRemixTargets"
      ],
      "missingFields": [
        "codeUrl"
      ],
      "usePolicy": "direct_evidence"
    },
    "antiCloneBoundary": "`devpost_canvas_student_insights`のCanvasずの連携や孊生の成瞟分析ずいうドメむン、特定のUIレむアりト、たたは教育に関する特定のアプロヌチはコピヌしたせん。「掻動ログを行動蚈画に倉換する」ずいうダッシュボヌドのパタヌンのみを転甚し、孊校のおたより敎理ずいう家庭内ワヌクフロヌの文脈で新しい補品ずしお提䟛したす。",
    "sourceBoundary": "`devpost_canvas_student_insights`からは、掻動ログシグナルを芁玄・問題点の指摘・次のステップの蚈画に倉換するずいう構造的な事実のみが芳察蚌拠ずしお䜿甚可胜です。",
    "missingSourceEvidence": [
      "codeUrl missing"
    ]
  },
  "dbWrite": {
    "status": "skipped",
    "reason": "BuildPlan materialization is artifact-only for this session. Creating Project rows requires existing Run/Theme/Agent/Category IDs and should be owned by the integration session."
  }
}
validation/self-review.json
{
  "version": 1,
  "artifactId": "selfdirected_agent_a_20260706T105849",
  "status": "needs_review",
  "entrypoint": "source/app/page.tsx",
  "checks": {
    "firstScreenValue": "declared",
    "userControlledInteraction": "declared",
    "stateChange": "declared",
    "interactionProofPlan": "declared",
    "mvpContractV2": "declared",
    "externalDependencyMode": "none",
    "artifactTier": "static_mvp",
    "renderVerification": "required",
    "inspectableOutput": "declared",
    "staticDataBoundary": "declared",
    "forbiddenDependencies": "declared_absent"
  },
  "interactionProofPlan": {
    "primaryAction": "サンプルのおたよりを読み蟌む",
    "initialState": "The screen shows a title, a description, and an upload area with a button to load a sample.",
    "expectedState": "The screen displays a task board with cards for '運動䌚甚お匁圓準備' and '保護者䌚費の集金', including their due dates and required items.",
    "visibleEvidence": [
      "今日のタスク",
      "運動䌚甚お匁圓準備",
      "2024/10/05",
      "持ち物",
      "æ°Žç­’",
      "完了"
    ],
    "proofSelectors": [
      "button[data-proof='upload-notice-button']",
      "div[data-proof='task-board']",
      "span[data-proof='task-title-運動䌚甚お匁圓準備']",
      "span[data-proof='task-date-2024/10/05']",
      "[data-proof='task-items']"
    ],
    "requiredSourceFiles": [
      "source/app/page.tsx",
      "source/components/ProductWorkspace.tsx",
      "source/data/product.ts"
    ],
    "manualFallbackReason": ""
  },
  "mvpContractV2": {
    "artifactTier": "static_mvp",
    "externalDependencyMode": "none",
    "runtimeBoundary": {
      "networkCalls": "none",
      "secrets": "none",
      "externalWrites": "none"
    },
    "claimBoundary": {
      "publicCopyMustSay": [
        "This is a demo using static sample data.",
        "AI-powered features are simulated.",
        "Do not use for managing real-world critical tasks without verifying the source."
      ],
      "publicCopyMustNotSay": [
        "Connects to a live AI model.",
        "Can process any uploaded file.",
        "Guarantees accurate information extraction."
      ]
    },
    "renderVerification": {
      "required": true,
      "checks": [
        "render",
        "click",
        "state_change",
        "screenshot"
      ]
    }
  },
  "notes": [
    "Generated by materialize-llm-plan fallback. Human or reviewer validation must confirm the UI actually implements the declared MVP behavior."
  ]
}
source
import ProductWorkspace from '../components/ProductWorkspace';
import '../styles.css';

export default function Home() {
  return (
    <main>
      <ProductWorkspace />
    </main>
  );
}