VFS::Federation::MonkLoom uses only core-style Perl dependencies: Digest::SHA, JSON::PP, and Scalar::Util. Generated packages include the module and document the concrete embedded model.
Through the VFS runtime
my $vfs = VFS::Federation::V2Runtime->open('root.vfsbin');
my $loom = $vfs->monk_neural_attachment();
my $e = $vfs->neural_evaluate({
path_depth => 512,
owner_change => 0,
});
print $e->{selected_label}, "\n";
print $e->{evaluation_fingerprint}, "\n";
Proposal-only adaptation
my $proposal = $vfs->neural_propose_adaptation(\%features, {
feedback_id => 'review-0042',
evaluation_fingerprint => $e->{evaluation_fingerprint},
targets => { review => 900 },
verifier => 'signed-review-service',
evidence_digest => $evidence_sha256,
verified => JSON::PP::true,
});
# proposed_attachment_json is not committed by this call.
Direct training from the VFS
my $result = $vfs->neural_train_from_vfs(
'/ai/training/manifest.json',
progress => sub {
my ($p) = @_;
my $total = defined($p->{total}) ? $p->{total} : '?';
print "$p->{stage} $p->{completed}/$total\n";
},
cancellation_requested => sub { return $cancel_requested },
);
print $result->{report_fingerprint}, "\n";
print $result->{proposed_attachment}->fingerprint, "\n";
VFS::Federation::MonkSpindle validates recipes, records, and deterministic extraction. V2Runtime exact-reads the root-owned corpus, verifies supporting evidence digests, and performs the same ordered training steps as Python.
Low-level reader and writer
monk_neural_json()returns the exact section bytes.build_image(..., monk_policy_json => $monk, monk_neural_json => $loom)validates binding and canonical form.- Writable transactions preserve both JSON documents during a generation rebuild.
Use the high-level runtime unless you are building tooling. It loads the Monk policy and Loom attachment together and verifies their fingerprint binding.