Public demo snapshot of an in-house pyRevit extension for precast concrete shop-ticket QC (37 checks / 46 checklist rows) and a standalone panel handling solver (PCI Chapter 8). - No client, job, plant or product data: knowledge layers ship as structural templates only. - Ticket QC's model-read escalation targets a LAN model server endpoint (configurable), not a cloud provider. - Built from the private development repo via tools/make_dist.py.
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Something ran and gave a wrong or crashing answer
|
||||
title: ''
|
||||
labels: bug
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
<!--
|
||||
Before filing: is this a WRONG answer, or a REFUSAL to answer?
|
||||
|
||||
WillTools refuses rather than guesses, by design -- a "NOT JUDGED" result
|
||||
with a stated reason is often the tool working CORRECTLY (an unmapped
|
||||
parameter, a missing knowledge layer, a check that legitimately has nothing
|
||||
to say about this piece). If the tool told you clearly why it would not
|
||||
answer, that is very likely not this template -- it's the tool doing what it
|
||||
is supposed to. File that as a "refused, and I think it shouldn't have"
|
||||
report instead (see the Question template), because that is knowledge-layer
|
||||
work, not a code fix.
|
||||
|
||||
This template is for: it crashed, it gave two different answers to the same
|
||||
input, or it silently produced a wrong number with no stated reason.
|
||||
-->
|
||||
|
||||
## What happened
|
||||
|
||||
<!-- Paste the exact error, verbatim, in a code block. Do not summarize it or
|
||||
retype it from memory -- the exact text (including any traceback) is what
|
||||
gets this fixed fast. -->
|
||||
|
||||
```
|
||||
paste it here
|
||||
```
|
||||
|
||||
## What you expected instead
|
||||
|
||||
## Steps to reproduce
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Environment
|
||||
|
||||
Run this and paste its ENTIRE output below, unedited -- it is the single
|
||||
most diagnostic thing you can attach. It is plain text with no color codes,
|
||||
so it pastes cleanly into this box:
|
||||
|
||||
```
|
||||
python tools/setup_machine.py --check
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>setup_machine.py --check output</summary>
|
||||
|
||||
```
|
||||
paste it here
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
- Windows version:
|
||||
- `python --version`:
|
||||
- Revit version (if this involves a ribbon button):
|
||||
- pyRevit version (if this involves a ribbon button):
|
||||
|
||||
## Which button or command
|
||||
|
||||
<!-- e.g. "Ticket QC" on the ribbon, or `python -m panellift ...` -->
|
||||
|
||||
## No client or job data, please
|
||||
|
||||
Screenshots, pasted output, and job files should carry no real client name,
|
||||
job name, or job number. If a screenshot or a job file shows one, use a
|
||||
placeholder (`sample_client`, `sample_job`) or ask the owner how to share it
|
||||
privately instead of pasting it here.
|
||||
@@ -0,0 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Ask the owner directly
|
||||
url: https://github.com/will123song/pyrevit-dev/discussions
|
||||
about: Not sure it's a bug, or want to talk through knowledge layers first?
|
||||
@@ -0,0 +1,19 @@
|
||||
---
|
||||
name: Question
|
||||
about: Something was unclear, or you're not sure what a result means
|
||||
title: ''
|
||||
labels: question
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## What you were trying to do
|
||||
|
||||
## What the report or the ribbon said
|
||||
|
||||
<!-- Paste the relevant text, or attach a screenshot with no client/job
|
||||
names visible (see the note in the bug report template). -->
|
||||
|
||||
## What was unclear about it
|
||||
|
||||
<!-- Was it a refusal you think should have been an answer? A wording you
|
||||
could not parse? A row you did not expect to be blank? Say which. -->
|
||||
@@ -0,0 +1,39 @@
|
||||
name: ci
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.12'
|
||||
|
||||
- name: Install
|
||||
# requirements.txt is the single source of truth for host-side deps.
|
||||
# PyYAML fixes collection (ticketpage._read_yaml falls back to it off
|
||||
# IronPython; without it eight test files die before running). pymupdf
|
||||
# is required for tools/ticket_delta.py's tests.
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: panellift tests
|
||||
run: python -m pytest panellift -q -p no:cacheprovider
|
||||
|
||||
- name: vibe tests (the Revit-free half of the extension)
|
||||
run: python -m pytest WillTools.extension -q -p no:cacheprovider
|
||||
|
||||
- name: Syntax smoke (extension + tools + panellift)
|
||||
run: python -m compileall -q WillTools.extension tools panellift/src
|
||||
|
||||
- name: Scrub worktree with the committed generic sample terms
|
||||
# Real client names never leave the owner's machine: this
|
||||
# distribution ships no .scrub-terms at all, so CI runs the generic
|
||||
# .scrub-terms.example instead -- the same fallback a colleague's own
|
||||
# clone uses locally with no real term list.
|
||||
run: python tools/scrub.py --worktree --terms .scrub-terms.example
|
||||
Reference in New Issue
Block a user