@@ -10,6 +10,7 @@ import { promisify } from 'util';
1010import { RepositoryAdapter } from './RepositoryAdapter' ;
1111import { Bundle , SourceMetadata , ValidationResult , RegistrySource } from '../types/registry' ;
1212import { Logger } from '../utils/logger' ;
13+ import { generateGitHubBundleId , formatByteSize } from '../utils/bundleNameUtils' ;
1314
1415const execAsync = promisify ( exec ) ;
1516
@@ -522,8 +523,16 @@ export class GitHubAdapter extends RepositoryAdapter {
522523 // Create bundle metadata
523524 // Use manifest data if available, otherwise fall back to release data
524525 // Use API URL instead of browser_download_url for proper authentication
526+ // Bundle ID uses canonical generation function for consistency
527+ const bundleId = generateGitHubBundleId (
528+ owner ,
529+ repo ,
530+ release . tag_name ,
531+ manifest ?. id ,
532+ manifest ?. version
533+ ) ;
525534 const bundle : Bundle = {
526- id : ` ${ owner } - ${ repo } - ${ release . tag_name } ` ,
535+ id : bundleId ,
527536 name : manifest ?. name || release . name || `${ repo } ${ release . tag_name } ` ,
528537 version : manifest ?. version || release . tag_name . replace ( / ^ v / , '' ) ,
529538 description : manifest ?. description || this . extractDescription ( release . body ) ,
@@ -532,14 +541,19 @@ export class GitHubAdapter extends RepositoryAdapter {
532541 environments : manifest ?. environments || this . extractEnvironments ( release . body ) ,
533542 tags : manifest ?. tags || this . extractTags ( release . body ) ,
534543 lastUpdated : release . published_at ,
535- size : this . formatSize ( bundleAsset . size ) ,
544+ size : formatByteSize ( bundleAsset . size ) ,
536545 dependencies : manifest ?. dependencies || [ ] ,
537546 license : manifest ?. license || 'Unknown' ,
538547 manifestUrl : manifestAsset . url ,
539548 downloadUrl : bundleAsset . url ,
540549 repository : this . source . url ,
541550 } ;
542551
552+ // Attach prompts array from manifest for content breakdown display
553+ if ( manifest ?. prompts && Array . isArray ( manifest . prompts ) ) {
554+ ( bundle as any ) . prompts = manifest . prompts ;
555+ }
556+
543557 bundles . push ( bundle ) ;
544558 }
545559
@@ -732,17 +746,4 @@ export class GitHubAdapter extends RepositoryAdapter {
732746
733747 return tags ;
734748 }
735-
736- /**
737- * Format byte size to human readable
738- */
739- private formatSize ( bytes : number ) : string {
740- if ( bytes < 1024 ) {
741- return `${ bytes } B` ;
742- }
743- if ( bytes < 1024 * 1024 ) {
744- return `${ ( bytes / 1024 ) . toFixed ( 1 ) } KB` ;
745- }
746- return `${ ( bytes / ( 1024 * 1024 ) ) . toFixed ( 1 ) } MB` ;
747- }
748749}
0 commit comments