Skip to content

Route the remaining perf sampling body through PlatformPlugin #1188

Description

@devin-ai-integration

Problem

The Apple PlatformPlugin relocation is substantially complete, but CONTEXT.md still records one
remaining body-level branch: buildPerfResponseData in daemon perf handling.

Scope

  • Move the remaining Apple/platform-specific perf sampling body behind the existing plugin-owned
    perf facet or a neutral perf contract below daemon.
  • Preserve existing support-gate behavior and payload bytes.
  • Add parity coverage that compares the old branch behavior across representative Apple, Android,
    web, and unsupported devices before deleting it.
  • Remove the corresponding deferred note from CONTEXT.md only when the production call site is
    plugin-routed.

Constraints

  • Do not expose daemon-owned types from the platform layer.
  • Do not change public perf semantics or add new sampling metrics in this refactor.
  • Keep Apple frame-health feature work separate.

Acceptance criteria

  • buildPerfResponseData no longer contains the platform branch owned by the plugin.
  • Table/facet parity and routing tests pass.
  • Layering, typecheck, lint, focused perf tests, Fallow, and build pass.

Origin: CONTEXT.md deferred b.3 perf sampling body and post-#1174 architecture follow-up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions