Skip to content

test(scale): WDC T0→T6 first-fail escalation spike #401

Description

@DecisionNerd

Boundary (harness location)

Ladder execution (orchestration, runners, first-fail evidence packaging) belongs in an external scale harness repository, not GraphForge core CI or Makefile. GraphForge docs define the spec/contract (GSI, WDC guide); thin reference fetch helpers may be called from the harness.


Problem

M4 has LiveJournal LIMIT evidence (~4M / ~35M) but no accepted external hyperlink-graph escalation ladder. Without a bounded WDC spike that runs the full ordered ladder until first fail, scale claims either stop artificially at PLD or jump to unsupported Host/Page ambitions without recorded stop evidence.

Objective

Run the WDC guide ladder T0 → T6 (including Host/Page year sub-steps) under the documented first-fail policy: each tier’s acceptance criteria must pass before the next starts; on the first failed tier, stop and record which tier failed and why. Do not skip tiers. Do not proceed past a red tier.

Debt / regime

  • Debt type: test/proof
  • Quality regime: A compute

Requirements

  1. Follow the exact tier order and exit/acceptance criteria in docs/guide/datasets/wdc-hyperlink-graph.md:
    • T0 example 106/141
    • T1 ~100K 2012 PLD sample
    • T2 ~1M / ~5–15M 2012 PLD shard
    • T3 full 2014 PLD (~13M / ~56M)
    • T4 full 2012 PLD (~43M / ~623M)
    • T5a 2014 Host (~22M / ~123M) then T5b 2012 Host (~101M / ~2043M)
    • T6a 2014 Page (~1727M / ~64422M) then T6b 2012 Page (~3563M / ~128736M)
  2. Use retrieved artifacts (docs(datasets): WDC Hyperlink Graph tiered scale guide and retrieval #399) and the chunked ingest tool (feat(io): chunked WDC Index/Arc Arrow bulk ingest tool #400) when available; document WebGraph→Arc conversion when required (2014 PLD/Host).
  3. Record for each attempted tier: node/edge counts, project bytes, peak RSS, CSR build time if warmed, one-hop and two-hop LIMIT 1000 shape metrics aligned with test(performance): establish the M4 embedded baseline and entry gate #334 evidence fields where applicable, and green/red disposition.
  4. First-fail: stop at the first tier that violates acceptance or documented resource stop conditions; do not attempt any larger tier (including Host/Page after a PLD fail, or T5b after T5a fail, or T6b after T6a fail).
  5. Success of a tier is required before attempting the next. A first-fail stop at or before Host/Page is a valid complete outcome for this issue.

Acceptance Criteria

  • Ladder executed in order from T0 without skipping; evidence attached for every attempted tier through the first red (or through T6b if all green).
  • Tier T0 and at least one Index/Arc sample tier (T1 or T2) produce green LIMIT + reopen evidence attached to this issue (unless even T0 fails — then record T0 red and stop).
  • Written first-fail report: last green tier, first red tier (if any), failure class, and why larger tiers were not run.
  • Host (T5) and Page (T6) are attempted only if all prior tiers are green; otherwise explicitly recorded as not-run due to first-fail (not as “deferred forever”).
  • Evidence does not claim analyst-verb or full-graph PageRank success unless separately measured and in posture.

BDD Completion Scenarios

Scenario: Early-tier green
Given a project ingested from the WDC example or sample tier
When fixed-hop Cypher with LIMIT 1000 runs after CSR warm
Then results return without full edge scans on an adjacency hit (or document adjacency miss honestly)
And reopen preserves counts

Scenario: First-fail stop honored
Given a tier whose acceptance criteria fail (disk/RSS projection, ingest, CSR/reopen, or LIMIT miss)
When the spike evaluates go/no-go for the next tier
Then it records a stop at that tier without attempting any larger tier (including Host/Page)

Scenario: Host/Page only after prior green
Given T0–T4 are green
When the spike continues
Then T5a is attempted before T5b, and T6 only after T5b green
And failure at any sub-step stops further escalation

Implementation Notes

Observability

Security And Privacy

  • No publishing of corpus contents; evidence is counts, timings, RSS, paths under a local cache root.

Testing

  • Manual/scheduled heavy evidence; not a CI default.

Documentation

  • Link evidence from this issue into the WDC guide “Validation” section or a short note under benchmarks/ if a durable artifact is warranted.

Non-Goals

Related Issues

Open Questions

  • None

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    testingTest coverage and testing infrastructure

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions