qfai 0.2.5 → 0.2.8
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/README.md +1 -1
- package/assets/init/.qfai/README.md +42 -0
- package/assets/init/.qfai/contracts/README.md +61 -0
- package/assets/init/{qfai → .qfai}/contracts/api/api-0001-sample.yaml +3 -0
- package/assets/init/{qfai → .qfai}/contracts/db/db-0001-sample.sql +3 -2
- package/assets/init/.qfai/contracts/ui/ui-0001-sample.yaml +6 -0
- package/assets/init/.qfai/out/README.md +17 -0
- package/assets/init/.qfai/prompts/README.md +32 -0
- package/assets/init/{qfai → .qfai}/prompts/makeBusinessFlow.md +1 -1
- package/assets/init/{qfai → .qfai}/prompts/makeOverview.md +1 -1
- package/assets/init/.qfai/spec/README.md +80 -0
- package/assets/init/.qfai/spec/decisions/ADR-0001.md +9 -0
- package/assets/init/.qfai/spec/decisions/README.md +36 -0
- package/assets/init/.qfai/spec/scenarios/scenarios.feature +6 -0
- package/assets/init/.qfai/spec/spec-0001-sample.md +36 -0
- package/assets/init/root/qfai.config.yaml +8 -8
- package/dist/cli/index.cjs +498 -206
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.d.ts +0 -2
- package/dist/cli/index.mjs +495 -203
- package/dist/cli/index.mjs.map +1 -1
- package/dist/index.cjs +471 -177
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -4
- package/dist/index.d.ts +135 -2
- package/dist/index.mjs +470 -177
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/assets/init/qfai/README.md +0 -6
- package/assets/init/qfai/contracts/ui/ui-0001-sample.yaml +0 -4
- package/assets/init/qfai/spec/decisions/ADR-0001.md +0 -7
- package/assets/init/qfai/spec/scenarios.feature +0 -6
- package/assets/init/qfai/spec/spec-0001-sample.md +0 -29
- package/dist/cli/commands/init.d.ts +0 -8
- package/dist/cli/commands/init.d.ts.map +0 -1
- package/dist/cli/commands/init.js +0 -30
- package/dist/cli/commands/init.js.map +0 -1
- package/dist/cli/commands/report.d.ts +0 -8
- package/dist/cli/commands/report.d.ts.map +0 -1
- package/dist/cli/commands/report.js +0 -83
- package/dist/cli/commands/report.js.map +0 -1
- package/dist/cli/commands/validate.d.ts +0 -10
- package/dist/cli/commands/validate.d.ts.map +0 -1
- package/dist/cli/commands/validate.js +0 -66
- package/dist/cli/commands/validate.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -7
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/lib/args.d.ts +0 -19
- package/dist/cli/lib/args.d.ts.map +0 -1
- package/dist/cli/lib/args.js +0 -107
- package/dist/cli/lib/args.js.map +0 -1
- package/dist/cli/lib/assets.d.ts +0 -2
- package/dist/cli/lib/assets.d.ts.map +0 -1
- package/dist/cli/lib/assets.js +0 -8
- package/dist/cli/lib/assets.js.map +0 -1
- package/dist/cli/lib/failOn.d.ts +0 -5
- package/dist/cli/lib/failOn.d.ts.map +0 -1
- package/dist/cli/lib/failOn.js +0 -10
- package/dist/cli/lib/failOn.js.map +0 -1
- package/dist/cli/lib/fs.d.ts +0 -11
- package/dist/cli/lib/fs.d.ts.map +0 -1
- package/dist/cli/lib/fs.js +0 -91
- package/dist/cli/lib/fs.js.map +0 -1
- package/dist/cli/lib/logger.d.ts +0 -4
- package/dist/cli/lib/logger.d.ts.map +0 -1
- package/dist/cli/lib/logger.js +0 -10
- package/dist/cli/lib/logger.js.map +0 -1
- package/dist/cli/main.d.ts +0 -2
- package/dist/cli/main.d.ts.map +0 -1
- package/dist/cli/main.js +0 -73
- package/dist/cli/main.js.map +0 -1
- package/dist/core/config.d.ts +0 -46
- package/dist/core/config.d.ts.map +0 -1
- package/dist/core/config.js +0 -224
- package/dist/core/config.js.map +0 -1
- package/dist/core/discovery.d.ts +0 -11
- package/dist/core/discovery.d.ts.map +0 -1
- package/dist/core/discovery.js +0 -31
- package/dist/core/discovery.js.map +0 -1
- package/dist/core/fs.d.ts +0 -6
- package/dist/core/fs.d.ts.map +0 -1
- package/dist/core/fs.js +0 -55
- package/dist/core/fs.js.map +0 -1
- package/dist/core/ids.d.ts +0 -5
- package/dist/core/ids.d.ts.map +0 -1
- package/dist/core/ids.js +0 -49
- package/dist/core/ids.js.map +0 -1
- package/dist/core/index.d.ts +0 -11
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -11
- package/dist/core/index.js.map +0 -1
- package/dist/core/report.d.ts +0 -41
- package/dist/core/report.d.ts.map +0 -1
- package/dist/core/report.js +0 -238
- package/dist/core/report.js.map +0 -1
- package/dist/core/types.d.ts +0 -27
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -2
- package/dist/core/types.js.map +0 -1
- package/dist/core/validate.d.ts +0 -4
- package/dist/core/validate.d.ts.map +0 -1
- package/dist/core/validate.js +0 -32
- package/dist/core/validate.js.map +0 -1
- package/dist/core/validators/contracts.d.ts +0 -5
- package/dist/core/validators/contracts.d.ts.map +0 -1
- package/dist/core/validators/contracts.js +0 -157
- package/dist/core/validators/contracts.js.map +0 -1
- package/dist/core/validators/scenario.d.ts +0 -5
- package/dist/core/validators/scenario.d.ts.map +0 -1
- package/dist/core/validators/scenario.js +0 -82
- package/dist/core/validators/scenario.js.map +0 -1
- package/dist/core/validators/spec.d.ts +0 -5
- package/dist/core/validators/spec.d.ts.map +0 -1
- package/dist/core/validators/spec.js +0 -69
- package/dist/core/validators/spec.js.map +0 -1
- package/dist/core/validators/traceability.d.ts +0 -4
- package/dist/core/validators/traceability.d.ts.map +0 -1
- package/dist/core/validators/traceability.js +0 -148
- package/dist/core/validators/traceability.js.map +0 -1
- package/dist/core/version.d.ts +0 -2
- package/dist/core/version.d.ts.map +0 -1
- package/dist/core/version.js +0 -25
- package/dist/core/version.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
package/README.md
CHANGED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# QFAI Project Kit (.qfai)
|
|
2
|
+
|
|
3
|
+
このディレクトリは QFAI の成果物を集約する専用領域です。`.qfai` 配下だけを見れば「何を書くか」「どこから始めるか」が分かる構成にしています。
|
|
4
|
+
|
|
5
|
+
## 最短成功(init → validate → report)
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npx qfai validate --fail-on error --format github --json-path .qfai/out/validate.json
|
|
9
|
+
npx qfai report --json-path .qfai/out/validate.json --out .qfai/out/report.md
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## ディレクトリ概要
|
|
13
|
+
|
|
14
|
+
- `spec/` : 仕様・シナリオ・ADR(意思決定)を置く場所
|
|
15
|
+
- `contracts/` : UI / API / DB 契約を置く場所
|
|
16
|
+
- `prompts/` : 生成プロンプト資産(自動読取はしない)
|
|
17
|
+
- `out/` : `validate` / `report` の出力先(gitignore 推奨)
|
|
18
|
+
|
|
19
|
+
詳細は各 README を参照してください。
|
|
20
|
+
|
|
21
|
+
- `spec/README.md`
|
|
22
|
+
- `spec/decisions/README.md`
|
|
23
|
+
- `contracts/README.md`
|
|
24
|
+
- `prompts/README.md`
|
|
25
|
+
- `out/README.md`
|
|
26
|
+
|
|
27
|
+
## 設定と CI
|
|
28
|
+
|
|
29
|
+
- 設定ファイル: `qfai.config.yaml`(リポジトリ直下)
|
|
30
|
+
- CI テンプレ: `.github/workflows/qfai.yml`
|
|
31
|
+
|
|
32
|
+
## Prompts の使い方(重要)
|
|
33
|
+
|
|
34
|
+
`prompts/` は **人間が手動で使う資産**です。v0.2.6 では自動読取を行いません。
|
|
35
|
+
|
|
36
|
+
例:
|
|
37
|
+
|
|
38
|
+
- Copilot: `.github/copilot-instructions.md` に要旨を転記
|
|
39
|
+
- Claude: `CLAUDE.md` に要旨を転記
|
|
40
|
+
- Codex: `AGENTS.md` に要旨を転記
|
|
41
|
+
|
|
42
|
+
詳細は `prompts/README.md` を参照してください。
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Contracts (UI / API / DB)
|
|
2
|
+
|
|
3
|
+
契約は「システム外部との約束」を明文化する場所です。Scenario または Spec から参照される前提で作成します。
|
|
4
|
+
|
|
5
|
+
## 置くべきファイル
|
|
6
|
+
|
|
7
|
+
- UI: `ui/ui-0001-<slug>.yaml` または `.yml`
|
|
8
|
+
- API: `api/api-0001-<slug>.yaml` / `.yml` / `.json`(OpenAPI)
|
|
9
|
+
- DB: `db/db-0001-<slug>.sql`(ID は `DATA-xxxx`)
|
|
10
|
+
|
|
11
|
+
## 最小例(UI)
|
|
12
|
+
|
|
13
|
+
```yaml
|
|
14
|
+
id: UI-0001
|
|
15
|
+
name: 受注登録画面
|
|
16
|
+
refs:
|
|
17
|
+
- BR-0001
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 最小例(API)
|
|
21
|
+
|
|
22
|
+
```yaml
|
|
23
|
+
openapi: 3.0.0
|
|
24
|
+
info:
|
|
25
|
+
title: Sample API
|
|
26
|
+
version: 0.1.0
|
|
27
|
+
paths:
|
|
28
|
+
/health:
|
|
29
|
+
get:
|
|
30
|
+
operationId: API-0001
|
|
31
|
+
responses:
|
|
32
|
+
"200":
|
|
33
|
+
description: OK
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## 最小例(DB)
|
|
37
|
+
|
|
38
|
+
```sql
|
|
39
|
+
-- DATA-0001
|
|
40
|
+
CREATE TABLE sample_table (
|
|
41
|
+
id INTEGER PRIMARY KEY
|
|
42
|
+
);
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## CI でチェックされること(抜粋)
|
|
46
|
+
|
|
47
|
+
- UI/API: パース失敗は error、ID 未定義は error
|
|
48
|
+
- UI: `UI-xxxx` の ID が必要
|
|
49
|
+
- API: OpenAPI 定義があること、`API-xxxx` の operationId が必要
|
|
50
|
+
- DB: 危険 SQL(DROP/TRUNCATE 等)の警告
|
|
51
|
+
- 共通: ID 形式(`PREFIX-0001`)、定義 ID の重複検知
|
|
52
|
+
|
|
53
|
+
## 依存関係
|
|
54
|
+
|
|
55
|
+
- Scenario → Contracts(UI/API/DATA のいずれかへ接続)
|
|
56
|
+
- Spec → Contracts(参照は許容)
|
|
57
|
+
|
|
58
|
+
## 良い例 / 悪い例
|
|
59
|
+
|
|
60
|
+
- 良い例: `@SC-xxxx` から `UI-xxxx` が参照されている
|
|
61
|
+
- 悪い例: 契約が Scenario から一切参照されない
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Output (.qfai/out)
|
|
2
|
+
|
|
3
|
+
`qfai validate` と `qfai report` の出力先です。
|
|
4
|
+
|
|
5
|
+
## 生成されるファイル
|
|
6
|
+
|
|
7
|
+
- `validate.json` : 検証結果(JSON)
|
|
8
|
+
- `report.md` / `report.json` : レポート
|
|
9
|
+
|
|
10
|
+
## 運用メモ
|
|
11
|
+
|
|
12
|
+
- 原則として **コミットしない** ことを推奨します
|
|
13
|
+
- `.gitignore` への追記例:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
.qfai/out/
|
|
17
|
+
```
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Prompts (手動利用)
|
|
2
|
+
|
|
3
|
+
このディレクトリのプロンプトは **手動で使う資産**です。v0.2.6 では自動読取を行いません。
|
|
4
|
+
|
|
5
|
+
## 目的
|
|
6
|
+
|
|
7
|
+
- Spec から overview / Business Flow を生成するための素材
|
|
8
|
+
- 将来(v0.9)の adapter/emit 実装に備えた配布物
|
|
9
|
+
|
|
10
|
+
## 使い方(例)
|
|
11
|
+
|
|
12
|
+
1. 目的のプロンプトを開く(例: `makeOverview.md`)
|
|
13
|
+
2. そのまま AI エージェントに貼り付ける
|
|
14
|
+
3. 指示された出力先に生成結果を保存する
|
|
15
|
+
|
|
16
|
+
### エージェント別の手動導線(例)
|
|
17
|
+
|
|
18
|
+
- Copilot: `.github/copilot-instructions.md` に要旨を転記
|
|
19
|
+
- Claude: `CLAUDE.md` に要旨を転記
|
|
20
|
+
- Codex: `AGENTS.md` に要旨を転記
|
|
21
|
+
|
|
22
|
+
※ いずれも **自動生成はしません**。必要に応じて人手で同期してください。
|
|
23
|
+
|
|
24
|
+
## 出力先の例
|
|
25
|
+
|
|
26
|
+
- Overview: `docs/specs/overview.md`
|
|
27
|
+
- Business Flow: `docs/flows/bf-0001-<slug>.md`
|
|
28
|
+
|
|
29
|
+
## CI との関係
|
|
30
|
+
|
|
31
|
+
- プロンプト自体は CI の検査対象ではありません
|
|
32
|
+
- 生成物をレビューし、Spec/Scenario/Contracts と整合しているかを確認してください
|
|
@@ -5,7 +5,7 @@ Spec群を読み、Specに明示されている情報のみを根拠として、
|
|
|
5
5
|
|
|
6
6
|
## Inputs
|
|
7
7
|
|
|
8
|
-
- 対象:
|
|
8
|
+
- 対象: .qfai/spec/spec-0001-\*.md 形式のファイル(4 桁の数字 + ハイフン + slug。実際のパターン: `spec-\d{4}-[^/\\]+\.md`。存在するもの全て)
|
|
9
9
|
|
|
10
10
|
## Output (Option)
|
|
11
11
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## Inputs
|
|
6
6
|
|
|
7
|
-
- 対象:
|
|
7
|
+
- 対象: .qfai/spec/spec-0001-\*.md 形式のファイル(4 桁の数字 + ハイフン + slug。実際のパターン: `spec-\d{4}-[^/\\]+\.md`。存在するもの全て)
|
|
8
8
|
|
|
9
9
|
## Output
|
|
10
10
|
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Spec / Scenario / Decisions
|
|
2
|
+
|
|
3
|
+
このディレクトリは「仕様(Spec)」「シナリオ(Scenario)」「意思決定(ADR)」の入口です。
|
|
4
|
+
|
|
5
|
+
## 置くべきファイル
|
|
6
|
+
|
|
7
|
+
- Spec: `spec-0001-<slug>.md`(必須)
|
|
8
|
+
- Scenario: `scenarios/*.feature`
|
|
9
|
+
- Decisions: `decisions/ADR-0001.md` など
|
|
10
|
+
|
|
11
|
+
## 最小例(Spec)
|
|
12
|
+
|
|
13
|
+
```md
|
|
14
|
+
# SPEC-0001: 注文登録の最小要件
|
|
15
|
+
|
|
16
|
+
## 背景
|
|
17
|
+
|
|
18
|
+
- 例: 受注の登録ルールを明文化し、手戻りを減らすため
|
|
19
|
+
|
|
20
|
+
## スコープ
|
|
21
|
+
|
|
22
|
+
- 例: 新規受注の登録と承認
|
|
23
|
+
|
|
24
|
+
## 非ゴール
|
|
25
|
+
|
|
26
|
+
- 例: 既存受注の履歴移行は対象外
|
|
27
|
+
|
|
28
|
+
## 用語
|
|
29
|
+
|
|
30
|
+
- 例: 受注 = 顧客からの注文情報
|
|
31
|
+
|
|
32
|
+
## 前提
|
|
33
|
+
|
|
34
|
+
- 例: 承認者は1名以上配置されている
|
|
35
|
+
|
|
36
|
+
## 決定事項
|
|
37
|
+
|
|
38
|
+
- 例: 承認は1段階で完了とする
|
|
39
|
+
|
|
40
|
+
## 業務ルール
|
|
41
|
+
|
|
42
|
+
- [BR-0001] 受注は承認者が承認するまで確定しない
|
|
43
|
+
- [BR-0002] 承認済みの受注のみ出荷依頼に進める
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## BR の書き方(重要)
|
|
47
|
+
|
|
48
|
+
- **1 ルール = 1 BR** を守る
|
|
49
|
+
- 小項目がある場合は **別 BR を採番**する(`BR-0001.1` は使わない)
|
|
50
|
+
- 参照は常に BR ID を使う
|
|
51
|
+
|
|
52
|
+
## Scenario の最小要件
|
|
53
|
+
|
|
54
|
+
- `@SC-xxxx` / `@SPEC-xxxx` / `@BR-xxxx` をタグで明示
|
|
55
|
+
- Scenario は複数の SPEC を参照してよい(`@SPEC-xxxx` を複数記載可能)
|
|
56
|
+
- `Given / When / Then` を含める
|
|
57
|
+
- UI/API/DATA 契約に接続する(トレーサビリティのエラー回避)
|
|
58
|
+
|
|
59
|
+
## CI でチェックされること(抜粋)
|
|
60
|
+
|
|
61
|
+
- Spec: 必須セクションの有無、SPEC/BR ID の存在、ID 形式(`PREFIX-0001`)、Contract 参照の実在性
|
|
62
|
+
- Scenario: SC/SPEC/BR の参照、Given/When/Then の有無、参照IDの実在性
|
|
63
|
+
- Traceability: BR→SC、SC→契約(UI/API/DATA)の接続、BR の所属 SPEC 整合
|
|
64
|
+
- IDs: 定義 ID の重複検知(Spec/Scenario/Contracts)
|
|
65
|
+
|
|
66
|
+
## 依存関係
|
|
67
|
+
|
|
68
|
+
- Spec → Scenario → Contracts
|
|
69
|
+
- Spec → Contracts(参照は許容)
|
|
70
|
+
- Decisions(ADR)→ Spec / BR
|
|
71
|
+
|
|
72
|
+
## 良い例 / 悪い例
|
|
73
|
+
|
|
74
|
+
- 良い例: `BR-0001` が Scenario で参照され、UI/API/DATA のいずれかに接続している
|
|
75
|
+
- 悪い例: Spec に `SC-xxxx` を書く(Spec は SC を参照しない)
|
|
76
|
+
|
|
77
|
+
## 良い運用 / 悪い運用
|
|
78
|
+
|
|
79
|
+
- 良い運用: Spec/Scenario/Contracts を同じ ID でつなぐ
|
|
80
|
+
- 悪い運用: Spec の BR が Scenario に出てこない(孤立)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# ADR (Architecture Decision Record)
|
|
2
|
+
|
|
3
|
+
ADR は「なぜその判断をしたか」を記録するための軽量な意思決定ログです。
|
|
4
|
+
|
|
5
|
+
## いつ書くか
|
|
6
|
+
|
|
7
|
+
- 仕様の前提や制約が変わるとき
|
|
8
|
+
- 技術選定や設計方針を決めたとき
|
|
9
|
+
- 重要なトレードオフがあるとき
|
|
10
|
+
|
|
11
|
+
## 最小例
|
|
12
|
+
|
|
13
|
+
```md
|
|
14
|
+
# ADR-0001: 承認フローは1段階にする
|
|
15
|
+
|
|
16
|
+
- Status: Proposed
|
|
17
|
+
- Context: 承認者を増やすと運用が複雑になる
|
|
18
|
+
- Decision: v0.2.6 では1段階の承認に固定する
|
|
19
|
+
- Consequences: 多段承認が必要な場合は拡張が必要
|
|
20
|
+
- Related: BR-0001, SPEC-0001
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## CI でチェックされること(抜粋)
|
|
24
|
+
|
|
25
|
+
- ID 形式(`PREFIX-0001`。ADR を含む)
|
|
26
|
+
- 参照 ID の整合性(トレーサビリティ)
|
|
27
|
+
|
|
28
|
+
## 依存関係
|
|
29
|
+
|
|
30
|
+
- ADR は Spec / BR と一緒に参照される
|
|
31
|
+
- Scenario/Contracts から参照されることは少ない
|
|
32
|
+
|
|
33
|
+
## 良い例 / 悪い例
|
|
34
|
+
|
|
35
|
+
- 良い例: Context/Decision/Consequences が簡潔に書かれている
|
|
36
|
+
- 悪い例: Decision が空のまま放置されている
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# SPEC-0001: 注文登録の最小仕様(サンプル)
|
|
2
|
+
|
|
3
|
+
> このテンプレは **最小例** です。実際の仕様に合わせて書き換えてください。
|
|
4
|
+
|
|
5
|
+
## 背景
|
|
6
|
+
|
|
7
|
+
- 例: 受注の登録ルールを統一し、手戻りを減らす
|
|
8
|
+
|
|
9
|
+
## スコープ
|
|
10
|
+
|
|
11
|
+
- 例: 新規受注の登録と承認
|
|
12
|
+
|
|
13
|
+
## 非ゴール
|
|
14
|
+
|
|
15
|
+
- 例: 既存受注の履歴移行は対象外
|
|
16
|
+
|
|
17
|
+
## 用語
|
|
18
|
+
|
|
19
|
+
- 例: 受注 = 顧客からの注文情報
|
|
20
|
+
|
|
21
|
+
## 前提
|
|
22
|
+
|
|
23
|
+
- 例: 承認者は1名以上配置されている
|
|
24
|
+
|
|
25
|
+
## 決定事項
|
|
26
|
+
|
|
27
|
+
- 例: 承認は1段階で完了とする
|
|
28
|
+
|
|
29
|
+
## 業務ルール
|
|
30
|
+
|
|
31
|
+
- [BR-0001] 受注は承認者が承認するまで確定しない
|
|
32
|
+
|
|
33
|
+
### 書き方メモ
|
|
34
|
+
|
|
35
|
+
- BR は **原子ルール** として採番する(`BR-0001.1` は使わない)
|
|
36
|
+
- Spec では **SC ID** を参照しない
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
paths:
|
|
2
|
-
specDir: qfai/spec
|
|
3
|
-
decisionsDir: qfai/spec/decisions
|
|
4
|
-
scenariosDir: qfai/spec
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
dataContractsDir: qfai/contracts/db
|
|
2
|
+
specDir: .qfai/spec
|
|
3
|
+
decisionsDir: .qfai/spec/decisions
|
|
4
|
+
scenariosDir: .qfai/spec/scenarios
|
|
5
|
+
contractsDir: .qfai/contracts
|
|
6
|
+
uiContractsDir: .qfai/contracts/ui
|
|
7
|
+
apiContractsDir: .qfai/contracts/api
|
|
8
|
+
dataContractsDir: .qfai/contracts/db
|
|
10
9
|
srcDir: src
|
|
11
10
|
testsDir: tests
|
|
12
11
|
validation:
|
|
@@ -24,6 +23,7 @@ validation:
|
|
|
24
23
|
brMustHaveSc: true
|
|
25
24
|
scMustTouchContracts: true
|
|
26
25
|
allowOrphanContracts: false
|
|
26
|
+
unknownContractIdSeverity: error
|
|
27
27
|
output:
|
|
28
28
|
format: text
|
|
29
29
|
jsonPath: .qfai/out/validate.json
|