- Enhanced GET /api/v1/project/{project}/{package}/tags with pagination,
search, sort, order parameters and artifact metadata
- Added GET /api/v1/project/{project}/{package}/tags/{tag_name} for
single tag with full artifact details
- Added GET /api/v1/project/{project}/{package}/tags/{tag_name}/history
for tag change history
- Added GET /api/v1/project/{project}/{package}/artifacts for listing
all artifacts in a package with filtering by content_type and date range
- Enhanced GET /api/v1/artifact/{artifact_id} to include list of
packages/tags referencing the artifact
- Added new schemas: TagDetailResponse, TagHistoryResponse,
ArtifactDetailResponse, ArtifactTagInfo, PackageArtifactResponse
- Enhanced GET /api/v1/project/{project}/{package}/tags with pagination,
search, sort, order parameters and artifact metadata
- Added GET /api/v1/project/{project}/{package}/tags/{tag_name} for
single tag with full artifact details
- Added GET /api/v1/project/{project}/{package}/tags/{tag_name}/history
for tag change history
- Added GET /api/v1/project/{project}/{package}/artifacts for listing
all artifacts in a package with filtering by content_type and date range
- Enhanced GET /api/v1/artifact/{artifact_id} to include list of
packages/tags referencing the artifact
- Added new schemas: TagDetailResponse, TagHistoryResponse,
ArtifactDetailResponse, ArtifactTagInfo, PackageArtifactResponse
- Grove → Project
- Tree → Package
- Fruit → Artifact
- Graft → Tag
- Cultivate → Upload
- Harvest → Download
Updated across:
- Backend models, schemas, and routes
- Frontend types, API client, and components
- README documentation
- API endpoints now use /project/:project/packages pattern
- Backend: Python 3.12 with FastAPI, SQLAlchemy, boto3
- Frontend: React 18 with TypeScript, Vite build tooling
- Updated Dockerfile for multi-stage Node + Python build
- Updated CI pipeline for Python backend
- Removed old Go code (cmd/, internal/, go.mod, go.sum)
- Updated README with new tech stack documentation
- Embed migrations/001_initial.sql into the binary
- Run migrations automatically when connecting to database
- Uses CREATE TABLE IF NOT EXISTS for idempotent execution
- Changed module from github.com/bsf/orchard to
gitlab.global.bsf.tools/esv/bsf/bsf-integration/orchard/orchard-mvp
- Updated all internal import paths to match
- Helm chart with PostgreSQL, MinIO, Redis as optional subcharts
- Production and external infrastructure value files
- HPA, Ingress, and health probe support
- GitLab CI pipeline using Buildah for container builds
- Multi-stage pipeline: test, build, publish
- Go server with Gin framework
- PostgreSQL for metadata storage
- MinIO/S3 for artifact storage with SHA256 content addressing
- REST API for grove/tree/fruit operations
- Web UI for managing artifacts
- Docker Compose setup for local development