Skip to content

feat: algorithm classes, certificate viewer and the instruments rebuild (PRD-011, PRD-012, PRD-013) - #23

Merged
khalid-offset merged 3 commits into
mainfrom
feat/classes-and-x509
Oct 21, 2026
Merged

khalid-offset merged 3 commits into
mainfrom
feat/classes-and-x509

Conversation

@khalid-offset

Copy link
Copy Markdown
Contributor

What

Three pieces, built through PM, dev, QA, design and cryptography review:

Evidence

  • go test ./... passes; golangci-lint 0 issues on Windows and GOOS=linux; node --check on every module.
  • Browser journey: 234 passed, 0 failed. The new visual-phase.mjs (E2E-VIS-1..7) covers fit, Tab reach and AA contrast at 1440/1100/860/375 px, light and dark.
  • Every rewritten journey check, and why it is not a weakening: QA-REPORT-012.
  • Every number and claim on the new screens checked against its source; six defects fixed: CRYPTO-REVIEW-001.
  • RTM rows for REQ-CLS, REQ-UXF, REQ-XV and REQ-VIS are all done, each with evidence.

Not in this PR

  • No release (0.4.0 waits for the owner).
  • The SSH report body keeps its PRD-008 layout; only its algorithm tables moved to the instruments.

…-012)

Model and API complete and tested: algo.ClassOf, the suite hash part,
signatures as hash and key, eval/10 algorithms[], the Inventory class
filter, the TLS hygiene bands renamed (migration 15), and the X.509
decoder (internal/x509view) with GET /api/v1/certificates/{fp}/x509.

The screens built on it are a first pass and are being redesigned
(owner review 2026-10-21: too much text). Journey: 224 passed, 3 failed,
all three in that UI.
One set of shared instruments (viz.js) draws every quantity the same way:
a 0-256 bits bar over the strength bands, strength chip, part cell,
post-quantum glyph, status tile, validity bar, gauge and readiness
stepper, each with a text alternative.

- Summary: four figures, Fix first as numbered lines, one checks bar,
  a tile per area.
- Configuration (tls-config.js): one place to check the setup, in a
  reviewer's order: protocols and suites in server order with every part's
  bits, the certificate chain, key exchange and signatures, revocation,
  features (HSTS header shown), every algorithm by class; a jump row and
  each part's issues.
- Certificate page: chain ribbon, validity, key and signature meters,
  names and uses (an EC key with key encipherment marked, RFC 8813), every
  extension, identifiers, PEM folded.
- Inventory: by class and by classical strength (?strength=), weakest
  first.
- SSH tables: bits bar and a post-quantum column.
- Scanner: records whether the heartbeat extension is negotiated.

QA: the journey reads the new screens and visual-phase.mjs adds
E2E-VIS-1..7 (fit, Tab reach and contrast at 1440/1100/860/375 px, light
and dark); 234 passed, 0 failed. TestInstrumentsAreSharedAndLabelled.
CRYPTO-REVIEW-001 checks every number against its source and fixed six
defects; QA-REPORT-012 has the screen walk and the sign-offs. Help,
CHANGELOG, README and its screenshots, and the RTM are updated.
…-13)

On Configuration each TLS version that is on opens only when it needs a
look: an old version on, a suite below Strong, or the only version.
Folded, its head says how its suites rate (Strong, all N). One button
shows or hides every version, its label following the versions as they
are opened by hand. E2E-VIS-FOLD covers it; the journey passes 235/0.
@khalid-offset
khalid-offset merged commit ba2a5f5 into main Oct 21, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant