github / github/spec-kit

[Preset]: Add NIEM Information Exchanges

Đang mở
#4,587 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement needs-triage triage-nice-to-have
Ngôn ngữ chính
Python
Star
137k
Fork
12.3k
Merge trung bình
2 ngày 12 giờ
Pull request đã merge (30 ngày)
159

Mô tả

### 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)

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
developer-experience, tooling
Loại issue
Tính năng
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
52/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.