Skip to content

[3.0] Add migration prompt/skill for legacy custom system-support packaging #906

Description

@jbachorik

Goal

Before BTrace 3.0.0, provide a reusable prompt/skill that helps users migrate custom system support packaged through legacy libs, configuration files, ad-hoc JARs, and related setup into proper BTrace extensions and masked fat agents.

Scope

The migration assistant should:

  • inventory the existing packaging layout, including custom libraries, configs, scripts, service providers, and target-system dependencies
  • identify the public probe-facing API versus runtime implementation classes
  • recommend the correct extension structure, descriptors, permissions, service-provider declarations, external types, and package shading
  • generate or guide the io.btrace.extension Gradle configuration
  • generate or guide io.btrace.fat-agent configuration using the masked btraceJar and io.btrace.boot.Loader
  • explain bootstrap-visible API classes versus masked/runtime-loaded implementation .classdata
  • preserve required configuration/resources and flag unsafe target-application classpath coupling
  • provide validation steps for extension artifacts, fat-agent contents, startup, and a first trace
  • link to the 3.0 extension-development, interface-rule, fat-agent, and migration documentation

Deliverable

Provide a user-facing migration prompt and, where appropriate, a Codex-compatible skill/workflow. It should begin with discovery questions or repository inspection, produce a concrete migration plan, and optionally scaffold the resulting extension/fat-agent files after user confirmation.

Acceptance criteria

  • Handles a representative legacy setup using custom libs and configuration resources
  • Produces a correct API/implementation split and extension metadata
  • Preserves or creates required META-INF/services provider declarations
  • Selects and documents required extension permissions
  • Produces a fat agent based on the masked BTrace JAR with Loader entry points
  • Includes artifact inspection and live startup/first-trace verification
  • Documents common migration failures and classloading pitfalls
  • Is referenced from the relevant BTrace 3.0 migration and extension documentation

Release requirement

Target this for completion before the BTrace 3.0.0 release.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions