Unify console prompt to [user@VM]; fix real personality-block truncation; correct §XXV's wrong lockdown conclusion (FABRIC-3.md §XXVI)
Investigating the std79 lockdown finding from FABRIC-3.md §XXV led to a real discovery: WIREBIND births TWO VMs per identity, a console proxy under the plain username and the actual restricted identity under <username>~user (capsule_wirebind.c). Every test in §XXV targeted the console proxy, which was never locked down at all. Retested against the correct target (rajames~user): the lockdown works exactly as designed. §XXV's "lockdown never engages" conclusion was wrong -- corrected here, not deleted, since the mistake and how it was caught are worth keeping (see the new feedback memory: confirm which specific VM a name resolves to before concluding anything, when a subsystem is known to birth more than one VM per identity). Two real, separate things found along the way are kept regardless of that correction: - capsule_runcap.c: the reserved personality devblock was read in full (mostly zero-padding after a short ~200-byte string) with no terminator, producing "WARN: block 4998 exceeds 1KB, truncating" on every std79-locked identity's birth, universal, since at least 2026-09-10. Fixed by trimming to the first NUL byte actually found -- real, but harmless to execution (real content sat in the truncated block's surviving head); it mattered for capsule_id/ content_hash being computed over padding instead of real content. - console.h/console.c/repl.c: unified the prompt from a separately- computed "[VMName] (user)" into a single "[user@VMName]" line prefix -- exactly the ambiguity that caused the original misdiagnosis (the prompt showed only the WIREBIND username, identical whether USE had targeted the console proxy or the real ~user identity). Implemented as a registered callback (console_set_user_prefix_provider()) rather than console.c calling into WIREBIND/session logic directly, since console.c is a clean HAL module with no prior dependency on capsule-level subsystems. Verified: clean build on all 3 architectures, zero new warnings, identical dict_hash/capsule_hash to every prior boot this session (console/prompt-only change). Full 9-identity messaging campaign re-run end to end: 202s, zero faults, all 8 identities at 99/99 tokens, zero regression. Also surfaced, not yet acted on: the full campaign's own console tags now visibly show which VM each identity's tests actually reached ([zuse@rajames], not [zuse@rajames~user]) -- messaging.4th's VM-NAMES-INIT registers identities by plain username, so std79-doe. fth's turn-attractor has been dispatching to each identity's console proxy, not the actual locked-down identity, since the messaging rewrite. Flagged for a deliberate decision, not investigated further. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
cb32e6632b
commit
a8b16d41da
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,42 @@
|
||||
epoch_s,elapsed_s,qemu_utime_jiffies,mem_used_kb,mem_available_kb,swap_used_kb
|
||||
1789295956,2,0,2366572,9773108,601876
|
||||
1789295961,7,0,2461672,9678008,601876
|
||||
1789295967,13,0,2422984,9716696,601876
|
||||
1789295972,18,0,2410368,9729312,601876
|
||||
1789295977,23,0,2451728,9687952,601876
|
||||
1789295982,28,0,2470656,9669024,601876
|
||||
1789295987,33,0,2461968,9677712,601876
|
||||
1789295992,38,0,2480280,9659400,601876
|
||||
1789295997,43,0,2494284,9645396,601876
|
||||
1789296002,48,0,2495996,9643684,601876
|
||||
1789296007,53,0,2493760,9645920,601876
|
||||
1789296012,58,0,2452384,9687296,601876
|
||||
1789296017,63,0,2448592,9691088,601876
|
||||
1789296022,68,0,2478176,9661504,601876
|
||||
1789296027,73,0,2497964,9641716,601876
|
||||
1789296032,78,0,2476676,9663004,601876
|
||||
1789296037,83,0,2477772,9661908,601876
|
||||
1789296042,88,0,2495920,9643760,601876
|
||||
1789296047,93,0,2515288,9624392,601876
|
||||
1789296052,98,0,2514900,9624780,601876
|
||||
1789296057,103,0,2529988,9609692,601876
|
||||
1789296062,108,0,2520348,9619332,601876
|
||||
1789296067,113,0,2506172,9633508,601876
|
||||
1789296072,118,0,2520368,9619312,601876
|
||||
1789296077,123,0,2529232,9610448,601876
|
||||
1789296082,128,0,2534760,9604920,601876
|
||||
1789296087,133,0,2546732,9592948,601876
|
||||
1789296092,138,0,2518060,9621620,601876
|
||||
1789296097,143,0,2510028,9629652,601876
|
||||
1789296102,148,0,2502964,9636716,601876
|
||||
1789296107,153,0,2504376,9635304,601876
|
||||
1789296112,158,0,2514676,9625004,601876
|
||||
1789296118,164,0,2538768,9600912,601876
|
||||
1789296123,169,0,2549384,9590296,601876
|
||||
1789296128,174,0,2530072,9609608,601876
|
||||
1789296133,179,0,2540248,9599432,601876
|
||||
1789296138,184,0,2583444,9556236,601876
|
||||
1789296143,189,0,2538108,9601572,601876
|
||||
1789296148,194,0,2536188,9603492,601876
|
||||
1789296153,199,0,2547044,9592636,601876
|
||||
1789296158,204,0,2505156,9634524,601876
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user