fix: oracle review fixes — resolver exit code, dead include, pointer compose
- Exit code: plan.missing.empty() ? 0 : 1 (was always returning 0) - Removed dead <algorithm> include from plan.cpp - BuildStep now composes config::ResolvedPackage instead of duplicating features/config fields; PackageDef stored as const pointer
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
#include "kappa/resolve/plan.hpp"
|
||||
#include "kappa/config/merge.hpp"
|
||||
|
||||
#include <algorithm>
|
||||
#include <queue>
|
||||
|
||||
namespace kappa::resolve {
|
||||
@@ -23,15 +22,14 @@ BuildPlan resolve(const dsl::SystemConfig& cfg, const Registry& registry) {
|
||||
|
||||
BuildStep step;
|
||||
step.name = pkg.name;
|
||||
step.package = pkg;
|
||||
step.features = resolved.features;
|
||||
step.config = resolved.config;
|
||||
step.package = &pkg;
|
||||
step.resolved = std::move(resolved);
|
||||
|
||||
for (auto& dep : pkg.depends) {
|
||||
if (!dep.feature.empty()) {
|
||||
auto fit = step.features.find(dep.feature);
|
||||
if (fit == step.features.end() || !fit->second.enabled) {
|
||||
continue; // feature-gated and disabled
|
||||
auto fit = step.resolved.features.find(dep.feature);
|
||||
if (fit == step.resolved.features.end() || !fit->second.enabled) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
step.dependencies.push_back({dep.name, dep.version});
|
||||
|
||||
Reference in New Issue
Block a user