Repository navigation
Model the MegaRAC SP-X operation surface from the committed 255-endpoint artifact - #11127
gunbai-bot[bot] wants to merge 27 commits into
Conversation
|
Addressed review 64255 (dashboard-only REQUEST_CHANGES) on this head:
|
|
Verified review 64255 against current head Both findings are already discharged; no further code change.
Prior reply on — sent from jolly-bear-144 |
|
Addressed review 64302: deleted the unread rows.
— sent from jolly-bear-144 |
|
Addressed review 64319. Deleted The modeling stays:
— sent from jolly-bear-144 |
|
Addressed review 64346.
— sent from jolly-bear-144 |
|
Addressed review 64359.
— sent from jolly-bear-144 |
|
Floor on |
|
Addressed review 64397.
The executing RED that remains authorable is still-running-past-deadline with no payload. The old Complete × StillRunning product is unconstructible in the accepted corpus; no compiler fixture harness for that product is enrolled — that missing harness is the next-rung trigger. |
|
Verified review 64397 against current head The cited product is gone.
Authorable controls that stay enrolled:
The old Complete × StillRunning record is unconstructible in the accepted corpus. No compiler fixture harness for that product is enrolled; that missing harness is the next-rung trigger, not a permanent ceiling. — sent from jolly-bear-144 |
|
Addressed review 64462:
|
|
Addressed review 64475 on
|
|
Addressed review 64482 on
|
|
Addressed review 64507 on
|
Cite firmware 0.32's served UI so redirection_status, media flag-bytes, recorder field spellings, event-log layouts, and first-class absences (no Redfish, no BIOS settings, no per-DIMM FRU, no OEM SEL decode) cannot be rediscovered by hand. A present-but-silent SOL channel refuses as a host fact via PreOsObservationCapabilities. Co-authored-by: Cursor <cursoragent@cursor.com>
Collapse nullary fact-functions into 0.32 profile rows, join firmware identity through bmc_firmware_release_identity_eq, and hash the committed 255-endpoint artifact rather than comparing two authored literals. Unused PreOs axes are a named #11110 frontier; the silent-SOL refusal stays the executing console reader. Co-authored-by: Cursor <cursoragent@cursor.com>
The 86-byte SOL banner was the collector exiting on stdin EOF, not host silence. Console standing is now collector coverage vs host payload, and Ampere OEM SEL layout lives in extdeps.ampere rather than a MegaRAC absence about the records. Co-authored-by: Cursor <cursoragent@cursor.com>
…to 0xEB. The 3764-byte capture is the positive control that this MegaRAC delivers host console bytes. Coverage now has a terminating deadline and a still-running- past-deadline arm, and the OpenBMC producer layout is keyed to sensor 0xEB so 0xDE payloads cannot resolve through it. Co-authored-by: Cursor <cursoragent@cursor.com>
Those values were already in comments or in the hashed artifacts; unused data rows were a second transcription with no consumer. Co-authored-by: Cursor <cursoragent@cursor.com>
NFS-client media, flag-byte-not-count, and GenID-not-sender stay unrepresentable by construction. The enrolled checks are the ones that refuse a second firmware or a second layout. Co-authored-by: Cursor <cursoragent@cursor.com>
Platform PreOs capability stays with #11110; this PR no longer mints pre_os_observation_capabilities.dag. Co-authored-by: Cursor <cursoragent@cursor.com>
The deadline is std.measure Second, not a Duration named in seconds. Instance, event-log, and recorder GETs had no consumer, so they are not on this PR; the typed surface facts stay. Co-authored-by: Cursor <cursoragent@cursor.com>
Video and SOL power-on field names share one coproduct and one wire reader. Redirection, sensor coverage, and incomplete SOL coverage are matched as coproducts rather than collapsed to Bool. Co-authored-by: Cursor <cursoragent@cursor.com>
An unacknowledged stdin-EOF session can no longer inhabit Complete and cannot yield host-produced-no-bytes. The 02:37Z capture stays the positive control for payload while still running past the deadline. Co-authored-by: Cursor <cursoragent@cursor.com>
…odule. Trailing // after the last fn named no subject and refused the floor at parse. Co-authored-by: Cursor <cursoragent@cursor.com>
…ll running. Complete coverage is the deadline having terminated the client, so a still-running or stdin-EOF termination cannot occupy the same record and cannot mint host silence. Co-authored-by: Cursor <cursoragent@cursor.com>
Hermetic discovery has no Dir mock for sha256sum_verify_via_shell, so the new identities never reached a verdict. Enroll the executing route, not the gap. Co-authored-by: Cursor <cursoragent@cursor.com>
The extra brace after dissolve made the frontier list unparseable, so heal and the floor never produced a receipt. Co-authored-by: Cursor <cursoragent@cursor.com>
…bject. MegaRacConsoleRecorderSubject had no call site; the two recorder rows now select through it instead of standing beside an unused coproduct. Co-authored-by: Cursor <cursoragent@cursor.com>
…ve the SHA witness on Mktemp.Dir. The manufacturer-ID bytes were a second spelling of IANA 52538; they now derive as LE octets. The unused media-role, cd_active_sessions, and GenID constructors had no named consumer, so they delete rather than sit as a nameless frontier. The wet exclusion's trigger now names the tempdir write this witness actually reaches. Co-authored-by: Cursor <cursoragent@cursor.com>
Nonzero is not attached: denial and vendor-stopped codes are nonzero and were treated as success. Confirmation now parses the wire, decodes it for the caller firmware, and admits only started or connecting. Co-authored-by: Cursor <cursoragent@cursor.com>
…#11137 wave row. Media attach resolved `any` through MegaRAC's blanket import after that module started using algebra — a pool coincidence, not an authored reference. #11137 already merged, so its admission matched no delta on this run and refused as stale. Co-authored-by: Cursor <cursoragent@cursor.com>
…ed status codes. Mt. Collins was passing the 0.32 catalog identity, so an updated observation would still decode as 0.32. The path catalog does not contain status mappings; 2–5 were not in any committed excerpt, so they are an uncatalogued wire rather than named UI denials. Co-authored-by: Cursor <cursoragent@cursor.com>
fb95e4b to
a57c700
Compare
…e catalog bytes. The 255-path artifact lists AEP DIMM and FRU endpoints; calling those absent from the served UI was a meaning fork. Catalog presence and Redfish/settings/bios absence are now grepped from the hashed file on the wet lane instead of echoed from an authored list. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64523 on
|
The layout row was only restated by a witness. ampere_oem_sel_record_match is the decode step: 3A CD 00 at sensor 235 is this layout, 0xDE is outside it, and a zero manufacturer id is not Ampere's PEN. The executing consumer is the PreOs OEM-decode/SEL axis on gunbc#11110. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64529 on The layout is no longer only restated. §3c frontier: the executing consumer is the PreOs OEM-decode / SEL axis in |
A Bool "presents media" mapped decoder ignorance to false, which licensed StartMedia. Unknown firmware and wire now stay Unreadable through confirmation. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64542:
HEAD |
Path and digest are a repository observation, not an AMI fact; extdeps.bmc.megarac keeps only firmware-keyed surface facts. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64548: HEAD |
Start HTTP failure is pending or unreadable, never a distinct refused arm; the dead render match went with it. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64552: HEAD |
…d SEL facts. Witnesses are not consumers; these families wait on gunbc#11110 the same way Ampere OEM SEL already does. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64559: recorder trigger/survival, HEAD |
Hermetic checkout Filesystem.Read is supplied; keeping a NoMockResponse Read gap blocked adjudication after the witness reached its subject. Co-authored-by: Cursor <cursoragent@cursor.com>
… absence Bool. The 0.32 roster now includes FRU, AEP DIMM, and BIOS version paths so Absent is a discriminating answer, not the only constructible Known. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review 64570: HEAD |
|
Closing as superseded, not abandoned. Nothing in this PR is lost. #11211 contains this PR's head as an ancestor. Verified at current heads: On the six files that differ between them, #11211 is ahead in every one: a second path+sha256 authority dropped, a §3 nickname removed by importing the existing The owning session no longer exists, this PR has been DIRTY against main for some time, and the operator's standing guidance on stacks is that only the landing PR matters — intermediate ones need not be verified or merged. Keeping it open generates conflict notices against a branch nobody can resolve, for content that already exists downstream. If any of the above is wrong, the recovery is cheap: the branch is untouched and the PR can be reopened. — sent from eager-owl-205 |
Summary
extdeps.bmc.megaracwith the firmware 0.32 served-UI catalog (committedartifacts/bmc/mtcollins1-megarac-api-surface.txt, sha2564fc53fea…) rather than forking a second BMC home.image_redirection:1;cd_active_sessionsas a flag byte with no session-count constructor; dual console recorders (framebuffer vs SOL) with upstreamchasis_/chassis_spellings and reset survival vs livesol activate; first-class absences keyed to this served UI (no Redfish, no BIOS/UEFI settings surface, no per-DIMM FRU/telemetry, controller renderer returns OEM descriptionunknown); web vs IPMI event-log layouts so GenID cannot be a sender;redirection_statusenum keyed to firmware identity 0.32.gunbc.machine_intake_sol_collector_observation: an unacknowledged session cannot construct complete coverage, andsol_host_fact_from_collectornever treats incomplete coverage as host silence. Platform capability (PreOsObservationCapabilities) stays with gunbc#11110. Ampere OEM SEL producer layout (sensor 0xEB) isextdeps.ampere.oem_seland does not cover 0xDE records. Policy (which intake step calls which endpoint) stays out of extdeps.Test plan
megarac_spx_ui_surface_artifact_integrity_witness)