@@ -54,13 +54,18 @@ pub async fn run(
5454 return Ok ( ( ) ) ;
5555 }
5656
57- let limit = Some ( limit. unwrap_or ( 50 ) ) ;
57+ let limit = limit. unwrap_or ( 50 ) as usize ;
5858
5959 // Try the full-view endpoint first; fall back to metadata-only if it is
6060 // unavailable (e.g. older backend lacking /v1/playgrounds/:id/view).
6161 let full = with_spinner (
6262 "Loading playground..." ,
63- api:: get_full_playground_view ( & ctx. client , & playground_id, generation_id, limit) ,
63+ api:: get_full_playground_view (
64+ & ctx. client ,
65+ & playground_id,
66+ generation_id,
67+ Some ( limit as u32 ) ,
68+ ) ,
6469 )
6570 . await ;
6671
@@ -74,7 +79,7 @@ pub async fn run(
7479 return Ok ( ( ) ) ;
7580 }
7681 let mut output = String :: new ( ) ;
77- render_full_view ( & mut output, & view) ?;
82+ render_full_view ( & mut output, & view, limit ) ?;
7883 print_with_pager ( & output) ?;
7984 Ok ( ( ) )
8085 }
@@ -107,7 +112,11 @@ pub async fn run(
107112 }
108113}
109114
110- fn render_full_view ( output : & mut String , view : & api:: FullPlaygroundView ) -> Result < ( ) > {
115+ fn render_full_view (
116+ output : & mut String ,
117+ view : & api:: FullPlaygroundView ,
118+ limit : usize ,
119+ ) -> Result < ( ) > {
111120 let name = view. meta . name . as_deref ( ) . unwrap_or ( "(unnamed)" ) ;
112121 writeln ! ( output, "Viewing {}" , console:: style( name) . bold( ) ) ?;
113122 if let Some ( created) = view. meta . created . as_deref ( ) . filter ( |s| !s. is_empty ( ) ) {
@@ -131,7 +140,7 @@ fn render_full_view(output: &mut String, view: &api::FullPlaygroundView) -> Resu
131140
132141 if !view. tasks . is_empty ( ) {
133142 writeln ! ( output, "\n {}" , console:: style( "Tasks" ) . bold( ) ) ?;
134- for ( i, task) in view. tasks . iter ( ) . enumerate ( ) {
143+ for ( i, task) in view. tasks . iter ( ) . take ( limit ) . enumerate ( ) {
135144 let kind = task
136145 . function_type
137146 . as_ref ( )
@@ -167,7 +176,7 @@ fn render_full_view(output: &mut String, view: &api::FullPlaygroundView) -> Resu
167176 crate :: ui:: header( "Error" ) ,
168177 ] ) ;
169178 crate :: ui:: apply_column_padding ( & mut table, ( 0 , 6 ) ) ;
170- for run in view. runs . iter ( ) . take ( 50 ) {
179+ for run in view. runs . iter ( ) . take ( limit ) {
171180 let status = if run. error . is_some ( ) { "error" } else { "ok" } ;
172181 let out = run
173182 . output
0 commit comments