---
id: JNY-PFM-MTD-006
title: Add a contact field and inspect its description
feature: FEAT-PFM-MTD-02
product_area: platform
module: metadata
revision: 1
status: draft
product_intent: confirmed
implementation_evidence: partially-observed
supersedes:
  - PLAT-M9-S01
  - PLAT-M9-S02
  - PLAT-M9-S03
  - PLAT-M9-S04
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
actor: ACT-PFM-007
goal: >-
  Create Member Since through field configuration and inspect its metadata without treating form rendering as
  proved.
capabilities:
  - CAP-PFM-MTD-003
  - CAP-PFM-MTD-005
  - CAP-PFM-MTD-002
screens:
  - '/console/{tenantId}/configuration/{module}/fields'
  - '/console/{tenantId}/configuration/{module}/fields/{recordType}'
  - '/console/{tenantId}/configuration/{module}/fields/{recordType}/{fieldId}'
steps:
  - 'n': 1
    surface: listObjects
    action: Open field configuration and inspect eligible record categories.
    capability: CAP-PFM-MTD-003
    expected: Declared holders and available custom objects are selectable.
    provenance: observed
    source: 'react-console:app/(console)/console/[tenantId]/configuration/fields/page.tsx'
  - 'n': 2
    surface: '/console/{tenantId}/configuration/{module}/fields/{recordType}'
    action: Create Member Since as a date property required by the console.
    capability: CAP-PFM-MTD-005
    expected: 'The stored field includes its identity, display and creator.'
    provenance: observed
    source: 'react-console:components/configuration/fields/field-editor.tsx'
  - 'n': 3
    surface: describeObject
    action: Request the updated Contacts description.
    capability: CAP-PFM-MTD-002
    expected: The new field follows standard fields and carries its requirement tier.
    provenance: observed
    source: 'services-platform:modules/metadata/services/describe/describe-object.ts:describeObject'
alternates:
  - from_step: 2
    condition: The administrator retires and later restores Member Since.
    path: Use the field lifecycle operations.
    outcome: Descriptions omit the archived field and include it after restoration.
    provenance: test
    source: >-
      services-platform:modules/metadata/tests/e2e/custom-fields.e2e.spec.js#describes the restored field
      again
failures:
  - from_step: 2
    condition: The target category lacks additional-field capability.
    path: Creation returns the unsupported-capability explanation.
    outcome: No definition is stored.
    provenance: test
    source: >-
      services-platform:modules/metadata/tests/integration/services/registration/entity-capabilities.integration.spec.js#refuses
      a new custom field with the 400 problem
rules_in_play:
  - BR-CAP-PFM-MTD-003-05
  - BR-CAP-PFM-MTD-003-07
  - BR-CAP-PFM-MTD-005-01
  - BR-CAP-PFM-MTD-005-06
  - BR-CAP-PFM-MTD-002-01
  - BR-CAP-PFM-MTD-002-02
assertions:
  - id: AS-JNY-PFM-MTD-006-01
    statement: Descriptions include live custom fields after standard fields with requirement information.
    provenance: test
    source: >-
      services-platform:modules/metadata/tests/e2e/custom-fields.e2e.spec.js#creates a field required by the
      API and describes its level, so the console and the portal can enforce theirs
  - id: AS-JNY-PFM-MTD-006-02
    statement: Unsupported categories reject additional-field creation.
    provenance: test
    source: >-
      services-platform:modules/metadata/tests/integration/services/registration/entity-capabilities.integration.spec.js#refuses
      a new custom field with the 400 problem
e2e_policy: optional
e2e_reason: >-
  API evidence establishes creation and description. Consumer rendering belongs to a further browser
  acceptance check; the observed configuration path does not establish that complete journey.
proved_by: []
---

# Add a contact field and inspect its description

Create Member Since through field configuration and inspect its metadata without treating form rendering as proved.

## Journey

The steps identify the participating capabilities and their expected outcomes. Alternatives and refusals retain their own evidence so a successful route does not imply that every branch has been demonstrated.
