Squashed '.vendor/stage-pilot/' changes from 7ab085e..551777b
551777b feat: add interface contract and data model baseline support to bootstrap-baseline f17e086 feat: add bootstrap seed file support to bootstrap-baseline skill be85338 feat: introduce lightweight change path, change-req skill, and release feedback loop 949bb40 docs(skill): new-discovery 병렬 Discovery 및 active-cycle 처리 규칙 강화 7f96130 docs: fix draft-req skill template paths 94b1445 diff --git a/.github/skills/draft-batch-design/SKILL.md b/.github/skills/draft-batch-design/SKILL.md index 5f87d00..944e075 100644 --- a/.github/skills/draft-batch-design/SKILL.md +++ b/.github/skills/draft-batch-design/SKILL.md @@ -1,6 +1,6 @@ --- name: draft-batch-design -description: "Use when: drafting the design document for an existing batch, running /draft-batch-design with a BAT ID, filling docs/batches/<BAT_ID>/design.md, or recording architecture and interface decisions before implementation." +description: "Use when: drafting the design document for an existing batch, running /draft-batch-design with a BAT ID, filling docs/batches/<BAT_ID>/design.md, recording architecture and interface decisions before implementation, or planning updates to docs/project-structure.md and docs/runtime-flows.md." argument-hint: "예: bat-001 또는 docs/batches/bat-001_20260424_scaffold" user-invocable: true --- @@ -9,27 +9,43 @@ user-invocable: true d1ce3ce 프로세스 완전 변경 git-subtree-dir: .vendor/stage-pilot git-subtree-split: 551777bc7009ee133fbaab1267ca324f1dc3c6bb
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
# Sample Host Project Interface Contract
|
||||
|
||||
- Baseline Mode: declared
|
||||
- Baseline Seed: .stagepilot/bootstrap/baseline.yaml
|
||||
- Status: confirmed
|
||||
- Owner: Platform Team
|
||||
- Last Updated (KST): 2026-04-30 16:30
|
||||
- Source Discovery / Batch: bootstrap-baseline
|
||||
- Primary Runtime: api-service
|
||||
|
||||
## Project Summary
|
||||
- Python-based API service for curated market data analysis.
|
||||
|
||||
## Primary Domain
|
||||
- financial analytics
|
||||
|
||||
## Purpose
|
||||
- This document captures the initial interface contract baseline after StagePilot bootstrap.
|
||||
- It provides a shared reference for future REQ, design, implementation, and verification work.
|
||||
|
||||
## Scope
|
||||
- Covers the planned API and job interfaces exposed by the sample host project.
|
||||
- Does not duplicate detailed acceptance criteria or generated OpenAPI/schema artifacts.
|
||||
|
||||
## Interface Summary
|
||||
|
||||
- HTTP market data API :: serve curated market data and derived analytics to clients
|
||||
- Refresh job command :: update stored market data snapshots from upstream sources
|
||||
|
||||
## Interface: `HTTP market data API`
|
||||
|
||||
- Type: http-api
|
||||
- Consumers / Producers: internal dashboards and downstream service clients
|
||||
- Purpose: serve curated market data and derived analytics to clients
|
||||
- Stability: experimental
|
||||
|
||||
### Inputs
|
||||
|
||||
- `GET /markets/{symbol}` :: request the current curated snapshot for a symbol
|
||||
- `GET /analytics/{symbol}` :: request derived analytics for a symbol
|
||||
|
||||
### Outputs
|
||||
|
||||
- JSON market snapshot payload :: current normalized market data for the requested symbol
|
||||
- JSON analytics payload :: derived analytics and summary metrics for the requested symbol
|
||||
|
||||
### Error Contract
|
||||
|
||||
- `404 not_found` :: symbol is not available in the curated dataset
|
||||
- `503 upstream_unavailable` :: refreshed data is temporarily unavailable
|
||||
|
||||
### Compatibility Rules
|
||||
|
||||
- response payload changes should remain backward compatible within the same API version
|
||||
|
||||
## Interface: `Refresh job command`
|
||||
|
||||
- Type: cli
|
||||
- Consumers / Producers: operators and scheduled automation
|
||||
- Purpose: update stored market data snapshots from upstream sources
|
||||
- Stability: internal
|
||||
|
||||
### Inputs
|
||||
|
||||
- `python -m src.jobs.refresh_market_data` :: trigger a refresh of curated market data snapshots
|
||||
|
||||
### Outputs
|
||||
|
||||
- refreshed local snapshot artifacts :: normalized data persisted for later API reads
|
||||
|
||||
### Error Contract
|
||||
|
||||
- non-zero exit code :: refresh failed and data should be treated as stale
|
||||
|
||||
### Compatibility Rules
|
||||
|
||||
- command arguments and exit-code semantics should remain stable for automation callers
|
||||
|
||||
## Shared Constraints
|
||||
|
||||
- all interfaces assume symbol identifiers are validated before persistence or response rendering
|
||||
- refresh failures must not silently overwrite previously known-good snapshots
|
||||
|
||||
## Current Gaps / Planned Changes
|
||||
|
||||
- authentication and authorization rules are not defined yet
|
||||
- API versioning strategy is still undecided
|
||||
|
||||
## Update Triggers
|
||||
|
||||
- Update this document when an externally visible API, event, CLI, or file contract changes.
|
||||
- Update this document when a batch changes compatibility, validation, or error behavior.
|
||||
- Update this document when a new external consumer or producer is introduced.
|
||||
|
||||
## Change Log
|
||||
|
||||
- 2026-04-30: bootstrap-baseline created the initial interface contract baseline from declared project inputs.
|
||||
Reference in New Issue
Block a user