[Feature]: Add `specify init --dry-run` preview
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Bắt đầu từ lệnh specify init hiện có và lần theo đường đi phân giải và lập kế hoạch của lệnh, vì issue không nêu tệp hoặc test nào. So sánh việc lập kế hoạch trong dry-run với một lần khởi tạo thực tế, sau đó bổ sung phạm vi kiểm thử hồi quy cho đầu ra dễ đọc đối với con người và đầu ra JSON, bao gồm một assertion xác nhận không có thao tác ghi nào; hoàn tất khi tất cả các nguồn artifact được liệt kê và các kết quả mở rộng URL đều được thể hiện mà không có thay đổi nào trên hệ thống tệp.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Context
This issue supersedes #1035, which requested specify init . --dry-run and was automatically closed for inactivity rather than resolved.
specify init can merge into an existing directory with --force, potentially changing generated project artifacts. Users need a reliable way to inspect the exact initialization plan before allowing writes.
Proposal
Add:
specify init --dry-run
The dry-run must use the same resolution and planning path as a real initialization, but perform no project filesystem mutations. It should preview the outcome for the requested directory and the selected integration, script type, preset, and extensions.
Expected output
For every planned artifact, report:
- action:
create,overwrite,preserve,skip, orconflict; - project-relative path;
- provenance: core, integration, preset, workflow, or extension.
Provide a human-readable summary and --json output for CI/tooling.
Acceptance criteria
specify init --dry-runnever creates, modifies, deletes, or registers project files.- Its plan matches a subsequent real
specify initinvocation with the same options. - Existing-directory conflicts are reported without needing
--force. - The preview accounts for core assets, integrations, presets, bundled/local extensions, and the bundled workflow.
- URL extensions are not installed during preview; any unresolved/download-required result is reported explicitly.
- Human-readable and JSON output have regression coverage, including a no-write assertion.
Non-goals
- Running coding-agent commands or workflows.
- Replacing the existing
specify workflow run --dry-runbehavior.
- Ngôn ngữ chính
- Python
- Star
- 138k
- Fork
- 12.4k
- Merge trung bình
- 3 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 136
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/spec-kit
-
triage-can-wait
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
enhancement needs-triage triage-can-wait
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
-
bundle-submission needs-info triage-can-wait validation-failed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
author-awaiting enhancement needs-triage preset-submission triage-can-wait validation-failed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
author-awaiting enhancement extension-submission needs-triage triage-can-wait validation-failed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Tất cả issue của github/spec-kit
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
use-agent-os/agent-os#3314 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
BasedHardware/omi#15662 · 1 bình luận ·
-
documentation help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
AiursoftWeb/AnduinOS-2#19 ·