Releases: k-electron/speckitplus
Releases · k-electron/speckitplus
Release list
v1.1.1
Fixed
- Direct Pairwise File
mtimeComparison:- Replaced historical transition event timestamp lookup in
detect_artifact_drift()with direct filesystem modification time comparison (os.path.getmtime) betweenspec.mdandplan.md, and betweenplan.mdandtasks.md. - Resolves false-positive backwards drift advisories where out-of-band edits to downstream artifacts (e.g. during
/speckit-analyzeremediation) previously triggered spurious warnings claiming upstream artifacts were newer. - Dynamically clears existing
drift_advisorytonullwhen downstream artifacts are updated to be synchronized with or newer than upstream files. - Incorporated a
1.0sclock-skew threshold buffer to accommodate sub-second filesystem timestamp precision differences and execution jitter.
- Replaced historical transition event timestamp lookup in
- Terminal Phase Drift Immunity & Phase Latch Prevention:
- Guarded terminal and completion phases (
CONVERGED,VERIFIED,DECIDED_GO,DECIDED_KILL) incompute_next_action()against drift-induced next action overrides. - Features with 100% completed tasks at
CONVERGEDnow consistently reportCompleterather than latching into/speckit-plan.
- Guarded terminal and completion phases (
- Codebase Pruning:
- Removed unreferenced
_find_completed_timestamphelper function from the lifecycle engine.
- Removed unreferenced
v1.1.0
Added
- Dynamic Title Resolution & Post-Hook Synchronization:
- Automatically infers canonical human-readable titles from
# Feature Specification: <Title>inspec.md(and primary headings in bug reports and assessment intakes). - Added
PLACEHOLDER_TOKENSfilter to ignore template placeholders ([FEATURE NAME],[FEATURE_TITLE],UNTITLED), falling back to clean humanized slugs. - Synchronizes finalized titles into
lifecycle.mdfrontmatter and markdown headings onafter_specifypost-hook and during downstream milestone completions. - Automatically updates
.specify/lifecycle-overview.mdwith synchronized titles across all tracks.
- Automatically infers canonical human-readable titles from
- Continuous Title Drift Protection:
- Dynamically detects and adopts title renames in
spec.mdduring clarify, plan, or manual edits without incrementingrevision_countor mutating transition histories.
- Dynamically detects and adopts title renames in
- Safe Pre-Hook Feature Bootstrapping:
- Detects when
before_specifyruns without an explicit target directory while.specify/feature.jsonreferences an already-converged feature, safely bypassing pre-hook mutation with an informational notice to prevent corrupting historical artifacts.
- Detects when
- Runtime Permission Self-Healing & Package Hardening:
- Pre- and post-execution hooks detect and restore missing executable permissions (
chmod +x) onscripts/lifecycle-engine.pyon first run, resolving an upstream Spec Kit CLI archive extraction edge case that only restores.shfiles. scripts/package-release.shnormalizes file permissions (0755) on all runtime scripts before bundling distribution archives.- Workspace discovery engine ignores
.specify/extensions/to prevent installed extensions from polluting repository lifecycle metrics.
- Pre- and post-execution hooks detect and restore missing executable permissions (
v1.0.1
Fixed
- Spec Kit CLI Hook Registration:
- Moved
hooksmapping to the top level ofextension.yml(while retainingprovides.hooksfor dual compatibility), ensuringspecify extension addandspecify extension updatecorrectly register all 34 pre- and post-execution hooks (Hooks: 34). - Updated
extension-manifest.schema.jsoncontract to formally declare top-levelhooksmapping. - Confirmed seamless in-place upgrade path from
v1.0.0preserving all existinglifecycle.mddocuments, task histories, and workspace configurations.
- Moved
v1.0.0
Added
- Dual-Engine Lifecycle Tracking Architecture:
- Active Pre/Post Hooks: Intercepts Spec Kit command invocations (
specify,clarify,checklist,plan,tasks,taskstoissues,analyze,implement,converge, bug workflows, and idea assessments) to log phase transitions, execution start/completion timestamps, and exit codes. - Passive Out-of-Band Sensing: Continuously detects manual editor edits, conversational agent revisions, and task checkbox changes across monitored artifacts (
spec.md,plan.md,tasks.md, etc.) without requiring explicit command invocations.
- Active Pre/Post Hooks: Intercepts Spec Kit command invocations (
- Living State Artifacts (
lifecycle.md):- Automatically provisions and updates a
lifecycle.mddocument in every feature (specs/###-*/), bug triage (.specify/bugs/<slug>/), and idea assessment (.specify/assessments/<slug>/) directory. - Generates machine-readable YAML frontmatter, human-readable milestone summaries, dynamic progress metrics, and interactive Mermaid state diagrams.
- Automatically provisions and updates a
- Multi-Track SDLC Support:
- Feature Track (
SPECIFIED,CLARIFIED,CHECKLISTED,PLANNED,TASKED,ISSUES_SYNCED,ANALYZED,IMPLEMENTING,CONVERGED). - Bug Triage Track (
ASSESSED,FIXED,VERIFIED,ESCALATED_TO_FEATURE). - Idea Assessment Track (
INTAKE,RESEARCHED,DEFINED,SHAPED,DECIDED_GO,DECIDED_KILL). - Extensible Custom Open Track with dynamic phase registration.
- Feature Track (
- Crash & Interruption Detection:
- Pre-command hook marks runs as
IN_PROGRESSwith command metadata and timestamps. - Post-hook records exit codes and milestone outcomes.
- Incomplete or crashed sessions are automatically surfaced with actionable recovery guidance on subsequent runs or status checks.
- Pre-command hook marks runs as
- Task Checkbox Progress Tracking:
- Real-time scanning of
- [ ]and- [x]markdown task checkboxes intasks.md. - Automatic calculation of completed, total, and percentage progress, dynamically updating lifecycle sub-status.
- Real-time scanning of
- Soft Drift Advisory:
- Non-destructive revision tracking when upstream specifications or plans are modified after downstream work has begun.
- Preserves downstream artifacts while issuing clear drift advisories recommending review.
- State Keeper & Deviation Explainer:
- Validates command execution sequence against track-specific state machines.
- Generates non-blocking deviation explanations and next recommended actions when commands execute out of expected sequence.
- Repository-Wide Workspace Overview Dashboard:
- Compiles an aggregated lifecycle status dashboard across all active and completed tracks into
.specify/lifecycle-overview.md. - Provides quick-glance metrics, track status tables, and next actions.
- Compiles an aggregated lifecycle status dashboard across all active and completed tracks into
- Spec Kit Slash Commands:
/speckit-lifecycle-status(speckit.lifecycle.status): Inspects active state, progress, drift notices, and next recommended action. Supports--dirand--json./speckit-lifecycle-overview(speckit.lifecycle.overview): Recompiles and prints the workspace overview dashboard. Supports--all,--output, and--json.
- Packaging & Configuration:
- Conforms to Spec Kit Extension Manifest Schema 1.0 (
extension.yml) and Lifecycle Artifact Schema 1.0. - Ships with
config-template.ymlfor customizable drift thresholds, monitored artifacts, overview paths, and Mermaid rendering. - Supports
--devlocal installation,--from <archive-url>remote installation, and community catalog distribution.
- Conforms to Spec Kit Extension Manifest Schema 1.0 (
- Zero-Dependency Core:
- Implemented entirely with Python 3 standard library and POSIX shell scripts; requires no third-party packages or runtime compilers.