docs/specs/20260710-130947-agent-feature.mdadded
---
spec: agent-feature
status: ready
owner: feature-pipeline-agent
related-routes:
files:
  - routes
  - controller
  - validator
  - service
---

# agent-feature

## Goal

Adds PATCH /api/v2/assets/{assetId} to API2, allowing partial (RFC 7396
merge-patch) updates to the scalar fields of an Asset (currently only
the Name field). Authorized using the existing project Asset-edit role;
no new permissions are introduced. Note: Asset is project-scoped in
Postgres, so the endpoint is implemented under the project-scoped path
/api/v2/projects/{projectId}/assets/{assetId} to resolve ProjectShardId.


## Behavior changes

- PATCH /api/v2/projects/{projectId}/assets/{assetId}

## Acceptance criteria

- [ ] The behavior described above is implemented on the listed files.
- [ ] Existing behavior is unchanged when the new feature is not exercised.
- [ ] Unit and (where observable) e2e tests cover the new behavior.

## Out of scope

- JSON Patch (RFC 6902) operation syntax
- Patching relational fields on Asset (AssetTypeId, ParentAssetId) or nested/linked entities
- Bulk / multi-asset patch in a single request
- New roles or field-level permission granularity — uses existing ASSET_EDIT permission only
- New Asset columns / schema additions

## Notes / open questions

- Generated by the feature pipeline from the approved architect plan. If any
  acceptance criterion is ambiguous, ask the human before implementing.