---
id: SCR-PFM-MTD-003
title: Field editor
route: /console/{tenantId}/configuration/{module}/fields/{recordType}/{fieldId}
surface: console
product_area: platform
module: metadata
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
purpose: The field editor defines the value and presentation contract for a workspace property. Custom-object properties
  additionally expose conditions, default, uniqueness and audience rules.
supports:
- JNY-PFM-MTD-006
- JNY-PFM-MTD-001
- CAP-PFM-MTD-005
- CAP-PFM-MTD-006
- CAP-PFM-MTD-002
permission: platform.custom-fields.read to open; platform.custom-fields.create or .update to save
entry_from:
- SCR-PFM-MTD-002 (New field, a field row, or Duplicate with ?duplicate=)
exits_to:
- SCR-PFM-MTD-002 with the saved field highlighted
displays:
- field: The field's definition and version
  source: getCustomField
- field: Data types and the displays each allows
  source: listFieldTypes
- field: The record type's other fields, for conditions
  source: describeObject
- field: The field's rules
  source: describeObject or getCustomFieldRules
- field: A preview of the field
  source: console rendering from the definition
actions:
- label: Save a new field
  operation_id: createCustomField
  permission: platform.custom-fields.create
  confirm: false
- label: Save changes
  operation_id: updateCustomField
  permission: platform.custom-fields.update
  confirm: false
- label: Save rules (after the field)
  operation_id: setCustomFieldRules
  permission: platform.custom-fields.update
  confirm: false
- label: Archive
  operation_id: archiveCustomField
  permission: platform.custom-fields.delete
  confirm: true
states:
- loading
- error
- read-only (no update permission)
- inactive (an archived field cannot be edited)
- partial (field saved, rules refused)
validation:
- BR-CAP-PFM-MTD-005-01
- BR-CAP-PFM-MTD-005-02
- BR-CAP-PFM-MTD-005-03
- BR-CAP-PFM-MTD-005-04
- BR-CAP-PFM-MTD-005-05
- BR-CAP-PFM-MTD-005-06
- BR-CAP-PFM-MTD-005-11
- BR-CAP-PFM-MTD-006-01
- BR-CAP-PFM-MTD-006-02
- BR-CAP-PFM-MTD-006-03
- BR-CAP-PFM-MTD-006-04
- BR-CAP-PFM-MTD-006-05
patterns:
- PageLayout (standard width)
- PageHeader
- ConfigBreadcrumb
- EmptyState
- LoadingIndicatorPanel
- type picker
- criteria editor for conditions
- field preview
- EditorActionBar
- unsaved-changes guard
component: components/configuration/fields/field-editor.tsx
evidence:
- 'react-console at baf6dae3: app/(console)/console/[tenantId]/configuration/[module]/fields/[recordType]/[fieldId]/page.tsx;
  components/configuration/fields/field-editor.tsx, type-picker.tsx, field-preview.tsx; lib/configuration/fields/live-adapter.ts
  (saveRules), field-rules.ts'
controls: [TC-AVL-001, TC-AVL-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-DAT-001, TC-DAT-002, TC-DAT-003, TC-DAT-004, TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-LOG-004, TC-LOG-005, TC-PI-001, TC-PI-003, TC-PI-005, TC-PRV-001, TC-PRV-002, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-TEN-004, TC-VEN-001, TC-VEN-002, TC-VEN-003]
---

# Field editor

## What the Screen Is For

The field editor defines the value and presentation contract for a workspace property. Custom-object properties additionally expose conditions, default, uniqueness and audience rules.

## What It Shows and Lets People Do

The definition appears beside a preview. The initial value type becomes fixed, while settings can widen compatibly. Saving rules follows definition persistence as a separate operation.

## States and Errors

The editor shows validation errors and stale-version problems. If only the definition saves, it reports unsaved rules explicitly; archived definitions remain read-only.

## Patterns It Must Respect

The existing editor combines its type picker, condition editor, action bar and unsaved-change protection within the configuration page.
