Skip to content

Restructure and correct the documentation site - #3

Merged
yannrichet merged 3 commits into
mainfrom
claude/fz-docs-skills-review-8xkpgw
Oct 1, 2026
Merged

yannrichet merged 3 commits into
mainfrom
claude/fz-docs-skills-review-8xkpgw

Conversation

@yannrichet

@yannrichet yannrichet commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

Summary

Restructures the site into separate topics and corrects statements that contradicted fz's behavior. Every correction was checked by running fz. The site describes fz with Funz/fz#99 (doc review + usability fixes); where users of the released fz ≤ 1.2 see a different behavior, a note says so.

Structure

  • User Guide split into: Templates & Models (template syntax, formulas, model definition, output extraction), Core Functions, Calculators, Running Studies (parallelism & retries, timeouts, caching, results & traceability, interrupt & resume), Design of Experiments (writing algorithms), Installing Models & Algorithms, AI Agents (Claude Code plugin, fz-mcp).
  • Reference: CLI, Python API, .fz directory & aliases, environment variables, constraints & limits, security model, troubleshooting, release notes.
  • 12 new pages; moved pages redirected (mkdocs-redirects).
  • Plugin pages generated from the wrappers' actual model and calculator files; installation via fz install model <Name>, not pip.

Main corrections

  • fzr examples passed calculators positionally (the 4th slot is results_dir).
  • callbacks is a dict; fzi also returns formulas/static objects; fzc writes one sub-directory per case; fzo must target case directories.
  • No automatic ?var conversion; first Ctrl+C terminates running cases; cache://_; SLURM (srun / job arrays, resources); funz:// (UDP port); SSH auth and host keys; cache key (SHA-256 + code_id); sh:// file resolution after P0-8.
  • Nonexistent items removed: FZ_CACHE_DIR, FZ_UDP_DISCOVERY_PORT, CRITICAL log level, --timeout flag, slurm_options, n_parallel, calculators="funz", invented Funz protocol.
  • Behavior after Docs/skill review + usability fixes found while documenting fz#99 (fz ≤ 1.2 noted): timeout=0 / FZ_RUN_TIMEOUT=0 = no timeout; a model without delim accepts $(x) and ${x}; fzr rejects a URI as results_dir; fz list lists aliases by name and checks their models commands; global installs run from anywhere; empty .fz/tmp/fz_temp_* removed.
  • Dead links to examples/perfectgas/ in fz replaced; obsolete SUMMARY.md removed.

Build

  • requirements.txt pins MkDocs < 2 (MkDocs 2.0 drops the plugin/theme system).
  • CI builds with mkdocs build --strict (link and anchor validation) and runs test_site_structure.py (every nav page and redirect built).

Test plan

  • mkdocs build --strict
  • python test_site_structure.py (49 navigation pages + 5 redirects)
  • Code examples of quickstart, fzd (function model) and testing page executed
  • Mermaid diagram rendering not verified (CDN blocked in the build environment)

Dependency

Merge Funz/fz#99 first: this site links to its doc/limitations.md and describes its fixes.

🤖 Generated with Claude Code

https://claude.ai/code/session_012GxLbauyVHBQPCeSow8hdh

Structure
- User Guide split into Templates & Models, Core Functions, Calculators,
  Running Studies, Design of Experiments, Installing, AI Agents
- new pages: template syntax, output extraction, timeouts, results &
  traceability (layout, case naming, manifest, RO-Crate, input_static),
  writing algorithms, installing models, AI agents (plugin, fz-mcp),
  CLI reference, constraints & limits, security model
- moved pages redirected (mkdocs-redirects); strict build with link and
  anchor validation; requirements.txt pins MkDocs < 2; nav check script

Corrections (each checked by running fz)
- fzr examples passing calculators positionally (4th slot is results_dir)
- callbacks are a dict; fzi returns formulas and static objects too;
  fzc writes one sub-directory per case; fzo must target case dirs
- default delimiters: variables () / formulas {} without a delim key
- FZ_RUN_TIMEOUT=0 times out immediately; no timeout for ssh/slurm
- parallelism = number of calculator entries; FZ_MAX_WORKERS only caps
- nonexistent FZ_CACHE_DIR, FZ_UDP_DISCOVERY_PORT, CRITICAL log level,
  --timeout flag, slurm_options, n_parallel, funz auto-discovery token
- SLURM (srun / sbatch arrays, resources), funz:// (UDP port), SSH auth
  and host keys, cache key (SHA-256 + code_id), cache://_ resume
- plugins installed with fz install model, not pip; per-plugin pages
  generated from the wrappers' actual model files
- removed obsolete SUMMARY.md

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012GxLbauyVHBQPCeSow8hdh
- sh:// file-name resolution (P0-8): only words existing in the launch
  directory and absent from the case are resolved; appended input names
  remain a trap; old behavior noted for result re-checks
- Python 3.14 tested; legacy-cache warning; failing version_cmd; security
  table lists version_cmd and quoted remote interrupt command
- constraints page re-synced with fz doc/limitations.md; --global note
- perfect gas example: replace dead links to examples/perfectgas/

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012GxLbauyVHBQPCeSow8hdh
timeout 0, default delimiters, fzr results_dir guard, fz list output and
checks, global-install runner paths, .fz/tmp cleanup; fz <= 1.2 behavior
noted where users of the released version are affected.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012GxLbauyVHBQPCeSow8hdh
@yannrichet
yannrichet merged commit dbedf47 into main Oct 1, 2026
1 check 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

Development

Successfully merging this pull request may close these issues.

2 participants