Skip to content

Addition of cost analysis capability to SCOPE measures#91

Draft
prsh5175 wants to merge 516 commits intodevelopfrom
replace-windows-EC
Draft

Addition of cost analysis capability to SCOPE measures#91
prsh5175 wants to merge 516 commits intodevelopfrom
replace-windows-EC

Conversation

@prsh5175
Copy link
Copy Markdown
Collaborator

@prsh5175 prsh5175 commented Feb 27, 2026

Addition of RSMeans API lookup and cost analysis visualization capabilities to SCOPE measures.

  • Note: Name of the branch may be misleading but the 'replace-windows-EC' branch is now not just associated with features related to window enhancement measures, but it is the main feature branch for SCOPE measures that integrates measures such as window, door, wall insulation, roof insulation and parametric analysis features. New functionality related to RSMeans API calls (to all measures: doors, roof, wall) will be integrated with the 'replace-windows-EC' branch, which will ultimately be merged to develop branch when ready.

To-Do:

sonjasaurus and others added 30 commits November 4, 2025 14:41
…d change R-value if entire door is replaced, according to door material type; passed test by checking idf and osw files
…roperties, instead of adusting thickness to achieve specified door R-value
1jhu1 and others added 6 commits April 10, 2026 15:42
…and fix RSMeans summary runtime error

- add MIN_ACCEPTABLE_MATCH_SCORE constant for candidate quality guard
- trigger fallback ID path when best raw score is below threshold (score < 0)
- improve fallback reason tagging for below-threshold vs out-of-bounds scores
- fix invalid Python identifiers in RSMeans per-area/per-unit summary calculations
- verify apply_measure execution succeeds and RSMeans tests pass
…wall insulation measure

- Add MIN_ACCEPTABLE_MATCH_SCORE = 0.0 constant to shared window_enhancement RSMeans helper
- Update _select_best_rsmeans_candidate to use explicit threshold constant
- Export MIN_ACCEPTABLE_MATCH_SCORE and INSULATION_FALLBACK_IDS from wall measure wrapper
- Update wall measure documentation (README and Increase_Insulation_Walls.md):
  - Document fallback RSMeans ID logic with table of all 11 material types
  - Clarify volume-based ($/CF) cost calculation approach
  - Add Use Exact Costline ID argument documentation
  - Fix custom cost example from $/SF to $/CF
  - Add Cost Calculation Details section with volume formula
  - Add solution for Fallback ID warning in error handling
- Wall insulation measure verified end-to-end (execute + cost lookup + embodied carbon)
@prsh5175 prsh5175 added enhancement New feature or request DO NOT MERGE labels Apr 10, 2026
@prsh5175 prsh5175 self-assigned this Apr 10, 2026
1jhu1 and others added 21 commits April 13, 2026 14:24
…s, cost basis fields, scoring threshold, comments, docs, setup automation
… score threshold, cost basis fields, comments, docs, and setup automation
…sure

- Remove hardcoded API key from config.ini (replace with placeholder)
- Add config.ini to .gitignore (already present)
- Create config.ini.template with setup instructions
- Add environment variable fallback (EC3_API_TOKEN env var) in apply_measure.py
  - Priority: env var > config.ini > error with guidance
  - Detects placeholder values and rejects them
- Update measure.py API token argument with security warnings
  - Advise users to use env vars for CI/CD instead of raw tokens
- Create SECURITY.md documenting API key management best practices
  - Local dev vs CI/CD workflows
  - GitHub Actions secret configuration
  - Credential rotation procedures
  - Code review checklist

This ensures API keys are never accidentally committed and provides
clear guidance for secure usage across local, CI/CD, and production
environments.
- Update ENVIRONMENT_SETUP.md with latest setup instructions
- Update RSMEANS_SEARCH_STRATEGY.md with current search approach
- Update Window_Enhancement.md with measure details and features
- Add setup_environment.ps1 PowerShell setup helper script
- Update call_rsmeans_api.py with improved RSMeans helper logic
  - Set MIN_ACCEPTABLE_MATCH_SCORE threshold to 50.0
  - Improve fallback comment clarity
…ulation_rsmeans_selection_mode, total installed cost; align with wall measure
…t still use unit not area, sealing cost is not using openstudio's model's width and length
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DO NOT MERGE enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants