Skip to content

Task Detail Document Creation Guide

本ガイドは、各ソフトウェアコンポーネントの backlog/tasks/ 配下に作成する実装タスク詳細ファイル(SPEC-XXX-Y.md)の記述内容とMarkdownテンプレートを定義するものです。

Rules & Section Guidelines

1. ID命名・作成・分割ルール

  • 実装タスク ID / ファイル名: 対応する SPEC ID にサブ ID を付与(例: SPEC-001-1, SPEC-001-2)。
  • 初期作成: 実装計画作成時は原則 1つの機能仕様書に対し1つのタスク詳細ファイル (例: SPEC-001-1.md)を生成。複雑化・粒度拡大時に事後分割可能。
  • SPEC変更に伴う追番: SPEC内容が変更・追記された場合、新たなタスク詳細ファイル ID は 既存サブ ID の次の連番 (例: SPEC-001-3 がある場合は SPEC-001-4)を採番。

2. フロントマターとステータス管理

  • 標準項目(name, description, timestamp, ai)に加え、status, reason, review キーを記述。
  • ステータス値(status)、理由種別(reason)、レビューメタデータ(review)、ライフサイクル遷移、および台帳同期ルールについては、document-status-guide.md を参照してください。

3. 必須セクション構成

  1. 概要: タスク全体の概要。
  2. 目的: タスクの目的・達成ゴール。
  3. 実装内容: 作業項目全体に対する実装方針・内容概要。
  4. 作業: 個別の作業項目を WI-<no>(例: WI-1, WI-2)形式で定義。
  5. Acceptance Criteria: 受入条件を AC-<no>(例: AC-1, AC-2)形式で定義し、チェックリスト項目(- [ ])として記述。
  6. Verification: 各 AC-<no> に対応する具体的な検証内容・手順・方法を記述。

Template

以下はタスク詳細ファイル(SPEC-001-1.md)を作成する際の標準Markdownテンプレートです。

markdown
---
name: SPEC-001-1.md
description: <タスクの1行概要>
timestamp: YYYY-MM-DD
ai: ai-coauthored
status: DRAFT # DRAFT | REVIEW:DRAFT | TODO | WIP | REVIEW:WIP | DONE | CLOSE
reason: feature # feature | defect | security | spec-change | investigation | performance | refactor | ops
review:
  result: "" # ACCEPTED | REJECTED
  timestamp: "" # YYYY-MM-DD
  reason: "" # REJECTED時の1行理由サマリー
---

# Task: SPEC-001-1

## 概要

<タスク全体の概要を記述します。>

## 目的

<タスクを実施する目的や達成すべきゴールを記述します。>

## 実装内容

<すべての作業項目に対する全体的な実装方針・概要を記述します。>

## 作業

### WI-1: トークン生成ヘルパーモジュールの作成

-   JWTトークンをエンコード・デコードするユーティリティ関数を実装する。

### WI-2: バリデーション処理の実装

-   リクエストヘッダーのBearerトークンを検証する処理を追加する。

## Acceptance Criteria

### AC-1: トークン生成と検証の正常動作 (WI-1, WI-2 に対応)

- [ ] 有効期限内のJWTトークンが正しく生成・検証されること。

### AC-2: 不正トークンのエラーハンドリング (WI-2 に対応)

- [ ] 期限切れまたは改ざんされたトークンで 401 Unauthorized が返却されること。

## Verification

### AC-1 の検証

-   単体テスト(`test_token_generate`)を実行し成功すること。
-   有効なトークンでのリクエスト検証が成功すること。

### AC-2 の検証

-   期限切れトークンによる検証テスト(`test_token_expired`)を実行し 401 が返ることを確認すること。