| English | 中文版 |
This implementation attests to having passed the NPS-Node-L2 conformance suite under the conditions recorded below for the scope listed.
This template covers the case families currently defined by the v0.7 suite.
Topology is mandatory for every L2 claim; the other families apply only when
the IUT declares the corresponding role or transport capability. L2-01..L2-05
are mandatory AaaS cases. L2-06/07 are SHOULD cases and require either pass
or na with a non-empty exception rationale.
| Requirement | CR | Covered by this attestation |
|---|---|---|
| L2-01..L2-05 — NOP / OTel / CGN / preflight / retry | Current AaaS Profile | Yes; mandatory |
| L2-06..L2-07 — async / AlignStream | Current AaaS Profile | Yes; SHOULD exceptionable with rationale |
L2-08 — topology.snapshot / topology.stream on Anchor Nodes |
NPS-CR-0002 | Yes |
| NCP-over-TLS ingress | NPS-RFC-0006 | Conditional family |
| Bridge inbound | NPS-CR-0010 | Conditional family |
| Multi-Anchor / Registry HA | NPS-CR-0009 | Conditional families |
| Field | Value |
|---|---|
| Name | (e.g., example-anchor) |
| Version | (semver, e.g., 0.1.0) |
| Repository | (https URL) |
| License | (SPDX id) |
| Root NID | urn:nps:node:<authority>:<id> |
| Root public key (hex) | (64 hex chars, Ed25519 public key) |
| L1 prerequisite | (URL of this implementation’s NPS-NODE-L1-CERTIFIED.md, OR a date this implementation passed L1) |
| Field | Value |
|---|---|
| Name | (e.g., nps-dotnet-reference) |
| Version | (e.g., 1.0.0-alpha.11) |
| Source | (URL or package reference) |
| Field | Value |
|---|---|
| Date | (ISO 8601 UTC, e.g., 2026-04-27T00:00:00Z) |
| Platform | (e.g., linux-x64, macos-arm64, win-x64) |
| Hardware | (e.g., 1 vCPU / 1 GB RAM) |
| NPS-AaaS Profile version | 0.7 |
| Conformance suite version | 0.7 |
Record every case in the emitted manifest. Check each applicable passing case;
write N/A only for a whole conditional family. The topology family is always
mandatory, partial-family N/A is invalid, and the single-/multi-Anchor HA
dispositions are mutually exclusive. L2-06/07 N/A entries require a written
reason in the emitted manifest’s message field.
TC-N2-AaaS-01 — Internal work uses NOP TaskFrame (MUST)TC-N2-AaaS-02 — OpenTelemetry trace is injected into TaskFrame.context (MUST)TC-N2-AaaS-03 — CGN-Estimate budget and token_est response (MUST)TC-N2-AaaS-04 — NOP preflight gates worker dispatch (MUST)TC-N2-AaaS-05 — NOP retry and timeout semantics (MUST)TC-N2-AaaS-06 — Asynchronous Action lifecycle (SHOULD; reason required for N/A)TC-N2-AaaS-07 — AlignStream CGN back-pressure (SHOULD; reason required for N/A)TC-N2-AnchorTopo-01 — Snapshot of a 3-member clusterTC-N2-AnchorTopo-02 — Version monotonicity across joinsTC-N2-AnchorTopo-03 — Sub-Anchor member surfaces with child_anchor and member_countTC-N2-AnchorTopo-04 — No topology:read capability → NWP-TOPOLOGY-UNAUTHORIZEDTC-N2-AnchorTopo-05 — depth exceeds Anchor max → NWP-TOPOLOGY-DEPTH-UNSUPPORTEDTC-N2-AnchorTopo-06 — Unknown scope → NWP-TOPOLOGY-UNSUPPORTED-SCOPETC-N2-AnchorTopo-07 — Unknown filter key → NWP-TOPOLOGY-FILTER-UNSUPPORTEDTC-N2-AnchorTopo-08 — Unknown reserved type → NWP-RESERVED-TYPE-UNSUPPORTED (MUST NOT be NWP-ACTION-NOT-FOUND)TC-N2-AnchorStream-01 — member_joined on NDP AnnounceTC-N2-AnchorStream-02 — member_left on NDP TTL expiryTC-N2-AnchorStream-03 — Resume from topology.since_versionTC-N2-AnchorStream-04 — resync_required when version is too oldpass, or all 4 N/A)TC-N2-Tls-01 — ALPN nps/1.0 over TLS 1.3TC-N2-Tls-02 — Mutual TLS requiredTC-N2-Tls-03 — Client certificate trust and NID bindingTC-N2-Tls-04 — IdentFrame/certificate NID mismatch rejectionpass, or all 6 N/A)TC-N2-BridgeIn-01 — MCP inbound required method setTC-N2-BridgeIn-02 — gRPC inbound round-tripTC-N2-BridgeIn-03 — A2A inbound round-tripTC-N2-BridgeIn-04 — Bare action resolution and ambiguity rejectionTC-N2-BridgeIn-05 — Foreign-protocol error mappingTC-N2-BridgeIn-06 — Undeclared protocol or direction refusalpass, or all 6 N/A)TC-N2-HA-01 — cluster_epoch on topology read surfacesTC-N2-HA-02 — Planned anchor_failover wire shapeTC-N2-HA-03 — Active-loss failover is terminalTC-N2-HA-04 — Quorum-loss wire shape and read-only modeTC-N2-HA-05 — Standby rejects topology writesTC-N2-HA-06 — Superseded leader is epoch fencedpass, or both N/A)TC-N2-HA-07 — Registry resolves the highest cluster_epochTC-N2-HA-08 — Equal-epoch split-brain rejectionTC-N2-HA-09 — Single-Anchor epoch-one compatibilityPaste the JSON manifest emitted by the conformance suite here:
{
"profile": "NPS-Node-L2",
"profile_version": "0.7",
"scope": ["L2-01", "L2-02", "L2-03", "L2-04", "L2-05", "L2-08"],
"iut": { "name": "", "version": "", "nid": "" },
"peer": { "name": "", "version": "" },
"run": { "date": "", "environment": "" },
"cases": [
{ "id": "TC-N2-AaaS-01", "result": "pass" }
/* ... all 38 cases; L2-06/07 na require messages; only whole conditional families may be na ... */
],
"summary": { "pass": 0, "fail": 0, "skip": 0, "na": 0 }
}
Sign the hex-encoded SHA-256 of the results-manifest JSON (compact form, RFC 8785 canonicalized) with the IUT’s root private key. Verifiers MUST check this signature against the root public key declared above.
RFC 8785 JCS requirements: “RFC 8785 canonicalized” means JSON Canonicalization Scheme (JCS). Implementations MUST use a JCS-compliant library that produces: (1) UTF-8 encoding with no BOM; (2) keys sorted by Unicode code point; (3) numbers in the specific IEEE 754 / ECMAScript serialization defined by JCS (no trailing zeros, no
+sign); (4) Unicode escapes as specified in RFC 8785 §3.2.2.2. Deviations in any of these rules will produce a different SHA-256 and fail cross-language verification.
| Field | Value |
|---|---|
| Manifest SHA-256 | (64 hex chars) |
| Signature algorithm | Ed25519 |
| Signature | (128 hex chars, over the manifest SHA-256) |
| Signed at | (ISO 8601 UTC) |
Optional. Describe environment-specific deviations or operational caveats.
This attestation is self-issued. Third-party certification (NPS Cloud CA) is targeted for L3 in 2027 Q1+ and is not available for L2 at this release.
Copyright: LabAcacia / INNO LOTUS PTY LTD · Apache 2.0