Add GET /version endpoint returning version from package.json #15
Labels
No labels
state:BREAKDOWN
state:DONE
state:IMPLEMENTING
state:NEEDS_INFO
state:NEW
state:READY_TO_IMPLEMENT
state:REFINING
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jesper/PingAPI#15
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Specification
Metadata:
/repos/jesper/PingAPImainContext
PingAPI has no way to report its own version. Operators and monitoring tools need a version endpoint to verify which build is deployed, detect stale deployments, and automate rollout checks.
Goal
Add a GET /version endpoint that reads the version field from package.json and returns it as JSON. This is a new read-only route added to the existing Express server -- no new dependencies, no breaking changes.
Scope
In scope
Out of scope
Requirements
Acceptance Criteria (Gherkin)
Architecture alignment
Code structure
Security and compliance
Test strategy
Test layers
Scenario mapping
Quality gates
eslint/ruff/clippydepending on stack)tsc --noEmit/mypy/pyrightif applicable)Engineering principles and DoD additions
Definition of Done
Definition of Ready
⚠️ Blocking Questions
The refinement pipeline identified blocking questions that need answers before proceeding:
Questions (Human in the loop)
Blocking questions
Question: What specific problem does "Specification" solve? What is the current state that needs to change?
Answer:
Question: What are the concrete requirements for "Specification"? List at least 3 specific, verifiable conditions.
Answer:
Question: What should be in scope vs out of scope for this work? Be specific about deliverables.
Answer:
Question: What is in scope for this work? Please list specific deliverables.
Answer:
Notes
Next steps:
vault67 answer 15✅ Answers Provided
State changed from NEEDS_INFO to REFINING. The refinement pipeline can now re-run.
Next steps:
Run:
vault67 refine 15✅ Ready for Implementation
The specification has passed all refinement criteria.
Promptpack (click to expand)
Implementation Prompt Pack (for Gas Town)
Objective
Add a GET /version endpoint that reads the version field from package.json and returns it as JSON. This is a new read-only route added to the existing Express server -- no new dependencies, no breaking changes.
Context
PingAPI has no way to report its own version. Operators and monitoring tools need a version endpoint to verify which build is deployed, detect stale deployments, and automate rollout checks.
Scope
In scope
Out of scope
Acceptance criteria (Gherkin, must satisfy)
Constraints and guardrails
Architecture alignment
Code structure guidance
Security/compliance constraints
Repo instructions
Base ref
How to build (golden command)
docker compose build
How to test (golden command)
docker compose run --rm app pytest
Test strategy
eslint/ruff/clippydepending on stack)tsc --noEmit/mypy/pyrightif applicable)Verification checklist
Expected output
Next steps:
Run:
vault67 implement 15🚧 Implementation Started
Timestamp: 2026-03-06T10:53:14Z
Executor: gastown
Status: Handed off to Gas Town
Instructions for implementer:
Gas Town handoff:
Provide the polecat with:
🤖 farm33 — Implementation started (worker solo, model: qwen2.5-coder:14b)
🤖 farm33 — Implementation pushed as draft PR
Draft PR: #16
Reverting to READY_TO_IMPLEMENT for retry.