Skip to content

Member site: plainweave.foundryside.dev (Astro) + Pages deploy#3

Merged
tachyon-beep merged 2 commits into
mainfrom
site/member-page
Jun 26, 2026
Merged

Member site: plainweave.foundryside.dev (Astro) + Pages deploy#3
tachyon-beep merged 2 commits into
mainfrom
site/member-page

Conversation

@tachyon-beep

Copy link
Copy Markdown
Contributor

The Plainweave member website

Adds the operator/portfolio member site (site/, Astro → @weft/site-kit) that serves plainweave.foundryside.dev, plus the GitHub Pages deploy workflow it needs.

Two commits:

  1. site: — the page source the Weft portfolio office dropped in (hero, capabilities, usage snapshot, pairings matrix from kit data, mandatory honest-limits, CTA). Data-driven from the shared @weft/site-kit so it can't drift from the hub; advisory-only, consumes the SEI, renders no verdict.
  2. ci(site):.github/workflows/site.yml: build Astro on push to main (+ manual dispatch) → upload Pages artifact → deploy-pages. The office's source referenced this workflow but didn't include it; this supplies it.

Notes

  • Custom domain rides the artifact (site/public/CNAMEdist/CNAME), so deploy-pages sets it on first deploy. The DNS record (plainweave.foundryside.dev → GitHub Pages) is owner/infra-side.
  • npm ci runs the preinstall hook that sparse-clones the public foundryside-dev/weft packages/site-kit — no token needed.
  • Deploys only once this lands on main. Pages source = GitHub Actions.
  • Kept off the 1.1.0 release PR (Release 1.1.0 — operator web UX + SEI conformance #2) so that stays a clean version-bump + CHANGELOG.

Verification

  • npm run build green locally (1 page, React islands bundled).
  • All in-page repo doc links resolve.

🤖 Generated with Claude Code

tachyon-beep and others added 2 commits June 26, 2026 18:27
Replicates the member-site pattern on @weft/site-kit (woad thread): hero 'permission for code to exist', intent-coverage-as-floor honesty beat, honest pairings, mandatory honest-limits, and the 'Not a compliance or sign-off system' deconfliction-not-security disclaimer. Astro build green. Not deployed (public remote/name owner-gated).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Build site/ (Astro) on push to main + manual dispatch, and deploy to Pages
via actions/deploy-pages. `npm ci` runs the preinstall fetch of the public
@weft/site-kit; the custom domain rides the artifact (site/public/CNAME).

The portfolio office dropped the site source + CNAME but not the deploy
workflow this references; this supplies it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 34f06b95d3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

{/* ---------------------------------------------------------------- */}
{/* 1 · Hero — tagline + member dossier terminal (the honesty beat) */}
{/* ---------------------------------------------------------------- */}
<section class="hero" style={`--thread: ${me.thread};`}>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Add Plainweave to the fetched site-kit roster

When the Pages workflow runs npm ci, fetch-site-kit.mjs vendors @weft/site-kit from foundryside-dev/weft@main, and that data set still has charter but no plainweave in its roster/matrix. In that context getMember(SELF) returns null, so this me.thread dereference aborts astro build before any Pages artifact is produced; either fetch a site-kit ref containing the Plainweave roster entry or handle the missing member before rendering.

Useful? React with 👍 / 👎.

<div><span class="terminal__prompt">$</span> plainweave <span class="terminal__arg">intent orphans code</span></div>
<div><span class="terminal__hl">loomweave:eid:py:exported-api:billing.export_ledger</span> → no requirement <span class="terminal__dim">("why does this exist?")</span></div>
<div class="terminal__gap"></div>
<div><span class="terminal__prompt">$</span> plainweave <span class="terminal__arg">bind sei</span> loomweave:eid:py:exported-api:billing.export_ledger --req REQ-204</div>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use the actual bind CLI syntax

The quick-start command as rendered here does not match the CLI that this repo exposes: _register_bind_commands defines bind sei as two positional arguments (entity_id and requirement_id) and has no --req option, so copy-pasting this line exits with unrecognized arguments: --req. This should show the requirement id positionally, otherwise the primary “bind it” step in the usage snapshot is broken.

Useful? React with 👍 / 👎.

{
name: 'Optional operator web UI',
what: 'A read-and-author mirror of the intent graph for non-CLI operators: an intent dashboard (coverage, orphans, and an in-band no-silent-clean banner), corpus browse with filters, requirement detail + authoring with current-vs-draft side-by-side and two-step draft approval, goals, and a unified review queue for drafts + proposed trace links with a required-reason accept/reject. Local-first, single-operator, advisory — no release verdicts.',
primitive: "pip install 'plainweave[web]' · plainweave web --actor human:<you>",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not publish an unusable web-extra install

For visitors following the published install path, pip install 'plainweave[web]' currently resolves the latest PyPI release, 1.0.0, which does not provide the web extra; pip therefore installs Plainweave without Starlette/Uvicorn and plainweave web immediately exits with the missing-extra hint. Until a release containing the extra is published, this should point to a repo/main install or not present the web UI as pip-installable.

Useful? React with 👍 / 👎.

@tachyon-beep tachyon-beep merged commit 92ec70a into main Jun 26, 2026
1 check passed
@tachyon-beep tachyon-beep deleted the site/member-page branch June 26, 2026 11:39
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.

1 participant