github / github/spec-kit

[Preset]: Add NIEM Information Exchanges

オープン
#4,587 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement needs-triage triage-nice-to-have
主要言語
Python
スター
137k
フォーク
12.3k
平均マージ
2日 12時間
マージ済み PR(30日)
159

説明

### Preset ID

niem

### Preset Name

NIEM Information Exchanges

### Version

1.0.1

### Description

Adds evidence-based NIEM exchange modeling to the core, assess, and bugfix processes while preserving their commands, artifacts, and scope.

### Author

mnriem

### Repository URL

https://github.com/mnriem/spec-kit-presets

### Download URL

https://github.com/mnriem/spec-kit-presets/releases/download/niem-v1.0.1/niem.zip

### Documentation URL

https://github.com/mnriem/spec-kit-presets/blob/main/niem/README.md

### License

MIT

### Required Spec Kit Version

>=1.0.4

### Required Extensions (optional)

assess, bug

### Templates Provided

- `spec-template.md` - appends business-level exchange requirements and interoperability acceptance.
- `plan-template.md` - appends NIEM baselines, mapping decisions, message contracts, and an evidence plan.
- `tasks-template.md` - appends requirement-to-mapping-to-task coverage.
- `checklist-template.md` - appends NIEM requirements-quality review topics, not implementation certification.
- `constitution-template.md` - appends semantic ownership, verified reuse, compatibility, and evidence principles.
- `niem-guidance.md` - shared reference for source verification, modeling decisions, scope, and conformance limits.
- `niem-mapping-template.md` - component mapping records for the existing data-model artifact.

### Commands Provided

All 18 use `wrap` composition around their existing core or extension commands:

- `speckit.constitution` - NIEM governance through the existing amendment process.
- `speckit.specify` - business exchange requirements without premature schema design.
- `speckit.clarify` - exchange semantics and acceptance within the existing question budget.
- `speckit.plan` - verified reuse, local extensions, message formats, and evidence planning.
- `speckit.tasks` - traceable, story-based exchange work.
- `speckit.analyze` - read-only cross-artifact consistency review.
- `speckit.checklist` - requirements-quality review without certifying implementation.
- `speckit.implement` - approved mappings and actual validation evidence.
- `speckit.converge` - append-only follow-up tasks for gaps in approved intent.
- `speckit.taskstoissues` - mapping references, task identity, and evidence needs in issue handoffs.
- `speckit.assess.intake` - capture an exchange idea without presupposing NIEM adoption.
- `speckit.assess.research` - investigate fit, authoritative evidence, and counter-evidence.
- `speckit.assess.define` - define the interoperability problem independently of the solution.
- `speckit.assess.shape` - compare bounded NIEM and non-NIEM approaches.
- `speckit.assess.decide` - evidence-qualified go, clarification, or kill decisions.
- `speckit.bug.assess` - investigate exchange defects without changing source or upgrading NIEM.
- `speckit.bug.fix` - surgical fixes preserving established compatibility.
- `speckit.bug.test` - rerun the original reproduction and report actual validation coverage.

### Number of Scripts (optional)

0

### Tags

niem, interoperability, data-modeling, assess, bugfix

### Key Features

- Adds NIEM guidance to existing processes without introducing a new runtime, extension, or bundle.
- Uses a NIEM 6.0 reference baseline while preserving explicitly selected legacy versions and compatibility obligations.
- Distinguishes verified component reuse, proposed local extensions, and unverified candidates using source provenance and namespace identities.
- Preserves command phase boundaries, artifact paths, read-only reviews, and human approval gates.
- Separates requirements quality, model/NDR conformance, schema validity, message validity, and interoperability evidence. This is an experimental independent preset, not an official NIEMOpen product or a conformance certification.
- Includes the MIT license in the preset directory and at the root of the release ZIP; development tests are excluded from the ZIP.

### Testing Checklist

- [x] Preset installs successfully via `specify preset add`
- [x] Template resolution works correctly after installation
- [x] Documentation is complete and accurate
- [x] Tested on at least one real project

Version 1.0.1 was installed from the exact published Download URL into a fresh initialized Copilot skills project using Spec Kit 1.0.4, with the bundled `assess` and `bug` extensions. All 18 effective skills, full composed specification-template output, installed version, and MIT license were checked. A runnable local resource-exchange project passed 20 regression tests covering conversion, round trips, boundaries, and invalid inputs. These are local working-project checks, not production deployments or formal model/NDR/schema validation.

The preset's 11 integration tests also passed, covering manifest/catalog/README consistency, composition, command and skills installation/removal, stacking, missing extension bases, real CLI initialization with Python and Bash helpers, and release archive/license checks:

```bash
python -m unittest discover -s niem/tests -p 'test_niem_preset.py'
```

The published ZIP was checked against the exact merged source for its manifest, README, MIT license, and all 25 declared command/template files.

### Submission Requirements

- [x] Valid `preset.yml` manifest included
- [x] Linked README (Documentation URL) explains how to use this preset and includes a valid `specify preset add ...` command (preferably `specify preset add --from ` using the exact download URL)
- [x] LICENSE file included
- [x] GitHub release created with version tag
- [x] Preset ID follows naming conventions (lowercase-with-hyphens)

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start with the linked NIEM README, preset.yml, and the published download URL, then run python -m unittest discover -s niem/tests -p 'test_niem_preset.py'. Compare the preset's declared commands and templates with the repository's preset expectations, and verify installation, composition, licensing, and archive consistency are preserved.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
developer-experience, tooling
issue の種類
機能追加
難易度
3/5
見積もり時間
1〜2日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
52/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。