Skip to content

docs(grounding): reconcile Skein role to KRL stack — compute/backend engine#20

Merged
hyperpolymath merged 3 commits into
mainfrom
claude/practical-newton-9eFe2
Jun 19, 2026
Merged

docs(grounding): reconcile Skein role to KRL stack — compute/backend engine#20
hyperpolymath merged 3 commits into
mainfrom
claude/practical-newton-9eFe2

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

What

Reconciles Skein.jl's grounded role across all its canonical role statements (ECOSYSTEM, ANCHOR, CLAUDE.md, README, STATE, META, 0-AI-MANIFEST, ROADMAP) to the agreed KRL stack spec.

Before: "Skein = persistence + semantic-indexing layer (layer 4); serves KRL's Retrieve leg; QuandleDB = the Resolve layer."

After:

  • Skein.jl = the computational / backend engine of the KRL stack — computes / transforms / normalizes / evaluates invariants and equivalence checks, with an embedded SQLite store.
  • QuandleDB = the database application that wraps Skein — the canonical persistence + invariant/equivalence face.
  • The four KRL operations are operations run against the QuandleDB+Skein substrate; no op maps 1:1 to a component (so Skein is explicitly not "the Retrieve leg" — that was an op↔component category error).
  • Adds the Retrieve clause: Retrieve recovers resolution-relevant artefacts (presentations, invariants, witnesses, equivalence classes, prior resolutions, explanations, provenance), not arbitrary querying. Generic store access is a legitimate engine-layer affordance. KRL is a resolution DSL, not merely a query language.

Why

Part of the estate-wide doc-grounding pass agreed directly with the maintainer. This framing keeps the docs honest about shipped code (Skein really does persist via SQLite — so its store stays real, but its stack role is the engine) while matching the canonical stack. The withdrawn knot-graph-edge-layer (schema v5) guardrail is retained unchanged.

Cross-refs krl docs/decisions/0002-query-language-deferred.adoc (companion PR hyperpolymath/krl#35).

Scope

Docs + machine-readable only. No src/ or test changes; the 1089-test baseline is untouched.

🤖 Generated with Claude Code


Generated by Claude Code

…Retrieve leg'

Aligns all canonical role statements (ECOSYSTEM, ANCHOR, CLAUDE.md, README,
STATE, META, 0-AI-MANIFEST, ROADMAP) to the agreed KRL stack spec:

- Skein.jl = computational/backend engine of the KRL stack (computes/
  transforms/normalizes/evaluates invariants + equivalence checks) with an
  embedded SQLite store. QuandleDB = the database application that wraps Skein
  (persistence + invariant/equivalence face).
- Drop the over-specific 'Skein serves KRL's Retrieve leg' op->component
  mapping: the four KRL ops are operations run against the QuandleDB+Skein
  substrate, none maps 1:1 to a component.
- Add the Retrieve clause: Retrieve recovers resolution-relevant artefacts, not
  arbitrary querying; generic store access is a legitimate engine-layer
  affordance. KRL is a resolution DSL, not merely a query language.
- Withdrawn knot-graph-edge-layer (schema v5) guardrail retained unchanged.

Cross-refs krl docs/decisions/0002-query-language-deferred.adoc.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017TXizM5c1Yd9HWf7Y15YH2
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 31 issues detected

Severity Count
🔴 Critical 0
🟠 High 14
🟡 Medium 17
View findings
[
  {
    "reason": "Issue in scorecard.yml",
    "type": "missing_workflow",
    "file": "scorecard.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/checkout@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/init@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/analyze@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "No permissions declaration -- add permissions: read-all",
    "type": "missing_permissions",
    "file": "codeql.yml",
    "action": "add_permissions",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql.yml",
    "type": "missing_timeout_minutes",
    "file": "codeql.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in scorecard-enforcer.yml",
    "type": "scorecard_publish_with_run_step",
    "file": "scorecard-enforcer.yml",
    "action": "split_scorecard_publish_job",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in instant-sync.yml",
    "type": "secret_action_without_presence_gate",
    "file": "instant-sync.yml",
    "action": "peter-evans/repository-dispatch",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Required file missing (condition: public_repo)",
    "type": "missing_requirement",
    "file": ".github/workflows/scorecard.yml",
    "action": "create",
    "rule_module": "cicd_rules",
    "severity": "high"
  },
  {
    "reason": "Nominal-only SAST in Skein.jl: codeql.yml language matrix contains no language present in the repo and lacks `actions`, so CodeQL records zero results on every commit. Remediation: set the CodeQL matrix to `language: actions`.",
    "type": "StaticAnalysis",
    "file": "/home/runner/work/Skein.jl/Skein.jl",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Add CodeQL or equivalent SAST workflow.",
    "scorecard_check": "SAST"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath marked this pull request as ready for review June 18, 2026 16:11
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 18, 2026 16:11
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 16:13
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 18, 2026 16:13
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 16:40
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 18, 2026 16:56
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 16:56
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 18, 2026 17:37
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 17:38
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 18, 2026 17:38
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 17:39
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 18, 2026 17:39
@hyperpolymath hyperpolymath disabled auto-merge June 18, 2026 18:23
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 01:33
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 01:33
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 01:34
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 01:36
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 01:36
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 06:31
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 06:32
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 06:32
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 06:33
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 06:34
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 19, 2026 06:35
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 06:35
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 19, 2026 06:35
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 06:48
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 19, 2026 13:37
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 13:37
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 19, 2026 13:38
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 13:39
Prior CI run for this head ended in startup_failure (runner allocation);
other workflows started cleanly on the same commit. Docs-only PR; no src/test change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017TXizM5c1Yd9HWf7Y15YH2
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 31 issues detected

Severity Count
🔴 Critical 0
🟠 High 14
🟡 Medium 17
View findings
[
  {
    "reason": "Issue in scorecard.yml",
    "type": "missing_workflow",
    "file": "scorecard.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/checkout@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/init@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/analyze@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "No permissions declaration -- add permissions: read-all",
    "type": "missing_permissions",
    "file": "codeql.yml",
    "action": "add_permissions",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql.yml",
    "type": "missing_timeout_minutes",
    "file": "codeql.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in scorecard-enforcer.yml",
    "type": "scorecard_publish_with_run_step",
    "file": "scorecard-enforcer.yml",
    "action": "split_scorecard_publish_job",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in instant-sync.yml",
    "type": "secret_action_without_presence_gate",
    "file": "instant-sync.yml",
    "action": "peter-evans/repository-dispatch",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Required file missing (condition: public_repo)",
    "type": "missing_requirement",
    "file": ".github/workflows/scorecard.yml",
    "action": "create",
    "rule_module": "cicd_rules",
    "severity": "high"
  },
  {
    "reason": "Nominal-only SAST in Skein.jl: codeql.yml language matrix contains no language present in the repo and lacks `actions`, so CodeQL records zero results on every commit. Remediation: set the CodeQL matrix to `language: actions`.",
    "type": "StaticAnalysis",
    "file": "/home/runner/work/Skein.jl/Skein.jl",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Add CodeQL or equivalent SAST workflow.",
    "scorecard_check": "SAST"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 20:37
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 20:37
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 20:58
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 21:00
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 21:00
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 21:15
macOS runner minutes were exhausted, so every ci.yml run ended in
startup_failure and the required Julia status checks never reported,
blocking merges. Ubuntu 1.10/1.11 covers the matrix; this also cuts
Actions burn (macOS = 10x). Restore the macOS leg once minutes are back.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017TXizM5c1Yd9HWf7Y15YH2
@github-actions

Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 31 issues detected

Severity Count
🔴 Critical 0
🟠 High 14
🟡 Medium 17
View findings
[
  {
    "reason": "Issue in scorecard.yml",
    "type": "missing_workflow",
    "file": "scorecard.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/checkout@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/init@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action github/codeql-action/analyze@v4 needs attention",
    "type": "unpinned_action",
    "file": "codeql.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "No permissions declaration -- add permissions: read-all",
    "type": "missing_permissions",
    "file": "codeql.yml",
    "action": "add_permissions",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in codeql.yml",
    "type": "missing_timeout_minutes",
    "file": "codeql.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in scorecard-enforcer.yml",
    "type": "scorecard_publish_with_run_step",
    "file": "scorecard-enforcer.yml",
    "action": "split_scorecard_publish_job",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in instant-sync.yml",
    "type": "secret_action_without_presence_gate",
    "file": "instant-sync.yml",
    "action": "peter-evans/repository-dispatch",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Required file missing (condition: public_repo)",
    "type": "missing_requirement",
    "file": ".github/workflows/scorecard.yml",
    "action": "create",
    "rule_module": "cicd_rules",
    "severity": "high"
  },
  {
    "reason": "Nominal-only SAST in Skein.jl: codeql.yml language matrix contains no language present in the repo and lacks `actions`, so CodeQL records zero results on every commit. Remediation: set the CodeQL matrix to `language: actions`.",
    "type": "StaticAnalysis",
    "file": "/home/runner/work/Skein.jl/Skein.jl",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Add CodeQL or equivalent SAST workflow.",
    "scorecard_check": "SAST"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath enabled auto-merge (squash) June 19, 2026 21:33
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 22:29
@hyperpolymath hyperpolymath enabled auto-merge (rebase) June 19, 2026 22:35
@hyperpolymath hyperpolymath disabled auto-merge June 19, 2026 22:44
@hyperpolymath hyperpolymath merged commit 562a479 into main Jun 19, 2026
11 checks passed
@hyperpolymath hyperpolymath deleted the claude/practical-newton-9eFe2 branch June 19, 2026 23:07
hyperpolymath added a commit that referenced this pull request Jun 20, 2026
…h table (#22)

## What

Brings **Skein.jl** under the 2026-06-19 estate rule: a per-repo
`AFFIRMATION.adoc` + a scoped Must/Intend/Wish table. Branched off
current `main` (which already carries the merged #20 grounding + #21 CI
work), so the diff is **just these two docs**.

- **`AFFIRMATION.adoc`** — the No-Bullshit attestation, written from
checks **actually run this session** at commit `ac5daca`. `MUST`/`TRUST`
gates **PASS**; cleanly instantiated + **REUSE-compliant**; real
shipping content acknowledged — `Skein` v0.3.1, ~2522 lines across
`src/` (types/polynomials/invariants/storage/query), **13 accelerator
package-extensions**, and a real test tree.
- **`docs/identity-fabric/musts-intends-wishes.adoc`** — Skein.jl's
scoped scope table + the confirmed stack + cross-repo wiring.

## Honest limits (in the file, surfaced here)

- **`julia` is absent in this session**, so `test/runtests.jl` and
friends **were not executed**. The docs cite an ~1089-test baseline;
this session did **not** reproduce it. The affirmation states the files
*exist* — it does **not** claim, from here, that they pass. A `julia
--project=. … Pkg.test()` run (with sibling path-deps
`../AcceleratorGate.jl` + `../KnotTheory.jl`) is the authoritative
check.
- **READINESS self-grades `C`**; storage obligations are
*example/property-tested, not proven* (`PROOF-NEEDS.md`); the 13
accelerator extensions are present-as-code, **not exercised** here.
- Minor residue: 2 `{{PLACEHOLDER}}` files + 6 `rsr-template-repo`
references.
- Anchored at `ac5daca`; **not GPG-signed by the AI party** — owner
signs on commit.

## Scope

Docs only. No `src/`, `ext/`, or `test/` changes; the test baseline is
untouched.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_017TXizM5c1Yd9HWf7Y15YH2

---
_Generated by [Claude
Code](https://claude.ai/code/session_017TXizM5c1Yd9HWf7Y15YH2)_

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants