Skip to content

remove legacy libraries/applications split, unify to flat components list#8

Merged
ethenotethan merged 3 commits intomigrate-to-burrfrom
remove-legacy-lib-app-split
Apr 18, 2026
Merged

remove legacy libraries/applications split, unify to flat components list#8
ethenotethan merged 3 commits intomigrate-to-burrfrom
remove-legacy-lib-app-split

Conversation

@ethenotethan
Copy link
Copy Markdown
Collaborator

Summary

  • Fixes the bug where the Burr analysis pipeline silently skipped all components (0 analyzed) because the discovery engine wrote {"libraries": [...], "applications": [...]} but the reader expected {"components": [...]}
  • Removes the entire legacy binary split instead of just patching the reader — Library, Application, BaseComponent, KnowledgeBasis classes are deleted along with classification, libraries_used, internal_applications fields
  • Unifies the format to a flat {"components": [...]} list across discovery, analysis pipeline, CLI, and all scripts
  • Renames ApplicationEdge to ComponentEdge, removes two-phase get_analysis_order(), replaces libraries_count/applications_count with components_count
  • All 193 tests pass, verified end-to-end with vllm-mlx repo (1 component analyzed, 24 citations extracted)

Net: +377 / -918 lines across 16 files.

…list

The discovery engine wrote components.json with separate 'libraries' and
'applications' keys, but the Burr analysis pipeline read a 'components'
key that didn't exist — causing every component to be silently skipped
during analysis (0 components analyzed).

Instead of patching the reader, remove the entire legacy binary split:

- Discovery now writes flat {"components": [...]} format
- Remove Library, Application, BaseComponent, KnowledgeBasis classes
- Remove 'classification' field and _legacy_classification() from Component
- Remove libraries_used, internal_applications compat fields
- Rename ApplicationEdge to ComponentEdge
- Remove two-phase get_analysis_order() from DependencyGraph
- Replace libraries_count/applications_count with components_count in manifest
- Validator now checks all components in depth order, not just libraries
- Simplify all readers (burr_app.py, cli.py, scripts) to use 'components' key
- Rewrite utils/dependency_graph.py and scripts to use Component type
- Update all tests for new format
Copy link
Copy Markdown
Member

@0xClandestine 0xClandestine left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@ethenotethan ethenotethan merged commit 9cab099 into migrate-to-burr Apr 18, 2026
7 checks passed
ethenotethan added a commit that referenced this pull request Apr 18, 2026
* migrate agent harness framework to burr

* remove legacy libraries/applications split, unify to flat components list (#8)

* pin GitHub Actions to full commit SHAs for security

* add url parsing to avoid substring attack

* remove legacy libraries/applications split, unify to flat components list

The discovery engine wrote components.json with separate 'libraries' and
'applications' keys, but the Burr analysis pipeline read a 'components'
key that didn't exist — causing every component to be silently skipped
during analysis (0 components analyzed).

Instead of patching the reader, remove the entire legacy binary split:

- Discovery now writes flat {"components": [...]} format
- Remove Library, Application, BaseComponent, KnowledgeBasis classes
- Remove 'classification' field and _legacy_classification() from Component
- Remove libraries_used, internal_applications compat fields
- Rename ApplicationEdge to ComponentEdge
- Remove two-phase get_analysis_order() from DependencyGraph
- Replace libraries_count/applications_count with components_count in manifest
- Validator now checks all components in depth order, not just libraries
- Simplify all readers (burr_app.py, cli.py, scripts) to use 'components' key
- Rewrite utils/dependency_graph.py and scripts to use Component type
- Update all tests for new format
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants