Referenced by8
Labels2

Referencing ideas

IdeaStatusTagsSummaryKatz
html_exportdone`@reqlan/analytical` builds documentation as HTML from the requirement graph ( ["./export.rq".export_pipeline], [analysis_scope] ). Html export should render ideas, attributes, references, and navigable structure suitable for sharing. Pipeline: `NativeAnalysisApi.exportHtml` / `AnalysisRuntime.export` → `reqlan-export` snapshot ( `build_export_snapshot` ) → multi-file static site ( `write_html_export` ). Single-file mode remains optional via [html_export_runtime_modes]. Interactive graph / search JS stays bundled static assets ( [html_export_graph_layout] ), not a second writer ( ["./rust_port.rq".export_rust] ). Thin hosts: extension UI ( ["../extension/export/export.rq".export_webview], ["../extension/export/html-export.rq".html_export_form], ["../extension/export/export.rq".export_html] ) and CLI ( `reqlan export` / ["../cli/cli_package.rq".commands] ). Export is scoped to a selected ["../bases/base.rq".base] ( not a merged multi-base workspace graph ). [html_export_multi_file] [html_export_internal_links] [html_export_idea_tooltips] [html_export_layout_cards] [html_export_heading_tooltips] [html_export_table_columns] [html_export_search] [html_export_list_views] [html_export_overview_links] [html_export_idea_pages] [html_export_file_pages] [html_export_code_reference_pages] [html_export_cluster_pages] [html_export_graph_page] [html_export_attributes_index] [html_export_attribute_pages] [html_export_printable_pages] [html_export_print_idea_cards] [html_export_print_body_whitespace] [html_export_print_in_page_anchors] [html_export_print_all_attributes] [html_export_print_button] [html_export_print_order_by] [html_export_runtime_modes] [html_export_scrollable_lists] [html_export_header_link] [html_export_url_base] [html_export_katz_column]0.201
html_export_graph_pageHtml export should provide an interactive graph page with search, filters, and links back into idea and cluster pages. The graph should support scoped views for workspace, file, cluster, and idea contexts. The workspace graph page must include every idea in the export scope — blocks, oneliners, and ideasets — and must not apply the interactive Ideas Summary GRAPH_MAX_NODES budget. Ideasets are visible by default with a Hide ideasets / Show ideasets toggle, matching the external-file visibility control ( explicit AST ideasets only — distinct from hosting-file treatment ). Hosting `.rq` files ( implicit ideasets ) use a Files `<select>` — hidden / compound / linked — with option tooltips, per ["../extension/workspace-summary/ideas_summary/graphical_graph.rq".file_treatment_toggle] ( parity with Ideas Summary ). Compound mode draws hittable / draggable bounding boxes with clickable titles; linked mode adds synthetic ideaset nodes that navigate via `hostFilePageUrl` / `pageUrl`. Wildcard fan-out edges ( `wildcard_reference` ) are visible by default with a " Wildcard refs " chip ( same label / default as Ideas Summary ); turning it off client-filters those edges and draws them dotted when on — see ["../extension/workspace-summary/ideas_summary/graphical_graph.rq".wildcard_refs_toggle] and ["../extension/workspace-summary/ideas_summary/graphical_graph.rq".webview_export_graph_parity]. Status and tag filters are multi-select and distinguish [graph_status_tag_filters]. Per-idea, per-file, and per-cluster neighbourhood graphs may still use a capped budget for focused pages. [html_export_graph_links] [html_export_graph_layout] [html_export_graph_animation] [html_export_graph_background_load] [html_export_graph_subject] [html_export_graph_labels] [html_export_graph_label_modes] [html_export_graph_label_auto] [html_export_graph_interaction] [html_export_graph_metadata]0.165
html_export_header_linkdoneHtml export should accept an optional header link ( href + label ) rendered in the topbar ahead of section navigation. Hosts such as the marketing site build can set this so readers can return to the parent site from any exported page. When omitted, the topbar shows only the export section nav. Site embed consumption: ["../site/site.rq".spec_html_export]. Often paired with [html_export_url_base] when the export is mounted under a parent static site.0.222
html_export_url_basedoneHtml export should accept an optional urlBase mount prefix ( for example `/spec` or `/reqlan/spec` ). When set, page and asset hrefs must be root-relative under that prefix so static hosts resolve correctly whether the directory URL includes a trailing slash. When omitted, exports keep document-relative hrefs suitable for local folder browsing. Applies across [html_export_internal_links] and [html_export_graph_links]; site embed consumption: ["../site/site.rq".spec_html_export]. Often paired with [html_export_header_link] when the export is mounted under a parent static site.0.259
analytical_rust_portin-progressPort ["../core-architecture.rq".analytical_package] to Rust: lexer, parser ( index path ), extractor, SQLite index, search, and export. `@reqlan/analytical` remains the published JS facade ( `createAnalysisRuntime` / `AnalysisApi` / Zustand host state ). Native work lives in a `crates/` Cargo workspace and ships as per-architecture binaries per [distribution.rust_binary_distribution]. The editor language server is [lsp_rust.language_server_rust]. This analytical port does not replace that process. Component plans: [rust_crate_layout], [lexer_rust], [parser_rust], [parser_align], [indexer.indexer_rust], [search_rust], [export_rust], [native_bridge], [cutover].0.243
native_bridgein-progressThe Rust engine is the analytical core ( parse, index, search, export, typed queries, git-dates, overview coverage, barrel plan ) — not an optional addon. `@reqlan/analytical` is a typed napi facade ( specta `generated.ts` ) plus thin Node helpers ( `createBase`, path utils, `SqliteIndexStore` wrappers over typed napi ). It does not depend on Langium, `@reqlan/language`, or Zustand. Webview-only helpers ( search highlight, filter labels, file-treatment, context signals / model, graph physics ) live in the extension package. Interactive HTML JS stays in `crates/reqlan-export/assets`. Native owns: parse-for-index, persist, query, search, export execution, IndexService / WorkspaceIndex sync, and the index lifecycle FSM + status snapshot via `NativeWorkspaceIndex` + `NativeSqlDb`. The FSM ( `opening` / `syncing` / `ready` / `error` ), counts, in-memory sync progress / cancel, last error, file-index issues ( cap 500 ), and the document-update / workspace-change rings ( cap 50 ) live in `WorkspaceIndexRuntime`; TS reads them through `statusSnapshot()`. Durable diagnostics persist in `index-diagnostics.sqlite`. Consumers: [cli.cli_package] and MCP import `@reqlan/analytical/core` so they never load Langium; the extension host uses the per-target VSIX ( [distribution.vsix_export], [distribution.extension_host_target] ). The host-matching `.node` is required at runtime; there is no sql. js fallback.0.290
sitethe / site folder contains a static Next. js App Router landing page for reqlan. should align with [brand] Copy modules: [copy] Document head: [meta_tags]0.040
spec_html_exportdoneThe site static build exports the workspace requirement graph ( excluding `*.secret.rq` ) under `out/spec/` via `reqlan export`. It must pass [html_export.html_export_url_base] for `/spec` ( honouring `SITE_BASE_PATH`, e. g. `/reqlan/spec` in production ) so `/spec` loads with or without a trailing slash. It must pass [html_export.html_export_header_link] pointing at the marketing site home so readers can leave the embedded spec and return to the parent site. Embedded `/spec` graph pages inherit [html_export.html_export_graph_background_load] so large workspace graphs do not freeze the page while settling. Pipeline: ["../../site/scripts/build-static.mts"] → ["../../site/scripts/export-spec.mts"] → ["../../site/scripts/verify-static-export.mts"]. Host options come from [html_export.html_export] / CLI [cli_package.commands], including native CLI export via ["../core_analysis/rust_port.rq".native_bridge]. CI must build / stage host `reqlan-napi` before this pipeline ( [distribution_reqs.site_distribution] ); the loader probes repo-root `crates/target`, not `packages/crates`.0.142

Reference labels

"../../crates/reqlan-analytical/tests/export.rs:html_export_honours_graph_page_url_base_and_header_link", ../../crates/reqlan-analytical/tests/export.rs:html_export_honours_graph_page_url_base_and_header_link