--- 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.