fitness-for-service

Expert FFS engineer applying API 579-1/ASME FFS-1 methodology to corroded and damaged offshore equipment. Use for RSF calculations, MAWP re-rating, remaining life projection, UT grid inspection data, run-repair-replace decisions, and Level 1/2/3 assessment workflows. type: reference

5 stars

Best use case

fitness-for-service is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Expert FFS engineer applying API 579-1/ASME FFS-1 methodology to corroded and damaged offshore equipment. Use for RSF calculations, MAWP re-rating, remaining life projection, UT grid inspection data, run-repair-replace decisions, and Level 1/2/3 assessment workflows. type: reference

Teams using fitness-for-service should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/fitness-for-service/SKILL.md --create-dirs "https://raw.githubusercontent.com/vamseeachanta/workspace-hub/main/.agents/skills/engineering/asset-integrity/fitness-for-service/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/fitness-for-service/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How fitness-for-service Compares

Feature / Agentfitness-for-serviceStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Expert FFS engineer applying API 579-1/ASME FFS-1 methodology to corroded and damaged offshore equipment. Use for RSF calculations, MAWP re-rating, remaining life projection, UT grid inspection data, run-repair-replace decisions, and Level 1/2/3 assessment workflows. type: reference

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

## When to Use

- Level 1 screening (conservative equations, minimal inspection data)
- Level 2 detailed assessment (refined analysis using thickness profiles)
- RSF and MAWP calculation from UT thickness data
- Remaining life projection with linear and power-law corrosion models
- Processing UT grid CSV data to CTP (Critical Thickness Profile) maps
- Run-repair-replace decision framework

## Assessment Levels (API 579-1/ASME FFS-1)

| Level | Approach | Input Required |
|-------|----------|----------------|
| Level 1 | Screening — conservative, tabulated equations | Nominal thickness, design pressure, corrosion rate |
| Level 2 | Detailed — refined with actual thickness profiles | UT grid measurements, material properties |
| Level 3 | Advanced — FEA/fracture mechanics | Full material data, specialist analysis |

## Core Calculations

### Remaining Strength Factor (RSF)

```python
from digitalmodel.asset_integrity.rsf_calculations import calculate_rsf, check_ffs_level1

# Level 1 screening — General Metal Loss
result = calculate_rsf(
    t_measured=0.280,    # measured wall thickness (inches)
    t_required=0.150,    # required minimum wall thickness (inches)
    t_nominal=0.375,     # original design wall thickness (inches)
)
print(f"RSF: {result['rsf']:.4f}")        # e.g. 0.7467
print(f"FFS: {result['ffs_acceptable']}")  # True if RSF >= RSF_allowable (0.90)
print(f"MAWP ratio: {result['mawp_ratio']:.4f}")

# Level 1 acceptability check
check = check_ffs_level1(
    t_measured=0.280,
    t_required=0.150,
    t_nominal=0.375,
    design_pressure_psi=1200.0,
    smys_psi=65000,
    outer_diameter_in=12.75,
)
print(f"Level 1 acceptable: {check['acceptable']}")
print(f"MAWP remaining: {check['mawp_psi']:.1f} psi")
```

### Remaining Life Projection

```python
from digitalmodel.asset_integrity.rsf_calculations import remaining_life

# Linear corrosion model (most common)
life = remaining_life(
    t_current=0.280,           # measured wall (inches)
    t_minimum=0.150,           # required wall (code minimum)
    corrosion_rate_in_per_yr=0.008,  # measured corrosion rate
    model="linear",
)
print(f"Remaining life: {life['remaining_years']:.1f} years")
print(f"Next inspection by: {life['inspection_date']}")

# Power-law model for accelerating corrosion
life_pw = remaining_life(
    t_current=0.280,
    t_minimum=0.150,
    corrosion_rate_in_per_yr=0.008,
    model="power_law",
    power_law_exponent=1.3,
)
```

### UT Grid — CTP Processing

```python
from digitalmodel.asset_integrity.rsf_calculations import process_ut_grid

# Read UT measurement grid from CSV
# CSV format: rows=axial positions, cols=circumferential positions, values=thickness (inches)
ctp = process_ut_grid(
    csv_path="inspection_data/UT_grid_node_123.csv",
    t_nominal=0.375,
    t_required=0.150,
)
print(f"Minimum measured thickness: {ctp['t_min']:.4f} in")
print(f"Average thickness: {ctp['t_avg']:.4f} in")
print(f"Metal loss fraction: {ctp['metal_loss_pct']:.1f}%")
print(f"CTP grid shape: {ctp['grid_shape']}")
print(f"Points below t_required: {ctp['critical_points']}")
```

## Run-Repair-Replace Decision Framework

| Decision | Condition | Action |
|----------|-----------|--------|
| **Run** | RSF >= 0.90 and t_min > t_required | Continue with monitoring plan |
| **Run (reduced MAWP)** | RSF < 0.90 but MAWP_remaining > 0 | Reduce operating pressure, re-inspect in <= remaining_life/2 |
| **Repair** | t_min < t_required, repair practical | Weld overlay, clamp, composite wrap |
| **Replace** | RSF -> 0 or repair impractical | Spool replacement, re-pipe |

## Standards Reference

| Standard | Scope |
|----------|-------|
| API 579-1 / ASME FFS-1 | Fitness-for-service (primary) |
| API 510 | Pressure vessel inspection |
| API 570 | Piping inspection codes |
| DNV-RP-G101 | Risk-based inspection, offshore topside |
| NACE SP0502 | Pipeline ECDA |

## Related Skills

- [cathodic-protection](../cathodic-protection/SKILL.md) — prevents corrosion; FFS assesses once it occurs
- [risk-assessment](../risk-assessment/SKILL.md) — probabilistic framework for inspection planning
- [structural-analysis](../structural-analysis/SKILL.md) — structural integrity checks

Related Skills

background-service-manager

5
from vamseeachanta/workspace-hub

Create and manage long-running background processes with start/stop/status controls, logging, and monitoring. Use for batch processing jobs, data pipelines, continuous services, or any long-running tasks.

airflow-integration-with-aws-services

5
from vamseeachanta/workspace-hub

Sub-skill of airflow: Integration with AWS Services.

testing-tdd-london-example-1-service-orchestration-test

5
from vamseeachanta/workspace-hub

Sub-skill of testing-tdd-london: Example 1: Service Orchestration Test (+2).

github-multi-repo-microservices-coordination

5
from vamseeachanta/workspace-hub

Sub-skill of github-multi-repo: Microservices Coordination (+2).

docx-templates-fastapi-service

5
from vamseeachanta/workspace-hub

Sub-skill of docx-templates: FastAPI Service.

test-oversized-skill

5
from vamseeachanta/workspace-hub

A test fixture skill that exceeds 200 lines with multiple H2/H3 sections for split testing.

interactive-report-generator

5
from vamseeachanta/workspace-hub

Generate interactive HTML reports with Plotly visualizations from data analysis results. Supports dashboards, charts, and professional styling.

data-validation-reporter

5
from vamseeachanta/workspace-hub

Generate interactive validation reports with quality scoring, missing data analysis, and type checking. Combines Pandas validation, Plotly visualization, and YAML configuration for comprehensive data quality reporting.

agent-os-framework

5
from vamseeachanta/workspace-hub

Generate standardized .agent-os directory structure with product documentation, mission, tech-stack, roadmap, and decision records. Enables AI-native workflows.

OrcaFlex Specialist Skill

5
from vamseeachanta/workspace-hub

```yaml

repo-ecosystem-hygiene

5
from vamseeachanta/workspace-hub

Interpret the daily read-only repo ecosystem hygiene audit and route remediation through approved workflows.

domain-knowledge-sweep

5
from vamseeachanta/workspace-hub

Systematic multi-source research of an engineering domain. Spawns parent issue → 6 research subissues (Standards, Academic, Industry, LinkedIn-marketing, Code-audit, Synthesis) → gap implementation subissues. Replaces LinkedIn-only extraction with defensible comprehensive sourcing.