> ## Documentation Index
> Fetch the complete documentation index at: https://docs.polygon.technology/llms.txt
> Use this file to discover all available pages before exploring further.

# Network upgrade process

> Reference for Polygon PoS hardfork activations, versions, and the network upgrade process.

Hardfork activation timestamps and block heights for Polygon PoS (Bor and Heimdall). Failing to update client software before the specified activation point may result in chain divergence, requiring a full resynchronization. The upgrade naming scheme follows the order of release on the Polygon network.

## Activations

| Upgrade            | Forum                                                                                       | PIP                                                                                              | Activation                                          |
| ------------------ | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| Delhi Hardfork     | [Link](https://forum.polygon.technology/t/pip-7-delhi-hardfork/10904/2)                     | [PIP-7](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-07.md)  | Block >= `38,189,056` on Polygon Mainnet (Bor)      |
| Indore Hard Fork   | [Link](https://forum.polygon.technology/t/pip-13-indore-hard-fork12272)                     | [PIP-13](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-13md)  | Block >= `44,934,656` on Polygon Mainnet(Bor)       |
| Aalborg Hard Fork  | [Link](https://forum.polygon.technology/t/aalborg-upgrade-mainnet-timeline-update/12960)    | [PIP-21](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-21.md) | Block >= `15,950,759` on Polygon Mainnet (Heimdall) |
| Agra Hard Fork     | [Link](https://forum.polygon.technology/t/pip-28-agra-hardfork/13067)                       | [PIP-28](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-28.md) | Block >= `50,523,000` on Polygon Mainnet (Bor)      |
|                    |                                                                                             |                                                                                                  | Block >= `41,874,000` on Polygon Mumbai (Bor)       |
| Napoli Hardfork    | [Link](https://forum.polygon.technology/t/pip-33-napoli-upgrade/13405)                      | [PIP-33](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-33.md) | Block >= `54,876,000` on Polygon Mainnet (Bor)      |
|                    |                                                                                             |                                                                                                  | Block >= `5,423,600`  on Polygon Amoy (Bor)         |
| Ahmedabad Hardfork | [Link](https://forum.polygon.technology/t/pip-37-ahmedabad-hardfork/13885)                  | [PIP-37](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-37.md) | Block >= `62,278,656` on Polygon Mainnet (Bor)      |
|                    |                                                                                             |                                                                                                  | Block >= `11,865,856` on Polygon Amoy (Bor)         |
| Jorvik Hardfork    | [Link](https://forum.polygon.technology/t/pip-53-jorvik-hardfork/20357)                     | [PIP-53](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-53.md) | Block >= `22,393,043` on Polygon Mainnet (Heimdall) |
|                    |                                                                                             |                                                                                                  | Block >= `5,768,528` on Polygon Amoy (Heimdall)     |
| Danelaw Hardfork   | [Link](https://forum.polygon.technology/t/pip-56-danelaw-hardfork/20511)                    | [PIP-56](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-56.md) | Block >= `22,393,043` on Polygon Mainnet (Heimdall) |
|                    |                                                                                             |                                                                                                  | Block >= `6,490,424` on Polygon Amoy (Heimdall)     |
| Bhilai Hardfork    | [Link](https://forum.polygon.technology/t/bor-v2-1-0-beta4-release-bhilai-hf-on-amoy/21010) | [PIP-63](https://github.com/maticnetwork/Polygon-Improvement-Proposals/blob/main/PIPs/PIP-63.md) | Block >= `22,765,056` on Polygon Amoy (Bor)         |

## Upgrade process

Network upgrades follow a general process: features are included in a release version cut from the develop branch, then deployed on production networks.

<Note>
  Diagram omitted (missing source asset in this repo).
</Note>

### 1. Proposal and governance approval

Significant protocol changes, including hardforks, are proposed and approved through Polygon governance:

* Submit a Polygon Improvement Proposal (PIP).
* Community discussion and feedback.
* Onchain voting to pass the proposal.

### 2. Development and testing

Once a proposal is approved:

* Code is developed and reviewed.
* Testing is conducted on devnets and testnets.
* Smart contracts and Layer 2 infrastructure are upgraded.

### 3. Node and software upgrades

Before the hardfork activation timestamp, validators and node operators must update their software. Failure to upgrade may result in chain divergence.

### 4. Hardfork activation

* The upgrade activates at a specific block height or timestamp.
* Nodes that fail to update before activation risk being left on an outdated chain.

### 5. Post-hardfork monitoring

* The network is monitored for stability after activation.
* Bugs or issues are addressed through patches if needed.
