Rework general-tests optimization

Rework general-tests optimization to use the test discovery agent to
determine the modules that are needed to be included in
general-tests.zip. Also start reporting optimization decisions silently.

Test: atest build_test_suites_test; atest optimized_targets_test
Bug: 358215235
Change-Id: Iabff6729e5743805167eed87d7ef5d901b255a61
diff --git a/ci/metrics_agent.py b/ci/metrics_agent.py
index bc2479e..85cdcbd 100644
--- a/ci/metrics_agent.py
+++ b/ci/metrics_agent.py
@@ -92,15 +92,15 @@
       size: int,
       included_modules: set[str],
   ):
-    target_result = self.target_results.get(target_name)
+    target_result = self._target_results.get(target_name)
     artifact = (
         metrics_pb2.OptimizedBuildMetrics.TargetOptimizationResult.OutputArtifact()
     )
     artifact.name = artifact_name
     artifact.size = size
     for module in included_modules:
-      artifact.included_modules.add(module)
-    target_result.output_artifacts.add(artifact)
+      artifact.included_modules.append(module)
+    target_result.output_artifact.append(artifact)
 
   def end_reporting(self):
     for target_result in self._target_results.values():