Skip to content

Latest commit

 

History

History
58 lines (56 loc) · 8.51 KB

File metadata and controls

58 lines (56 loc) · 8.51 KB

Macro Deck plugin conformance report

Suite version: 1.2.0
Plugin: com.pyflat.printer-control 1.0.0
Conformant: yes
Passed: 30 - Failed: 0 - Skipped: 19

Id Title Category Requirement Outcome Detail
MDC0101 The plugin id is a valid reverse-domain package id ManifestAndIdentifiers Required PASS
MDC0102 Every declared capability's local id is a valid declared-kind identifier ManifestAndIdentifiers Required PASS
MDC0103 Every weather station instance id is a valid resource-kind identifier ManifestAndIdentifiers Required SKIP This subject does not declare the weather capability.
MDC0104 The manifest declares a supported manifest version and a protocol range this suite satisfies ManifestAndIdentifiers Required SKIP This subject has no manifest - only an artifact subject does.
MDC0105 The manifest's id equals the id the subject reports at /_macrodeck/info ManifestAndIdentifiers Required SKIP This subject has no manifest - only an artifact subject does.
MDC0106 The manifest's name and version equal what the subject reports at /_macrodeck/info ManifestAndIdentifiers Required SKIP This subject has no manifest - only an artifact subject does.
MDC0107 When the manifest declares an icon, icons/describe reports the media type its extension implies ManifestAndIdentifiers Required SKIP This subject has no manifest - only an artifact subject does.
MDC0201 session.hello asserts the granted protocol version and session id, and session.welcome answers exactly once RegistrationAndNegotiation Required PASS
MDC0202 The handshake completes within ProtocolTimeouts.Handshake RegistrationAndNegotiation Required PASS
MDC0203 A host whose protocol range this subject cannot speak causes it to stop, not retry forever RegistrationAndNegotiation Required PASS
MDC0204 A self-registering subject registers once and reuses its persisted credentials on a later start RegistrationAndNegotiation Required SKIP This subject does not connect as a self-registering in-process plugin; state-directory sharing across two starts is not observable for an executable or artifact subject through this suite.
MDC0205 A managed subject never calls the registration endpoint RegistrationAndNegotiation Required PASS
MDC0206 A self-registering subject with no enrollment token pairs interactively - proving possession of its own verifier rather than sending it twice - and reuses the persisted credential on a later start without pairing again RegistrationAndNegotiation Required SKIP This subject does not connect as a self-registering in-process plugin; interactive pairing is not observable for an executable or artifact subject through this suite.
MDC0301 Every declared capability's kind is one of CapabilityKinds.All CapabilitySerialization Required PASS
MDC0302 Every declared capability's version range is valid and overlaps this host's supported range CapabilitySerialization Required PASS
MDC0303 A provider-shaped kind declares exactly one capability, at its documented local id CapabilitySerialization Required PASS
MDC0304 The declared capability count does not exceed MaxDeclaredCapabilities CapabilitySerialization Required PASS
MDC0305 actions/describe's reply stays within MaxMessageBytes and deserializes without loss CapabilitySerialization Required PASS
MDC0306 ui/describe reports a surface list whose every entry names a kind CapabilitySerialization Required PASS
MDC0307 Every surface ui/describe declares names a non-empty session mode CapabilitySerialization Required PASS
MDC0308 ui/describe's reply stays within MaxMessageBytes and deserializes without loss CapabilitySerialization Required PASS
MDC0309 Every state-provider action's state operation returns a well-formed snapshot CapabilitySerialization Required PASS
MDC0310 Every state a state-provider action returns has an id that is a valid declared-kind identifier CapabilitySerialization Required PASS
MDC0311 A variable provider reporting a catalog answers discover with a bounded, well-formed page CapabilitySerialization Required SKIP This subject does not declare the variables capability.
MDC0312 Every icon-provider action's icon snapshot is internally consistent CapabilitySerialization Required SKIP No declared action reports ProvidesIcon.
MDC0313 A snapshot naming no reference is answerable by icon.content, with AssetTooLarge the only allowed failure CapabilitySerialization Required SKIP No declared action reports ProvidesIcon.
MDC0314 A variable that declares a write capability answers set with something other than NotWritable or NotFound CapabilitySerialization Required SKIP This subject does not declare the variables capability.
MDC0315 The eager variable list stays within VariableLimits.MaxEagerVariablesPerProvider CapabilitySerialization Required SKIP This subject does not declare the variables capability.
MDC0401 No two declared capabilities share the same (kind, localId) pair DuplicateIds Required PASS
MDC0402 No two weather station instances share an instance id DuplicateIds Required SKIP This subject does not declare the weather capability.
MDC0403 No two eager variables resolve to the same id DuplicateIds Required SKIP This subject does not declare the variables capability.
MDC0501 An invocation receives exactly one reply, never more TimeoutAndCancellation Required PASS
MDC0502 A deadline that elapses produces TIMEOUT, and nothing arrives afterward TimeoutAndCancellation Recommended SKIP No declared action ran long enough, under a 300 ms deadline, to observe deadline enforcement.
MDC0503 Cancelling an unknown or already-answered correlation produces no message at all TimeoutAndCancellation Required PASS
MDC0504 Cancelling an in-flight invocation produces exactly one cancelled reply TimeoutAndCancellation Recommended SKIP No declared action stayed in flight long enough to be cancelled before it completed on its own.
MDC0505 A burst beyond MaxConcurrentInvocations never exceeds the reported in-flight bound, and every invocation completes TimeoutAndCancellation Recommended PASS
MDC0601 After a non-fatal disconnect, the subject reconnects and becomes ready again DisconnectAndReconnect Required PASS
MDC0602 Reconnecting inside the resume window presents resumeSessionId and resumes with the same session id DisconnectAndReconnect Required PASS
MDC0603 A reconnect outside the resume window opens a fresh session and the subject becomes ready again after re-initializing DisconnectAndReconnect Required PASS
MDC0604 A close of SupervisorShutdown (4004) stops a managed subject but leaves a self-registering one running DisconnectAndReconnect Required PASS
MDC0701 /_macrodeck/health answers before any session exists; /_macrodeck/ready does not until one does HealthEndpoint Required PASS
MDC0702 /_macrodeck/info and /_macrodeck/diagnostics agree with what the host itself observed about this session HealthEndpoint Required PASS
MDC0703 An unmapped route under /_macrodeck/ answers 404 HealthEndpoint Required PASS
MDC0704 The subject serves its endpoints at the base address its launcher was told to expect HealthEndpoint Required PASS
MDC0801 Logging while draining is paused does not block, and queued traffic is not silently lost after resuming BoundedQueues Recommended SKIP No declared action produced any observable log output.
MDC0802 Under a logging flood while paused, a trailing Error still survives and Dropped is reported honestly BoundedQueues Recommended INCONCLUSIVE The check did not return within its 00:01:00 per-check timeout and was abandoned after 00:01:00.0145777 of real time.
MDC0803 Every collected log event respects the protocol's structural field limits BoundedQueues Required PASS
MDC0804 Reconnecting does not replay a burst of previously published events BoundedQueues Required PASS
MDC0805 A burst of variables/get invocations beyond MaxConcurrentInvocations never exceeds the reported in-flight bound BoundedQueues Recommended SKIP This subject does not declare the variables capability.